Upgrade to Pro — share decks privately, control downloads, hide ads and more …

release-please で実現する手軽で不変な Docker イメージタグ付け方法

release-please で実現する手軽で不変な Docker イメージタグ付け方法

おもにクラウドの話してます - 広島 #2 の発表資料です。
https://omoni-cloud.connpass.com/event/320415/

chanyou0311

June 28, 2024
Tweet

More Decks by chanyou0311

Other Decks in Technology

Transcript

  1. Yu Nakamura - chanyou ‧ DRE ← Data Engineer ←

    SWE ‧ X: @chanyou0311 ‧ Google Cloud ‧ Azure
  2. release-please > Rease Please automates CHANGELOG generation, the creation of

    GitHub releases, and version bumps for your projects. ⾃動でリポジトリを SemVer 管理してくれるツール ‧CHANGELOG の更新 ‧GitHub リリースの作成 ‧任意の JSON や YAML ファイルの更新 https://github.com/googleapis/release-please
  3. ⽤意するもの (GitHub Actions) workflow: .github/workflows/release-please.yaml `uses: googleapis/release-please-action@v4` を呼び出す config: release-please-config.json

    モノレポの場合、各サービスの設定を定義する manifest: .release-please-manifest.json モノレポの場合、各サービスのバージョンを記録する 例) {"frontend":"1.7.0","backend":"2.0.2"}
  4. バージョンが更新されるまでの流れ 1. (開発者) Conventional Commits message で commit して push

    する 2. (GitHub Actions) release-please (draft-mode) が実⾏されて PR が作成される 3. (開発者) PR をマージする 4. (GitHub Actions) release-please (deploy-mode) が実⾏される ◦ CHANGELOG の更新 ◦ GitHub リリースの作成 ◦ GitHub Actions で任意の処理の実⾏ ▪ ここで Docker Image の build と push を⾏う
  5. まとめ ‧release-please で⼿軽に SemVer を導⼊できた ‧⼿軽で不変な Docker Image の構築ができるようになった ‧Immutable

    Infrastructure への扉が開かれた…! ‧コミットメッセージの記法に制約がかかる ‧チーム開発に適⽤できるかは要議論 ‧⽣成AIによるメッセージの補完に期待