6

現在、このような機能のリクエストがあることは理解していますが、現在のバージョン (1.6) を使用して何らかの回避策があることを願っています。

TFS の開発ブランチから開発およびテスト環境用にビルドし、TFS のリリース ブランチから QA および運用環境用にビルドします。これらは個別の nuget パッケージを生成するため、同じパッケージ フィードを使用することはできません。パッケージの展開ステップには、環境スコープ オプションがないようです。「開発/テスト用にパッケージ X バージョン Y をデプロイし、QA/本番用にパッケージ A バージョン B をデプロイする」という別の言い方はありますか?

4

1 に答える 1

6

同じフィードを使用できますが、次の注意事項があります。

2 つのブランチから構築されたナゲットには、明らかに異なる (衝突しない) バージョンが必要です。「dev」ブランチ (例: 1.2.3.4-dev) からビルドされたパッケージに「dev」サフィックスを追加し、「stable」ブランチはそのままにしておきます。

デフォルトでは、Octopus は利用可能な最も高いバージョンのナゲットを取得し、それが必要なリリースではない可能性があるため、「リリースを作成する」ときは明示的にする必要があります (安定版はおそらく dev より遅れています)。必要なパッケージのバージョンを選択します (そして、展開バージョンを適切に設定します)。TeamCity を介してリリースを作成している場合は、必ず --packageVersion 引数を使用し、リリース番号を設定してください。

上記はリリースにパッケージが 1 つしかない場合にのみ機能するため、デプロイ プロセスでは (残念ながら) 1 つのモノリシック ナゲットを生成する必要があります。そうしないと、バージョンの不一致が発生します。

もちろん、この種の配置の利点は、必要が生じた場合に、ピンチで開発ビルドを QA (または Prod) にプッシュできることです。

もちろん、これはすべて、両方のブランチが同じパッケージとしてビルドされることを前提としています。開発ブランチと安定ブランチの間で異なるパッケージをビルドできます(ただし、すべての Octopus 構成が複製されるため、これはお勧めしません)。

更新:明らかに、Octo.exe を使用して、異なるパッケージ間で異なるバージョン番号を指定できます。https://github.com/OctopusDeploy/Octopus-Tools を参照しください

于 2013-09-24T14:19:46.673 に答える