service:
type: github
token: token
from: user name
pipeline:
- stage_name: command_stage_1
stage_type: command
command: echo "hello, world"
- walter 起動
- 前回の実行時間が記載されたファイル(.walter-update?)をオープン
- 設定ファイル (pipeline.yml) をオープン
- GitHub service ブロックがある場合(service)
- ファイル(pipeliine.yml)をクローズする。別のコミットに移動した際にファイルが違っている可能性があるため。
- レポジトリ名を取得する
- チェックするコミット取得
- pull requests: 前回の実行時間以降に追加された、Open の pullreqests, 既存の pullrequest の更新
- master ブランチの最新 commit: masterブランチでローカルより新しいコミットが origin にある場合には pull して取ってくる
- 各コミットに対して以下を実行する
- pr_num と head commit を checkout
- walter を local モード で起動(注:チェックアウトされた先の pipeline.yml を使用)。ここで GitHub に聞きに行くと無限ループの予感
- 結果を GitHub state API で登録
- checkout master で元のブランチに戻る
- 実行時間を記載してクローズ。
- Github service ブロックがない場合
- local で実行して終了。実行時間は記載しない。
- .walter-update にStateを追加するべきか。
- cron で連続実行中にまだ処理が行われていれば実行しないようにしたい
- まずは master ブランチきめうちにする。
- 必要になったら、設定ファイルにベースブランチをしていできるようにする。