Bitbucket Pipelines
Cloud版に付属しているCI/CDツール。 製品ページ
Documentation
- Build, test, and deploy with Pipelines
- 邦訳: Pipelines を使用したビルド、テスト、およびデプロイ
- デモリポジトリ: https://bitbucket.org/bitbucketpipelines/workspace/projects/DOC
参考:
Features
Deployments
Documentation:
NOTE:
- Deployments設定で、デプロイ先環境の管理ができる。
- bitbucket-pipelines.ymlのstep設定で
deployment: Production
などと指定すると、そのstepのビルドがデプロイ先環境と紐付けられる。 - ダッシュボードで履歴が確認できる
- ロールバックもGUIぽちぽちで行ける
How-to
プルリクエストで実行する
ドキュメント: bitbucket-pipelines.yml の設定 - アトラシアン製品ドキュメント
pull-requests
というキーワードによって、PRをトリガーとするパイプライン処理を記述できる。
Example:
pipelines:
pull-requests:
'**': #this runs as default for any branch not elsewhere defined
- step:
script:
- ...
feature/*: #any branch with a feature prefix
- step:
script:
- ...
参考:
ステップを手動実行する
ドキュメント: bitbucket-pipelines.yml の設定 - アトラシアン製品ドキュメント
trigger: manual
をつける。- ※最初のステップは手動にはできない
Example:
pipelines:
default:
- step:
script:
- ./run-test.sh
- step:
trigger: manual
script:
- ./deploy.sh
Tips:
- パイプライン全体を手動トリガーで実行する場合、customパイプラインを使う
Dockerイメージの利用
Docker イメージをビルド環境として使用する - アトラシアン製品ドキュメント
- DockerHubでは認証情報を渡すことでプライベートイメージの利用も可能
- AWSのECRやGCPのGCRも利用可能
パイプラインの変数
- 「secure」チェックをONにすると、パイプラインの実行ログ上でもマスクされ、表示されなくなる
$MY_SECRET
のように表示される
パイプラインをトリガーせずにコミット
コミットメッセージに [skip ci]
または [ci skip]
を含める。
Bitbucket Pipelines の FAQ - アトラシアン製品ドキュメント
パイプラインからリポジトリを変更してプッシュする
リポジトリにプッシュ バックする - アトラシアン製品ドキュメント
Example:
pipelines:
default:
- step:
script:
- echo "Made a change in build ${BITBUCKET_BUILD_NUMBER}" >> changes.txt
- git add changes.txt
- git commit -m "[skip ci] Updating changes.txt with latest build number."
- git push
Topics
Server版ではどうすればよいか?
- サーバ版ではBitbucket Pipelinesの提供がない(2020-05-14時点)
Bitbucketサーバ版に対応してそうなCIツール:
- CircleCI
最終更新 2020-05-14: [bitbucket] Divide Pipelines into subpage (829bf23ef)