私は 7 人の開発者と一緒に Web プロジェクトに取り組んでいます。新しいコードをステージングに渡す前にテストできるように、ベータ ボックス (debian) をセットアップします。
ベータ ボックスで Jenkins をセットアップし、マージ/テスト プロセスを自動化したいと考えています。また、何らかの方法で結び付けたいテストスイートもあります。
SVN / Jenkins を使用して Python Web プロジェクトをテストおよび実行するにはどうすればよいですか?
良いワークフローを策定しようとしています。現在、各開発者はフィーチャー ブランチで作業しています。ブランチでコードを実行し、問題がなければマージします。
開発者にベータ ジェンキンスにログインしてもらい、フィーチャー ブランチからビルドするように指示してもらいたいです。ジェンキンスが何をするかについての私の計画は次のとおりです。
- 機能ブランチがトランクからリベースされていることを確認してください
- ベータ ブランチがトランクと同一であることを確認します (マージされたフィーチャー ブランチを上書きします)。
- フィーチャー ブランチをベータ ブランチにマージする
- 実行中のサーバーを強制終了します
- サーバーを起動する
nohup python app.py &
- テスト スイートを実行する
python test.py
- テスト データを Jenkins の開発者ビューに出力する
- いずれかのテストが失敗した場合は、ブランチがマージされる前の状態に戻します
マージの競合を処理する方法がわかりません。また、上記はおそらく悪いと間違っています。アドバイスをいただければ幸いです。