📸

GitHub Copilot Enterprise GA 🎉 など|Productivity Weekly(2024-02-28)

2024/03/13に公開

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

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

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

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

news 📺

GitHub Copilot Enterprise is now generally available - The GitHub Blog

https://github.blog/2024-02-27-github-copilot-enterprise-is-now-generally-available/

去年の GitHub Universe で発表された、GitHub Copilot Enterprise が早くも GA になりました。

GitHub Copilot Enterprise は GitHub Copilot for Business の上位プランに当たります。
コア機能としては、次の 3 つが掲げられています。

  • 組織のコードベースを理解
  • GitHub.com 上で Copilot とチャットできる
    • Bing 検索とつながっており、インターネット上の最新の情報を元に回答してもらえる
  • Copilot にプルリクエストを要約させられる

また、Pricing のページには各プランとの比較がもう少し詳細に載っています。


https://github.com/features/copilot#pricing

ブログ記事には載っていませんが、他にも Fine-tuned なモデルを利用する機能も今後登場予定です。ただし、as add-on と書かれているので、別途料金がかかることになりそうです。

また、自動で issue からプルリクエストを作ってくれる Copilot Workspace も今後 Copilot Enterprise プランで使えるようになる可能性があります。

気になる料金ですが、ユーザあたり月 $39 とまあまあ高額です。小規模な組織では導入が簡単かもしれませんが、大規模な組織では導入ハードルが高そうですね。
ただ、その料金に見合う価値はありそうだと考えています。個人的には組織のコードベースを理解してチャットができる部分にとても魅力を感じています。今後 fine-tuned モデルが使えるようになったり、Copilot Workspace が使えるようになったりすると、さらに導入したくなりそうです。

本項の執筆者: @korosuke613

Repository Rules - configure merge queue rule - public beta - The GitHub Blog

https://github.blog/changelog/2024-02-27-repository-rules-configure-merge-queue-rule-public-beta/

Merge Queue のための設定が Branch Protection に代わる新しい Repository Rules でも可能になったようです。

Merge Queue 自体については過去に Productivity Weekly でも何度か解説記事を紹介しています[1][2]が、この機能を有効をにするためには Branch Protection の設定で Merge Queue を有効にする必要がありました。一方、最近では Branch Protection よりも柔軟に設定できる上位互換のRepository Rules(あるいは rulesets とも呼ばれることがある)も提供されており、ブランチへの force push の禁止や直接 push を禁止して pull-request を必須にするなどの設定は既に可能だったのですが、Merge Queue の設定は今まで Branch Protection でしか行えませんでした。

今回の機能追加により、Merge Queue を利用する場合でも Repository Rules だけで完結することが可能になったのでまた1つ Branch Protection を利用し続ける理由がなくなったと言えそうです。

本項の執筆者: @Kesin11

Deno 1.41: smaller deno compile binaries

https://deno.com/blog/v1.41

Deno v1.41 がリリースされました。今回の目玉はタイトルにもあるように deno compile で生成されるバイナリのサイズが小さくなったことで、記事中では今まで"Hello world"のシンプルなプログラムでも ARM の macOS 用バイナリで 116Mb だったものが、58Mb にまで縮小されたようです。

早速、拙作の Deno 製の CLI ツールを Deno v1.41 で deno compile し直してみたところ、ARM の macOS 用のバイナリで 101Mb -> 69Mb、x86_64 の Linux 用のバイナリで 119Mb -> 80Mb とおおよそ 30 - 40Mb 程度のサイズ削減が見られました!

https://github.com/Kesin11/gh-workflow-ls/releases/tag/v1.0.1

Go や Rust などで作成されたバイナリと比較するとまだまだ大きいですが、100Mb 以下で提供できると心理的なハードルが一段階低くなった気がします。個人的には TypeScript でシングルバイナリのツールを開発したい場合に Deno はかなり有力な選択肢になってきました。

また、記事中ではバイナリサイズをさらに減らすプランとして、必要な機能だけに絞った Deno をカスタムビルドするという方法も見当しているとのことなので今後さらに期待できそうです。

