1

私のビルド ファイルでは、使用しているビルド手順の 1 つが次のとおりです。

  <target name="BuildMsDeployPackage" depends="StageForMsDeployPackaging">
    <exec program="${msdeploy.exe}"
          workingdir="${buildDirectory}"
          verbose="true"
          commandline="
           -verb:sync 
           -source:manifest=${currentWorkingDirectory}\${sourceManifest} 
           -dest:package=${publishDirectory}\${webapp.artifact.zip}"/>

ここでは、MSDeploy を使用して、後でデプロイできるパッケージを作成しています。ソースはマニフェスト ファイルの形式です。マニフェスト ファイルの内容は次のとおりです。

<MSDeploy.iisApp> 
    <iisapp path="C:\test" />
    <setAcl path="C:\test\dirOne" setAclAccess="Write" setAclUser="xyz"/>
    <setAcl path="C:\test\dirTwo" setAclAccess="Write" setAclUser="abc"/>
</MSDeploy.iisApp>

iisapp と setAcl に使用しているパスは、明らかなようにハード コードされています。ビルド ファイルが配置されているディレクトリ (現在の作業ディレクトリ) に関してこれらを指定できるようにしたいと考えています。

NAntを介してこれを行うことは可能ですか?

4

1 に答える 1

2

私があなたの質問を理解している限り、あなたはマニフェスト ファイルを編集したいと考えています。<xmlpoke>これはプレーンな XML であるため、そのために NAnt のタスクを使用できます。XPath を介して適切なパス属性を指定し、それをビルド パスに設定します。NAnt 関数を使用して、ビルド ファイルのパスを取得できますproject::get-buildfile-path

于 2012-08-22T20:00:15.567 に答える