別のビルドステップにArtifact Dependency
があるTeamcity
にビルドステップを作成しようとしています。
前のビルドステップのアーティファクトは、.Zip
ファイルとして利用できます。
ビルドステップはアーティファクトを取得でき、アーティファクトは次の場所にダウンロードされます。
C:\BuildAgent\work\27f84e3eca3a33d5\artifactdir\artifacts.Zip
明らかに、.Zip
ファイルはあまり役に立たないので、ビルドステップがビルドファイルにアクセスできるように、これらを解凍する必要があります。
TeamCityにアーティファクトを解凍させるにはどうすればよいですか?
アーティファクト依存関係のアーティファクトルールを使用して、依存関係の一部として使用するアーティファクトの要素を指定できますアーカイブからの抽出を含む。アーティファクトルールの構文は次のとおりです。
[+:|-:] SourcePath [!ArchivePath] [=> DestinationPath]
アーカイブパスは、ここで特に関心のある要素です。例を使用すると、アーティファクトルールは次のようになります。
artifacts.Zip!** => artifactdir
これにより、artifacts.Zipアーティファクトのすべてのコンテンツが抽出され、チェックアウトディレクトリのルートにあるartifactdirディレクトリに配置されます。
ArchivePathは、ダウンロードされた圧縮アーティファクトを抽出するために使用されます。 Zip、7-Zip、jar、tar、およびtar.gzがサポートされています。 ArchivePathは、SourcePathの一般的な規則に従います。antのようなワイルドカードが許可され、アーカイブ内で一致したファイルは、最初のワイルドカードの一致に対応するディレクトリに配置されます(宛先パスに対して)。例:release.Zip!*。dllコマンドはrelease.Zipアーティファクトのルートにあるすべての.dllファイルを抽出します。
TeamCity Artifact Dependencyの完全なドキュメントを見つけることができます ここ