答えは、それらは確かに冗長ではないということです。
ブラシコマンド(少なくとも建物部分)を含むbashスクリプトを使用して、同じ最終結果を達成できることは事実です。しかし、JenkinsCIのようなCIフレームワークにプロセスを統合することを目指している場合は、phing(antまたはcapistranoをここで置き換えることができます)を使用する方法があります。
phingを使用すると、ビルドプロセスを個別のセグメントに分割でき、インテリジェントな方法でJenkinsに報告できます。
例えば ビルドプロセスの一部として、drushを使用して、nodeとshouldfailの2つのモジュールを有効にするとします。その後、ビルドは失敗します。ただし、JenkinsCIに次のシェルコマンドを実行するように指示するだけの場合、JenkinsCIはビルドが成功したと言います。
drush --quiet --yes @staging en node shouldfail
明らかにそれは正しくありません。ただし、代わりにantまたはphingを使用して同じプロセスを定義する場合、Jenkinsが理解する失敗ロジックを追加することもできます。したがって、失敗するはずです。次のphingビルドスクリプトは、前のコマンドと同じことを試みますが、期待どおりに失敗します。
<project name="staging" default="enable modules" description="Jenkins Staging Build">
<target name="enable modules">
<exec command="drush --quiet --yes @staging en node shouldfail" error='error' checkreturn="true">
</exec>
<loadfile property="en.error" file="error" />
<if>
<contains string="${en.error}" substring="warning" />
<then>
<property name="en.fail" value="Could not enable all modules" />
</then>
</if>
<fail if="en.fail" message="${en.fail}" />
</target>
</project>
BTW antとphingはほぼ同じです。PHP開発者にとって、phingを使用する利点は、phingをより快適に拡張できることです。
Drupalの開発とドラッシがそれなりに優れているという点では、phingを拡張することにはあまり価値がなく、execタスクを実行するだけでスマートビルドテンプレートを作成できれば十分だと思います。
まあ、私の質問に答えるために、私はphingを理解するために時間を費やしました。実際には非常に直感的で、理解するのにそれほど時間はかかりません。