Classi開発者ブログ

教育プラットフォーム「Classi」を開発・運営するClassi株式会社の開発者ブログです。

GitHub CI/CD実践ガイド読書会をしたら自社への理解が深まった

こんにちは、SREチーム kaoru.inoueです。

約半年間、「GitHub CI/CD実践ガイド」を用いた読書会を開催しました。 本記事では、その活動内容や参加者の感想を含めてご紹介します。

なぜこの本を選んだのか?

Classiでは既にGithub Actionsの活用が進んでいます。私のGitHub Actions力が弱かったのでキャッチアップを図りたかったのと、同様に困ってる人もいるんじゃないかという点がありました。

GitHub CI/CD実践ガイドについて

gihyo.jp

後半に向かうにしたがって難易度が上がっていく構成になっています。 1〜4章まで読むと構文への理解からCI/CDの構築ができるようになり、 5〜6章で効率化、7章以降はセキュリティと更なる効率化のための知見が詰まっていました。

読書会の進め方

読書会は各章ごとに担当者を決めて進行しました。

  • 各章ごとの担当が章を事前に読んでまとめを準備し、読書会参加者には感想のesaを書いてもらう
  • 前半30分は担当者のまとめと感想の発表30分、SREがその章に関係がありそうなClassiのGitHub Actions の事例解説を5分(あれば)、後半25分でディスカッション

中間振り返り

ボリュームがある技術書は途中で心が折れがちだと思います。中間振り返りを行い「途中で心が折れるのは普通だよ」と共有しておくことで参加のハードルを下げてみました。

その際に出た主な感想は次の通りです。

  • GitHub Actionsの基本概念や設定について、実際に手を動かして理解が深まった
  • YAMLを書いてpushするだけで動き出す仕組みに感動した(2章)
  • ジョブとランナーの役割が最初は理解しづらかったが、実例を見て理解できた(2章)
  • CLIツール(gh run watch)が便利で、CIのログを手軽に確認できるようになった(2章)

特に注目したポイント

  • GitHub Actionsのスケジュール実行時間が10〜30分程度ずれる場合があることが分かり、スケジュール指定を夜間のテスト実行などに利用する工夫を考えるようになった(5章)
  • GitHubの無料利用枠が有限であることを再認識し、コスト意識が高まった(5章)

中間振り替えの様子
中間振り返りの様子

最終的な振り返り

半年間を通しての最終的な振り返りでは、以下のような感想が挙がりました。

  • GitHub Actionsの高度な使い方やセキュリティについて深く学ぶことができ、業務での安心感が増した(8章)
  • 継続的デリバリーに関して、リリースの恐怖を克服するには「慣れ」と小さなリリース単位で成功体験を積むことが重要だと理解した(18章)
  • デプロイのフロー設計を具体的に学び、PRをこまめにデフォルトブランチにマージする重要性を実感した(18章)

読書会で得られたもの

  • GitHub Actionsを体系的に理解できた
  • 他チームの工夫や課題感を共有でき、横断的な知識交流が活発になった

おわりに

私が印象的だったのは

  • 会社の読書会だと自社のコードを使って理解を深められるのが素敵
    • 「Classiでいうと、ここで使ってるよね」と動いてるコードが見れる
  • 400ページ、独りだと心が折れそう
  • 詳しい人の観点からも学びがあった
  • 自社環境での「出来ている」「出来てない」「言わんとしている事は分かる。が、やっていくのがつらい」といった共感がしやすい書籍
  • 個人プロジェクトでも使えるTipsが多い という点が印象的でした

長期にわたる読書会を通じて多くの知見や課題を共有・議論でき大変充実した時間でした。これからも継続的な学習と情報発信を続けていきます。

最後に、この読書会に参加してくれた皆さん、そして素晴らしい書籍を執筆してくださった著者に感謝いたします。

この記事が、GitHub ActionsやCI/CDを学びたい方の参考になれば幸いです。

それではまた!

© 2020 Classi Corp.