CircleCIでシナリオ実行を自動化
Web APIの開発チームとして、Web APIプロジェクトが正しくビルドおよびデプロイされるたびにAPIテストを実行することを考えています。
CircleCIでこれを行うには、2つのビルドがあります: 実際のWeb APIのビルドとデプロイを担当、およびデプロイされたAPIのテストを担当。デプロイが成功するたびに2番目のビルドがトリガーされるように、最初のビルドを設定できます。
次の図は、この方法の概要を示しています。
Web APIが正しくデプロイされた後にテストシナリオの実行をトリガーするには、CircleCI設定のデプロイ部分を活用し、実際のデプロイの後に2番目のコマンドを追加する必要があります。2番目のコマンドは、APIテストの実行をトリガーするCircleCI APIへの呼び出しです。
このような設定のサンプルを次に示します(Herokuでのデプロイ)。
deployment:
trigger:
branch: master
commands:
- git push git@heroku.com:myapp.git $CIRCLE_SHA1:master
- curl -v -X POST https://circleci.com/api/v1/project/templth/restlet-client-circleci/tree/master?circle-token=$CIRCLE_TOKEN
これにより、変更をプッシュするたびにAPIのビルド、デプロイ、テストが行われます。