Actionsの破壊的変更予告やGitHubのガバナンス強化など|Productivity Weekly(2024-12-11)
こんにちは。サイボウズ株式会社 生産性向上チームの平木場です。
僕たち生産性向上チームは毎週水曜日に Productivity Weekly という「1 週間の間に発見された開発者の生産性向上に関するネタを共有する会」を社内で開催しています。
本記事はその時のネタをまとめたものです。
2023-01-25 号から、基本的に隔週で連載することとしました。たまに単独でも投稿するかもしれません。
今週は 2024-12-11 号です。
今回が第 171 回目です。過去の記事はこちら。
news 📺
Notice of upcoming releases and breaking changes for GitHub Actions - GitHub Changelog
GitHub Actions において、今後の breaking changes がまとまって発表されています。
-
ubuntu-latest
ランナーが Ubuntu 22 から Ubuntu 24 へ- 2024/12/05〜2025/01/17 の間に徐々に変わっていく予定
-
ubuntu-20.04
ランナーが廃止(2025/04/01 予定) -
actions/upload-artifact
、actions/download-artifact
の v3 のブラウンアウト[1]開始- 2025/01/09 17:00-18:00 (UTC)
- 2025/01/16 15:00-19:00 (UTC)
- 2025/01/23 14:00-22:00 (UTC)
-
actions/cache
v1、v2 および actions/toolkit の cache npm パッケージ v4.0.0 以前が廃止(2025/02/01 から徐々に) - セルフホストランナーおよび Azure private network 内ランナーにおけるネットワーク許可リストの更新
- Immutable Actions GA に向けた変更
- Immutable Actions は GitHub Container Registry に保存されるため、
pkg.actions.githubusercontent.com
へのトラフィック許可が必要- 将来的には
ghcr.io
へのトラフィック許可も必要になってくる
- 将来的には
- GitHub Enterprise Server で github.com からカスタムアクションを取るようにしている場合はこちらでも許可が必要
- Azure private network についても許可 IP リストが更新
めちゃくちゃまとめて来ましたね。どの項目も先に大丈夫そうか確認しておきたいですね。Immutable Actions、早く GA になってほしいです。
本項の執筆者: @korosuke613
Enterprise repository properties, policies and rulesets – Public Preview - GitHub Changelog
GitHub において、enterprise レベルのカスタムプロパティ、enterprise レベルのリポジトリポリシー、rulesets を使えるようになりました(public preview)。
Enterprise custom properties
これまでは org レベルで custom properties を設定できましたが、enterprise レベルはなかったため、enterprise 全体で利用する custom properties を使いたい場合は org ごとに同じ custom properties の設定が必要でした。
プロパティ設定が容易になりますね。
Enterprise rulesets
こちらも org レベルでの rulesets しかなかったため、enterprise 全体で利用する rulesets を使いたい場合は org ごとに同じ rulesets の設定が必要でした。
そういった設定の使い回しを容易にするというメリットもありますが、先ほどの custom properties と違い、enterprise の権限で各 org に特定の rulesets を強制できる機能でもあります。
custom properties と組み合わせ、production に関わるリポジトリは org 問わずタグの push やマージ前の特定のチェックを強制するなどのガバナンスを強める使い方が浮かびますね。
Enterprise repository policy
repository policy ですが、この機能はおそらく全く新しい機能です。リポジトリの操作に関する統制を強化できる機能で、次の項目を各 org に強制出来ます。
- 可視性の制限
- public、internal、private を複数選択可能
- 作成の制限
- 削除の制限
- 移譲(transfer)の制限
- リポジトリ名の制限
- 正規表現で指定
制限項目と同時に許可するロールや App、Team を指定できます。例えば特定のチームのみリポジトリ削除を許可することも可能です。
使いこなすのはむずそうですが、上手く使うと高い自由と高いガバナンスの両立もできそうで面白いです。
本項の執筆者: @korosuke613
GitHub Copilot is now available on your GitHub dashboard in public preview - GitHub Changelog
GitHub Copilot in github.com において、GitHub のダッシュボード画面上で GitHub Copilot Chat に尋ねることができるようになりました。
僕はまだ GitHub Copilot in github.com が使えてないので正直今までの GitHub 上での Copilot Chat とどれだけ体験が違うのかよくわかりませんが、すぐに Copilot とお話しできるのは良いですね。
本項の執筆者: @korosuke613
Pull request merge method rule – Public Preview - GitHub Changelog
GitHub の rulesets において、プルリクエストのマージ方式(merge commit、squash、rebase)を制限できるようになりました。
これまでもリポジトリ全体の設定としてマージ方式は制限できましたが、rulesets による制限ができるようになったことで、例えばデフォルトブランチに対するプルリクエストのみ squash を強制するなど、より柔軟にマージ方式を強制できるようになりました。
大規模なリポジトリだと一部ブランチでのみマージ方式を制限したいなどの要望があるかもしれません。使っていきましょう。
本項の執筆者: @korosuke613
Copilot Chat now has a 64k context window with OpenAI GPT-4o - GitHub Changelog
GitHub Copilot Chat の GPT-4o において 64k トークンまでコンテキストを扱えるようになりました。これにより、より大きい、多くのファイルの情報を元に回答を引き出せるようになります。
また、64k じゃ足りないという人は VSCode Insiders を使うとさらに大きい 128k トークンを扱えるようです。すでに Insiders Build で 128k 扱えるのであれば、近いうちにさらに扱えるコンテキスト数が増えそうですね。
本項の執筆者: @korosuke613
know-how 🎓
GuardDuty Malware Protection for S3 本番導入の手引き - Nealle Developer's Blog
検出されたオブジェクトのアクセス制御の自動化ができる話やアラートをどのように受け取るか、検知時の対応などの話が書かれています。
(個人的には導入対象バケットの選定についての基準をもっと詳しく知りたかったです)
GuardDuty Malware Protection for S3 が気になっている人は参考になりそうですね。
本項の執筆者: @korosuke613
tool 🔨
GitHub Skyline CLI extension now available - GitHub Changelog
GitHub CLI 拡張機能に GitHub Skyline が登場しました。GitHub Skyline は GitHub のコミット数を可視化するツールです。CUI 形式で年ごとに表示したり、stl ファイルを吐き出して 3D で楽しんだり 3D プリントしたりもできるようです。
僕も試してみました。みんなもあそぼう!
本項の執筆者: @korosuke613
read more 🍘
Productivity Weekly で出たネタを全て紹介したいけど紹介する体力が持たなかったネタを一言程度で書くコーナーです。
-
news 📺
-
AWS、生成AIがVMware環境をAWS環境へ自動変換してくれる「Q Developer for VMware workloads」発表 - Publickey
- AWS が生成 AI を使って VMware 環境を AWS 環境へ自動変換するサービスを発表しました
- VMWare から移行したい人は嬉しいかもですね
- 生成 AI が必要だったのかは正直わかりません。移行の仕組みを組むのも大変なんでしょう
-
Herokuが次世代プラットフォーム「Fir」発表。OCIコンテナ、Kubernetes、OpenTelemetryなど業界標準の組み合わせで構築
- Heroku が次世代プラットフォームを謳う「Fir」を発表しました
- OCI コンテナや k8s、OpenTelemetry などクラウドネイティブな技術を採用した基盤なようです
-
AWS、生成AIがVMware環境をAWS環境へ自動変換してくれる「Q Developer for VMware workloads」発表 - Publickey
-
know-how 🎓
-
Google CloudからGitHub PATと秘密鍵をなくす – Token ServerのGoogle Cloudへの拡張 | メルカリエンジニアリング
- メルカリさんによる短命な GitHub トークンを払い出すトークンサーバを Google Cloud でも使えるようにした話です
- GitHub App を利用しているようで、rate limit 対策をどうやっているんだろうと思いましたが、installation access token の発行回数を抑えるなどの工夫をしているようです
-
バックエンドもフロントエンドもインフラも Terraform でつくってみた
- 前回紹介した JS.tf ですが、バックエンド、フロントエンド、インフラを全て Terraform で構築する話です
- 実用性は置いておいて、ロマンあふれてて面白いです。HTML.tf なんてのもあるのか...
-
Google CloudからGitHub PATと秘密鍵をなくす – Token ServerのGoogle Cloudへの拡張 | メルカリエンジニアリング
本項の執筆者: @korosuke613
あとがき
いやはや、年の瀬ですね。これも実家で寝ながら書いてます。
今年の Productivity Weekly は残すところ 2024-12-18 号、2024-12-25 号の 2 回です。多分明日明後日に投稿すると思います。
サイボウズの生産性向上チームでは社内エンジニアの開発生産性を上げるための活動を行なっています。そんな生産性向上チームが気になる方は下のリンクをクリック!
-
サービス廃止に向けて、あらかじめ決められたスケジュールにそのサービスの利用を不可とすることで、利用者にサービスの移行を促す手法 ↩︎
Discussion