hamburger

主に日記

CircleCI実践入門を再度読み進めた

CIの改善をしようとしたけどconfigファイルが何やっているのかわからず辛かったため読んだ。ちなみに2回目。前読んだときはジョブとかワークフローとかの単語の意味を知って満足したので、実はあまりちゃんと読んで知識になったものが少なかった。

hamburger.hatenablog.jp

これからはGitHubActionsを中心に業務しそうだから良いかなぁと思って2年位経過していて、ついに来たか・・・という感じ。既存プロダクトがCircleCI使っていてそこを移行するモチベーションもなかったので、業務時間中に落ち着いて読んだ。以前知ったはずの用語でも実は理解が浅かったり全然覚えていないものも多く、今の設定を改善するという目的をもってconfigと比較して読むことで頭に入ってくる情報量に差があったように感じる。

2~4章とAppendixで設定ファイルに記述できる内容のイメージを強くできた。最小単位のcommand、それをまとめたjob、それをまとめつつGitHubと連携しながら起動条件などの外部情報もマネージできるのがworkflow、という理解。深いレベルでは厳しそうだがまずは初歩的なステップはこれでできるようになった気がする。キャッシュやアーティファクトのライフサイクルや有効活用の方法も知りたいので、次読むとしたらそこかなぁ。

一方、GitHub連携でトリガーできるのはpushのみだというところで、これはActionsと比較したデメリットとして大きいと感じた(今はできるようになっていたならごめんなさい)。Actionsはpull requestの生成などもフォローしているので少し便利。CIの運用=GitHubとの連携みたいなところがあるので、そこはやはり純正の強さを実感した。