💭
GitHubを使いこなすためにソニーの開発現場が取り組んでいるプラクティス - Tech Lovers #13 イベントレポート
イベント概要
GitHub を使いこなすためにソニーの開発現場が取り組んでいるプラクティス - TL#13に参加しました。
ソニーにおける GitHub Enterprise Cloud の大規模運用とそのプラクティスについて共有されたイベントでした。
印象に残った内容
- ソニーでは GitHub Enterprise Cloud を大規模な人数で使っている
- Github 組織管理
- Github の管理ポリシーは 3 タイプあり。GitHub の開発経験が浅い組織は、中央集権型からスタートすることを推奨
- 単一 org で admin なし: 中央集権型(推奨)
- 単一 org で admin あり: ハイブリッド型
- 複数 org: 分散管理型
- organization は少なくすることで運用の煩雑さを軽減
- 設定をterraform-provider-githubによりコード化し、煩雑な設定を管理
- 管理者級の GitHub App の作成
- Environment を活用したシークレット管理
- 実行時の最小権限を適用
- Github の管理ポリシーは 3 タイプあり。GitHub の開発経験が浅い組織は、中央集権型からスタートすることを推奨
- GitHub Actions の管理
- 組織内での Action を公開し再利用促進
- GitHub 公式や Verified creator の Action のみ使用可
- サードパーティ製 Action は原則禁止
- GitHub Copilot の活用
- コードベース全体の保守性向上のための対応を提案してくれる
- GitHub ブラウザ上でも Github Copilot を使用することができる
- Issue の自動生成やタスクの完了条件の提案
- GitHub Actions のトラブルシューティング支援
- VSCode 上の Github Copilot との違い
- Issue や GitHub Actions のログをコンテキストとして活用可能
- GitHub 上で事前に作成したインデックスの活用
- VSCode 上の Github Copilot ではリモート未連携のローカルリポジトリやローカルのみのリポジトリはインデックスをローカルで作成するため精度が低下
学んだこと
- GitHub Organization の管理は、組織の規模や要件に応じて適切なアプローチを選択する必要がある
- 設定のコード化は、大規模な組織での GitHub 管理を効率化する
- GitHub ブラウザ上の Github Copilot の利用でプロジェクト全体(Issue, GitHub Actions など)を活用した提案が可能
感想
大規模組織における GitHub の運用事例は非常に貴重な情報だと感じました。
GitHub ブラウザ上の Copilot の違いは初耳ですぐに実践できる有用な知見でした。
イベント時間 60 分と短時間でサクッと参加できるのが、とてもありがたかったです。
Discussion