TeamCityでビルド構成を3つのステップでセットアップしました。
FTPアップロードには、 http://teamcityrunners.codeplex.com/ から取得したFTPUploadプラグインを使用しました。アップロードするフォルダが絶対パスに設定されました:
%userprofile%\.BuildServer\system\artifacts\%env.TEAMCITY_PROJECT_NAME%\%env.TEAMCITY_BUILDCONF_NAME%\%env.BUILD_NUMBER%\
ビルドログによると、アーティファクトの公開は、すべての手順が完了した後にのみ行われます。
特定のビルドステップの後にアーティファクトを公開するようにTeamCityを構成することは可能ですか?
私のプロジェクトの1つでも同様のことをしています。 2つのビルド構成を使用します。
1つ目は、ソリューションを構築し、単体テストを実行して、アーティファクトを生成します。
2番目のビルドは、最後に成功したビルドで Artifact Dependency でセットアップされます。つまり、2番目のビルドは最初のビルドからアーティファクトを取得することから始まります。 2番目のビルドには、ftpサイトにアップロードするビルドステップがあります。 2番目のビルドは、最初のビルドを指す Finish Build Trigger でセットアップされます。これにより、最初のビルドが終了するたびに開始されます。
この方法ではもう少し作業が必要ですが、一度セットアップすると、かなりうまく機能します。
アーティファクトをTeamCityサーバーにアップロードすることを目的としている場合は、外部プラグインは必要ありません。ビルド構成の一般設定で「アーティファクトパス」を入力するだけです。同様に、特別にフォーマットされたテキストを標準出力に出力することで、ビルド中にアーティファクトを公開できます。 "サービスメッセージ"
TeamCityに関係なく、FTPにアップロードする場合にのみ、上記のプラグインが必要になります。
上記のチケットによると、TW-1558外部アーティファクトの公開(FTP、コピー)この問題を修正するための新しいプラグインがあります。 (私はそれを使用していません。)
http://confluence.jetbrains.com/display/TW/Deployer+plugin ビルド構成設定では、ビルドステップで新しいランナーを使用できます。新しいランナーは次のとおりです。
TeamCity 8以降、ビルドログにメッセージを送信することで Meta-Runner 機能を使用してアーティファクトをビルドできることに注意してください。