Octopus Deploy は多くのことを実行できますが、この特定のシナリオでは、リリース管理、自動プロビジョニング、および構成管理の 3 種類の作業を実行するよう求めています。自動化の素晴らしさと本当に難しい状況との紙一重です。
あなたが求めているタスクのうち、ほとんどすべてが現在 Octopus 内で実行できます。クラウド サービスまたは VM を作成することは可能かもしれないと私は主張します。認証を使用して VM をスピンアップできる PowerShell コマンドレット/ライブラリがあれば、Octopus で実行できる可能性がありますが、現在そのジョブを実行するには適切なツールではない可能性があります。なんで?
私の意見では、それは開発者、DevOps、およびシステム管理者の間の障壁を歪めます。Chef、Puppet、Salt などを使用するかどうかにかかわらず、構成管理に関係なく、それをバックアップするための専門知識を備えたユーザー層全体が必要です。このような柔軟性を必要とする開発者が持っていないシステムの専門知識がよく言われます。第二に、現時点では、これは (まだ) Octopus 内の焦点ではありません。Octopus などのツールを使用して、できることとすべきことを比較するかどうかを判断するのは難しいでしょう。
Azureが VM 用の Octopus tentacle のプレインストールをサポートするようになったことは本当に素晴らしいことです。ただし、VM プロビジョニングを自動化するには、サーバーのサムプリント、ポートのその他の補足構成情報などの追加情報が必要です。その構成管理は、Octopus の管理下に置くべきでしょうか、それとも Chef や Puppet のようなものでしょうか? 正直なところ、これに対する答えはありませんが、今の私の気持ちはオクトパスではありません. いつの日か、おそらくですが、これが本当に準備が整い、完全にテストされ、精査されるまで、少なくとも Octopus については (少し) 待ちます。
あなたが冒険的なタイプなら、ぜひオクトパスを試してみてください。今年中にこのインフラストラクチャの自動化の PoC (概念実証) を行う可能性がありますが、インフラストラクチャの自動化の主要な手段として、今日のビジネス/本番環境での使用に依存することはリスクが高く、多くの作業と実験が必要になります。繰り返しますが、それができないと言っているわけではありません。今日のこの回答の時点で、Octopus 内で行うべきかどうか疑問に思っています。
どちらかといえば、Octopus Deploy 側からすると、これは実現可能ですか? はい、まだ完全には解決されていません。あなたがやりたいことを見ると、それは 2 段階のプロセスだと思います。1. 新しい VM をスピンアップし、環境に触手を接続し、2. その新しい VM でデプロイ プロセスを実行します。
また、Octopus ブログもご覧になることをお勧めします。彼らは、インフラストラクチャの自動化について公に語っています。ここでそれについて読むことができます: http://octopusdeploy.com/blog/rfc-cloud-and-infrastructure-automation-support
この回答が何らかの形で役立つことを願っています。