Catch-up! 週刊 GitHub updates(2024年4月1日-7日)
GitHub Changelog for Apr 1 - 7, 2024
こんにちは、@dz_ こと、岩永かづみです。
先週のGitHub Changelogの週刊キャッチアップをお届けします。
GitHub Educationの再設計
GitHub Educationは学習者向けに再設計された体験をお届けできるようになりました。GitHubのゴールはGitHub Educationの体験を強化することで、新しいスキルを学んだり、機会を探したり、学習者がつながり彼らのネットワークを構築することを手助けしたりに焦点を当てています。
この再設計はユーザーフレンドリー、アクセシビリティ、直感的な導線を促進し、技術においてキャリアを追求する必要がある学習者に、そのリソースを探し出せる力を提供します。
https://education.github.com/ でこの新しいデザインを体験できます。フィードバックは、GitHub Community Discussionsにてお寄せください。
まだGitHub Eduction Learnerではないですか?こちらから、ぜひご参加ください。
macOS 14(Sonoma)が一般公開🎉
macOS 14 (Sonoma)が一般公開されました。これからの12週間をかけて、macos-latest
ランナーラベルを利用しているジョブは、macOS 12 (Monterey)からmacOS 14 (Sonoma)に移行されます。移行の間、ログの「Set up job」ステップの「Runner Image」の情報を見ることで、そのジョブが移行されたのか判断できます。このアナウンスは、以下のランナーラベルが該当するlarger macOSランナーにも適用されます:
macos-latest-xlarge
macos-latest-large
macOS 14を直接利用する場合は、ワークフローファイルのruns-on:
をmacos-14
、macos-14-xlarge
、macos-14-large
に置き換えてください。
macOS 14ランナーイメージはmacOS 12とは異なるソフトウェア、バージョンがインストールされています。変更されたソフトウェアについては、一覧をご参照ください。
latest
を利用して一度でもmacOS 14で動作したワークフローは、古いイメージバージョンに戻ることはないことをご留意ください。もしmacOS 14を利用してワークフローで問題があった場合、runner-images repositoryでissueを作成しお知らせください。
Code security configurationsにより、Organizationにおけるセキュリティ製品の大規模な反映がより簡単に
Code security configurationsは、リポジトリのグループに対して適用したいセキュリティ設定のコレクションを定義することにより、GitHubセキュリティ製品の大規模な反映を簡潔にします。Organizationでは、Dependabot、secret scanning、code scanningにおけるGitHubの推奨する設定である「GitHub recommended」セキュリティ設定を適用できます。もしくは、独自のカスタムsecurity configurationも作成できます。例えば、organizationは本番用のリポジトリに対して「High risk」security configurationを作、内部のリポジトリに対して「Minimum protection」security configurationを作成できます。これにより、ことなるリスク プロファイルやセキュリティのニーズに基づいたセキュリティ設定を管理できます。新しいリポジトリに対して自動的に適用されるデフォルトのsecurity configurationも設定でき、目標とするカバレッジに対する差分を回避できます。
security configurationにより、configurationを適用するために必要なGitHub Advanced Security(GHAS)ライセンスの追加の数も確認できます。もしくは、選択したリポジトリに対してGHAS機能を無効にすることにより、利用可能なライセンスを捻出できます。これにより、OrganizationにおけるGitHubのコードセキュリティ機能を反映するとき、ライセンスの利用状況を理解しやすくなります。
Security configurationはGitHub.comにおいてpublic betaで利用可能で、GitHub Enterprise Server 3.14で利用可能になる予定です。詳しくは、security configurationをご参照ください。フィードバックはこちらよりお寄せください。
GitHub Actions ホステッドランナーの新着情報
本日(2024年4月2日)、GitHubの中で自動化やCI/CDを統合するために開発者やチームに強力な仮想マシンを提供するクラウドベースのサービスである、GitHub Actions ホステッドランナーの更新についてのアナウンスをしました。これらの更新は、GitHub Actionsのエンタープライズへの対応を強化することへの重要な飛躍であり、すべてのプロジェクトの規模や複雑さを網羅するGitHub Actions ホステッドランナーの導入の簡素化するというコミットメントの証です。
- Azureのプライベートネットワークとの接続について、これまではpublic betaでしたが、一般公開されました。この機能により、ユーザーはGitHub-hostedランナー上のActionsワークフローを、セキュリティやパフォーマンスを気にすることなく、Azureの仮想ネットワークに接続して実行できます。
- ホステッドランナーに対して、2 vCPU Linuxランナーと4 vCPU Windowsランナーを含む追加のSKUが追加され、どちらも自動スケーリングとプライベートネットワークへ接続できる機能を備えています。それらのSKUのどちらも本日から一般公開され、より小さなマシンサイズで十分でありながら、セキュリティとパフォーマンスの向上に対する需要が続くシナリオをサポートすることを目的としています。
- GPUホステッドランナー(4 vCPUs, 1T4 GPU)についてもpublic betaで利用可能になりました。GPUランナーは、LinuxとWindowsで利用可能で、自動スケーリングとプライベートネットワークへの接続が利用できます。これらのランナーは大規模言語モデル(LLMs)のようなマシンラーニングモデルを利用するチームや、ゲーム開発において自動化やCI/CDの工程の中でテストをより効率的に行うためにGPUグラフィックカードを必要とするチームを強化します。
利用するには
- GitHubホステッドランナーのAzureプライベートネットワーク接続は、TeamおよびEnterpriseプランで利用できます。利用開始するには、EnterpriseかOrganizationの設定で「Hosted Compute Networking」セクションをご覧ください。詳細は、ドキュメントをご確認ください。追加のAzureリージョンのサポートをリクエストしたい場合は、こちらのフォームよりご連絡ください。なお、GitHub CodespacesにおけるAzureのプライベートネットワーク接続については、まだbetaのままです。
- 新しく追加された2 vCPU Linuxと4 vCPU WIndows SKUは本日からTeamおよびEnterpriseプランで利用できます。これらのランナーを利用するには、ランナーの作成手順で「2-core」か「4-core」オプションを選択してGitHub-hostedランナーを作成してください。
- macOS LとmacOS XLランナーは、Free、TeamおよびEnterpriseプランにわたって利用可能で、
runs-on
キーをGitHubによって定義されたmacOSランナーラベルに更新することで利用できます。これらのSKUの価格については、ドキュメントをご参照ください。 - GPUランナーは本日からpublic betaとしてTeamおよびEnterpriseプランで利用できます。このランナーのセットアップ方法やイメージ、価格については、ドキュメントをご参照ください。フィードバックの共有やサポートするべき適切な追加のGPU SKUをみつける手助けをしてくれる方は、フォームよりご連絡ください。
これらの機能に関してどんなフィードバックでも熱心にお聞きしたいと思っています。ご意見をぜひGitHub Community Discussionにお寄せください。
GitHub Actions: ハードウェアにより最適化されたAndroid仮想環境が利用可能に
GitHub Actionsで2-vCPU LinuxのGitHubホステッドランナーを利用している方も、Androidのテストのためにハードウェア アクセラレーションを利用できるようになりました。以前は、この機能は4vCPU以上のランナーでしか利用できませんでした。
Linuxでこれを利用するには、Actionsの利用者はKVMユーザーグループを追加する必要があります。
- name: Enable KVM group perms
run: |
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
sudo udevadm control --reload-rules
sudo udevadm trigger --name-match=kvm
すると、reactivecircus/android-emulator-runnerのようなAndroidエミュレーター アクションを利用するとき、ハードウェア アクセラレーションを利用できます。
ハードウェア アクセラレーションのセットアップ方法については、ドキュメントをご参照ください。
Secret scanningがGitHub wikiもサポート
Secret scanningがGitHub wikiの内容もスキャンするように拡張されました。リポジトリでSecret scanningを有効にしていると、GitHub wikiの中で新しく混入したシークレットを検知した場合にアラートが自動的に送信されるようになります。
GitHub wikiの中で公に漏洩したシークレットは、secret scanningパートナー プログラムによって提携しているsecret scanningパートナーにも通知されます。
フィードバックや詳細について
60分間のフィードバックセッションをお申し込みください。その時間に対して補償がなされます。(訳に自信ないです @dzeyelid)
詳しく知りたい方は、シークレット スキャンについてやGitHubのsecret scanningプログラムへの参加をご参照ください。
Actions: セルフホステッドランナーでのジョブ実行のタイムアウトが5日間に
Actionsランナーが本当に短時間でよりセキュアであることを保証するために、セルフホステッドランナーにおける実行時間のタイムアウトを5日間に制限します。ジョブがこの制限に達した場合、ジョブは停止され、失敗として終了します。
詳しくは、セルフホステッド ランナーの概要をご参照ください。
security overviewダッシュボードにおけるフィルタ機能の拡張
本日(2024年4月4日)、security overviewダッシュボードとsecuret scanningメトリクスページにおいて、セキュリティツールに特化したフィルタをリリースしました。
「このOrganizationではSQLインジェクションを正しく対処できているのか?」「[パートナー名]のシークレットの漏洩にどれくらい早く対応できた?」と思ったことはありませんか?おそらく、npm
の依存関係の更新の速さに頭を悩ませてるのではないですか?もう悩む必要ありません。
新しいセキュリティツールフィルタで、あなたが知りたい正確な詳細を検索できるようになり、よりフォーカスされ関連性の高い必要とするレポートを得られます。
利用者のセキュリティにおける分析を実現できるように設計された新しいフィルタは以下の機能を持っています。
- Dependabot filters: 特定のエコシステムやパッケージ、依存のスコープに基準を合わせられる
- CodeQL/サードパーティ フィルタ: 利用者にとってもっとも重要なルールにドリルダウンできる
- secret scanningフィルタ: シークレットの型やプロバイダ、プッシュ プロテクションをバイパスしたかどうか、有効性などの粒度の細かいフィルタを利用できる
これらの機能はGitHub Enterprise Cloudでpublic betaとして利用可能で、GitHub Enterprise Server 3.14で利用できる予定です。
詳しくは、セキュリティの概要についてをご参照ください。フィードバックはこちらにお寄せください。
Discussion