本項の執筆者: @Kesin11

AWS Systems Manager Parameter Store now supports cross-account sharing

https://aws.amazon.com/jp/about-aws/whats-new/2024/02/aws-systems-manager-parameter-store-cross-account-sharing/

AWS Systems Manager(いわゆる AWS SSM)の Parameter Store において、パラメータを他の AWS アカウントと共有できるようになりました。

これにより複数アカウントをまたぐパラメータを一元管理しやすくなります。AWS Resource Access Manager(AWS RAM)を使って他のリソースと同じように共有できるようです。

なお、すでにクラスメソッドさんが検証記事を出してくれています(いつもありがとうございます)。
興味ある方はぜひ次の記事もご参照ください。

本項の執筆者: @korosuke613

know-how 🎓

ENOG81: AWSのIPv6とPublic IPv4のおはなし - Speaker Deck

https://speakerdeck.com/yukihirokikuchi/enog81-aws-ipv6-public-ipv4

AWS の IPv6 対応と、IPv6 を活用した VPC ネットワーク構成の構築例を紹介されているスライドです。

個人的に、最近の業務で運用している AWS のインフラ上での NAT GW の利用料金が問題になり始めているため、Egress-only Internet Gateway(IPv6 のみ)を利用するネットワーク構成にすることで Private subnet からのインターネットに出ていく通信が NAT GW を通る必要がなくなるというのは料金面で魅力的に思いました。

AWS 側は IPv6 の対応がかなり進んでいるようであるという印象を受けましたが、自分たち側に IPv6 のノウハウが無いので既に運用しているインフラをすぐに IPv6 に移行するのは正直ちょっと難しそうです。ただ、スライドでも紹介されているようにパブリック IPv4 アドレスの値上げは既に始まっているので、さすがにそろそろ新規に VPC を構築する場合には最初から IPv6 も併用した構成を考えていきたいと思いました。

本項の執筆者: @Kesin11

GitHub OAuthアプリを使ったスパム攻撃を停止させる

https://zenn.dev/azu/articles/3a312d432ebc98

GitHub OAuth アプリを悪用したスパム攻撃事例が確認されています。この記事では、そのような攻撃をやめさせるための方法を実例を基に紹介しています。

記事では、スパム攻撃の概要、スパムをやめさせる方法(関係各所に通報)などが載っています。

こういったスパムメールやフィッシングサイトは見かけたとしても基本的に無視してきましたが、ドメインやホスティングサービスの管理元に通報することで、そのスパムに関しては断ち切ることもできるということは考えたこともありませんでした。実際の例で説明してくれているので、自分も今後は見かけたら各所へ通報してみようと思いました。
紹介されていた phish.report というサービスを使うことで通報先を簡単に知れるのも面白かったです。

本項の執筆者: @korosuke613

read more 🍘

Productivity Weekly で出たネタを全て紹介したいけど紹介する体力が持たなかったネタを一言程度で書くコーナーです。

  • news 📺
    • Highlights from Git 2.44 - The GitHub Blog
      • Git 2.44 がリリースされました
      • プッシュやプルする際のパフォーマンス向上や git replay コマンドが追加されました
      • git replay は git rebase 代替で、パフォーマンスが高いだけでなく、他にも色々な利点があるようです

本項の執筆者: @korosuke613

あとがき

今週号でした。GitHub Copilot Enterprise が GA になるの、思ったより早かったなという感じです。つかいてぇ〜けどたけ〜〜!

宣伝です。4/9(火)に大阪で Engineering Productivity Meetup #2 を開催します。
開発生産性を向上させる知見や技術をネタに開発者と交流する会です。
みなさん参加待ってます。

https://cybozu.connpass.com/event/311067/

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

脚注
  1. https://zenn.dev/cybozu_ept/articles/productivity-weekly-20230726 ↩︎

  2. https://zenn.dev/cybozu_ept/articles/productivity-weekly-20240214 ↩︎

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

Discussion