Webアプリケーションをデプロイしたくなったのでsupでやってみる
sup
Golangで書かれたシンプルなデプロイ要ツール。
機能がとてもシンプルで、SSHコマンドを手で書くよりは簡単に書ける程度で、 逆に機能が少なすぎて必要なことが書きづらいことも。
大雑把に現時点でサポートしている機能は以下のような感じ。
- リモートでのコマンド実行(並列可能)
- ローカルでのコマンド実行
- ローカルからリモートへのアップロード
- デプロイ対象の切り替え
Capistranoとかをイメージしていると機能の少なさにびっくりするが、 シンプルゆえに書きやすいところもあるし、 例に挙がっているdockerで使うならいい感じかもしれない。
で、そんなデプロイツールを無理やり感もありつつ、 Webアプリケーションのデプロイに使うとしたらどうするかを考えてみた。
あまりよい例ではなさそうなので、本運用には使えないかもしれない。
というか、ここまでやるならcapistranoを使えという話でもあるが、 諸事情でRubyを入れられないので...
gist91393876ec369f1f1701948b4a648771
時間を取るためにファイルを分けるのは正直微妙だし、変数的な何かは使えなかったのかという気はするけど、 そもそもドキュメントが微妙なので、コード読んで雰囲気でやったしまあこんなもんな気はする(本当か?)
あと、自前でシンボリックリンク張り返したり古いreleaseを消すのは面倒。もうちょっと何とかなってほしい気もする。
うん、微妙だな。なしなし。