私たちはアプリケーションをホストするために 2 つの Linode を使用しています。1 つは本番用、もう 1 つはステージング用です。
development
コードが Git リポジトリのブランチにプッシュされると、そのコードが自動的にステージング サーバーにデプロイされるように設定したいと思います。また、コードがmaster
ブランチにプッシュされると、そのコードが自動的に本番サーバーにデプロイされます。
似たようなスクリプトをいくつか見たことがありますGitHubフックmaster
これらは GitHub の Service Hooks 機能を使用していますが、 とがdevelopment
完全に異なるサーバー (同じサーバーの異なるサブフォルダーではなく) にデプロイされている例は見つかりません。
どのようなオプションがありますか? 正しい方向を指し示してくれる回答があれば、大変助かります。
必要であれば質問を明確にすることができます:)
答え1
Jenkins や Atlassian Bamboo などの CI/ビルド システムへの投資を強くお勧めします。
Bamboo は DevOps に最適なツールで、問題を簡単に解決できます。リポジトリのコミットを監視し、自動ビルド、ユニット テスト、デプロイメントを開始できます。複数のブランチのビルド プランとデプロイメント タスクを構成できます。