🤿

GitHubのカスタムプロパティのアプデの話など|Productivity Weekly(2024-06-19)

2024/07/12に公開

こんにちは。サイボウズ株式会社 生産性向上チームの平木場です。

僕たち生産性向上チームは毎週水曜日に Productivity Weekly という「1 週間の間に発見された開発者の生産性向上に関するネタを共有する会」を社内で開催しています。
本記事はその時のネタをまとめたものです。

2023-01-25 号から、基本的に隔週で連載することとしました。たまに単独でも投稿するかもしれません。
今週は 2024-06-19 単独号です。

今回が第 157 回目です。過去の記事はこちら

news 📺

Repository updates June 12th 2024 - The GitHub Blog

https://github.blog/changelog/2024-06-12-repository-updates-june-12th-2024/

GitHub のリポジトリに関する 6 月のアップデート情報です。custom properties と push rules (public beta)の機能強化が紹介されています。

  • custom properties
    • 新しいプロパティの種類を追加
      • Multi select: 複数選択できるプロパティ
      • True/False: 真偽値を持つプロパティ
    • ルールセットのターゲット対象に絞り込む条件としていくつかのプロパティが利用可能に
      • fork: fork したリポジトリかどうか
      • language: プライマリ言語
      • visibility: リポジトリの可視性(public, private, internal
  • push rules (public beta)
    • 新しいバイパスフローの追加
      • バイパスリストに載ってないユーザが push rules にブロックされた場合、バイパスリストに載っているユーザに対して一時的なバイパスを要求できるようになった
      • 詳しくは検証したのでこっちを参照ください〜

custom properties も push rules もますます使いやすくなりましたね。

特に push rules のバイパスを要求できる機能はとても嬉しいかなと思います。push rules でブロックされるファイルに対してコントリビューションしたい場合、プルリクエストを送ることすらできません。一時的に push を許可するフローができたのは嬉しいですね。ただ、僕が調べた限り、この機能はファイル差分を見られなかったので、それが見られるようになるともっと使いやすくなると思いました。今後に期待ですね。

本項の執筆者: @korosuke613

The GitHub Enterprise Server 3.13 is generally available - The GitHub Blog

https://github.blog/changelog/2024-06-18-the-github-enterprise-server-3-13-is-generally-available/

GitHub Enterprise Server 3.13 が GA になりました 🎉
今回は今までに比べて追加された機能の中で面白いものは少ないのですが、custom propertiesの追加は個人的に要チェックです。最近 github.com の方ではリポジトリ一覧画面のフィルタリングや、Rulesetとの連携が強化されており、1 つの Organization の内のリポジトリ数が増えた場合に管理するためのパーツとして custom properties が機能し始めています。

GHES も今後のアップデートで custom properties を活用できる場面が増えると思われるので、今のうちから整備しておくと良いかもしれません。

リリースノート全体はこちらです。

https://docs.github.com/en/enterprise-server@3.13/admin/release-notes

本項の執筆者: @Kesin11

New Copilot Enterprise features in VS Code (preview) - The GitHub Blog

https://github.blog/changelog/2024-06-14-new-copilot-enterprise-features-in-vs-code-preview/

GitHub Copilot Enterprise のユーザは VSCode 上で Copilot ナレッジベースと Bing 検索結果によるコンテキストを強化したチャット機能を利用できるようになりました。

Copilot ナレッジベースは Copilot のコンテキストに含める任意の GitHub リポジトリのリストを作成・管理できる機能です。これまでは、作成したナレッジベースを利用して GitHub.com 上で GitHub Copilot Chat とチャットができましたが、今回のアップデートで VSCode 上でも同様の機能が利用できるようになりました。

また、Bing の検索結果をコンテキストとして利用する機能も GitHub.com 上での Copilot Chat で利用できましたが、今回 VSCode 上のチャットでも利用できるようになりました。

どんどん Copilot Enterprise が便利になっていきますね。良いですね。

本項の執筆者: @korosuke613

Docker DesktopからGitHub Actionsビルドの詳細が参照可能に。Windows on Arm版も登場したDocker Desktop 4.31正式版リリース - Publickey

https://www.publickey1.jp/blog/24/docker_desktopgithub_actionswindows_on_armdocker_desktop_431.html

Docker Desktop v4.31 がリリースされ、GitHub Actions でビルドしたコンテナイメージの詳細を Docker Desktop から参照できる機能がベータ版として追加されました。自分は OrbStack ユーザーなので実際に確認できていないのですが、Import builds という項目が追加され、GitHub Actions のリモートビルドのパフォーマンス、キャッシュ使用率、エラーログが確認できるそうです。

CI/CD でのビルドを分析して課題を発見し、Docker Build Cloud を使ってもらいたいという Docker 社の考えでしょうか。ビルドが遅くて困っている人には嬉しい機能かもしれません。

本項の執筆者: @r4mimu

IAM Access Analyzer Update: Extending custom policy checks & guided revocation | AWS News Blog

https://aws.amazon.com/jp/blogs/aws/iam-access-analyzer-update-extending-custom-policy-checks-guided-revocation/

日本語: IAM Access Analyzer の最新情報: カスタムポリシーチェックとガイド付き取り消しを拡張する | Amazon Web Services ブログ

AWS IAM Access Analyzer において、新たなカスタムポリシーチェックと未使用アクセス権の取り消しガイド機能が追加されました。

新しいカスタムポリシーチェックは、ローカルに用意したポリシーが特定のリソースのパブリックアクセスを許可しているかどうか(CheckNoNewAccess)、アクセス権を有しているかどうか(CheckAccessNotGranted)を検出できる機能です。これを使うとポリシーをデプロイする前に意図せぬアクセス権を検出できます。記事では CI に組み込んで継続的にチェックすることもおすすめされています。

カスタムポリシーチェックについては、クラメソさんが解説と実演をブログにまとめてますので、大変参考になります。

未使用アクセス権の取り消しガイド機能は、IAM Access Analyzer で「Unused access」を検出したときに役立つ機能です。「Unused access」の検出では、利用していないアクセスキーや IAM ロールを検出できます。検出自体はこれまでもあった機能ですが、今回、検出結果に対してどういうアクションが推奨されているかが「Recommendations」に表示されるようになりました。
検出されたはいいけどどうすればいいかわからない人には嬉しい機能ですね。

IAM Access Analyzer を使うと IAM の棚卸しができたりセキュリティを向上できたりして良いですね。今後も機能を増やしていってほしいです。

本項の執筆者: @korosuke613

know-how 🎓

モノレポでマージキューと必須ステータスチェックを運用するためのTips - ROUTE06 Tech Blog

https://tech.route06.co.jp/entry/2024/06/12/121511

ROUTE06 さんによる、GitHub のマージキューと必須ステータスチェックを運用するための Tips 紹介です。

マージキューはそれぞれ便利な機能ですが、マージキューは複雑な仕様をしており(平木場の考え)、思った通りに設定をするのが大変です。
この記事では、マージキューを運用するのにかかせない必須ステータスチェックをモノレポでうまく設定する方法が載っています。動的にジョブをスキップしたり、マトリックスジョブの後続ジョブをステータスチェック対象にしたりと、モノレポで嬉しい必須ステータスチェックと GitHub Actions の使い方が紹介されており参考になります。
マージキューを運用し始めた感想も載っており、マージキュー利用の参考になります。

マージキューのノウハウはまだまだ少ない気がするので、マージキュー関連の記事が出てくると嬉しいですね。

本項の執筆者: @korosuke613

クラウドロックインされないアーキテクチャ「Cloud Agnostic Architecture」のすすめ | フューチャー技術ブログ

https://future-architect.github.io/articles/20240617b/

Cloud Agnostic Architecture の解説や実現方法について紹介している記事です。
そもそも Cloud Agnostic Architecture とは何か、どのようなメリットがあるのか、どのように実現するのかを AWS と OSS を例に具体的に解説しています。
また、解説に留まらず、デメリットやトレードオフといった注意点も紹介しているので、クラウドネイティブなアーキテクチャを構築する際にこれらの観点を踏まえて設計する助けになる記事です。

本項の執筆者: @r4mimu

あとがき

大変遅くなってしまいすみません。今週号でした。ここ最近 AWS Summit とか開発生産性カンファレンスとかに参加してきて忙しかったです。

近いうちに Sansan さんとサイボウズで祭りを行うので、よければ見に来てください。リアル参加枠はもう埋まっちゃいました。

Sansan vs サイボウズ 開発生産性Tips夏祭り - connpass
https://cybozu.connpass.com/event/322718/

サイボウズの生産性向上チームでは社内エンジニアの開発生産性を上げるための活動を行なっています。そんな生産性向上チームが気になる方は下のリンクをクリック!
https://speakerdeck.com/cybozuinsideout/engineering-productivity-team-recruitment-information


GitHubで編集を提案
サイボウズ 生産性向上チーム 💪

Discussion