2

teamcity で octopus-deploy ビルド ステップを使用して、別のビルド構成から最新の成功したビルドをデプロイしています。

私の意図は、リリース番号をアーティファクト番号に関連付けることです (これは、SCM 番号に関連付けられます)。

新しいビルドをデプロイすると、タコはそのバージョンで新しいリリースを作成し、デプロイします。

teamcity deploy ステップを再度実行すると (既に作成されている成果物に対して)、octopus は同じリリース番号を使用して同じ成果物を再展開する必要があります。(「このリリースは既に存在します」で失敗する代わりに)。

octo.exe ドキュメントから、 --force オプションでこれを実行できるはずです。(teamcityの「追加のコマンドライン引数」に追加できるはずです)。

ただし、認識されないコマンド引数: --forceエラーが発生します。

これを修正するにはどうすればよいですか? または他のオプションは何ですか?(アーティファクト/リリースの番号付け戦略を変更せずに)。

呼び出し:

octo.exe create-release --server octoServerHostName --apikey SECRET --project ProjectName --enableservicemessages --version 1.0.59356.0 --deployto showshow --waitfordeployment --force

Octopus Deploy リリースの作成 [15:26:05]Octopus Deploy コマンド ライン ツール、バージョン 2.0.8.22 [15:26:05] [15:26:05]認識されないコマンド引数: --force

4

2 に答える 2

3

タコの展開2.0+では、次を使用できます。

--ignoreexisting   If a release with the version number already 
                   exists, ignore it

--force [Optional] If a project is configured to skip
                   packages with already-installed versions,
                   override this setting to force re-deployment
                   (flag, default false).

teamcity の 1 つのステップで目的を正確に達成するには、両方が必要です--ignoreexisting --force

于 2014-08-19T19:01:20.303 に答える
1

Octo.exe create-release投稿されたエラーは、Octo.exe のバージョン 2.0.8.22 で、ビルド ステップがコマンドを呼び出していることを示しています。そのバージョンには --force 引数がないため、エラーが予想されます。

実行している OctopusDeploy のバージョンに応じて、create-release コマンドで --force をサポートする新しいバージョンにプラグインをアップグレードしてみてください。

そうは言っても、--forceあなたが望むものをあなたに与えるかどうかはわかりません。 --force既にインストールされているパッケージを Octopus に強制的に再インストールさせることができますが、既に存在する Octopus リリースの作成を強制することはありません。

create-releaseとコマンドの組み合わせを使用してdeploy-release、既に存在するバージョンでリリースを作成しようとする際の問題を回避することを検討することをお勧めします。これは、--force.

それが役立つことを願っています。

于 2014-05-28T23:53:53.167 に答える