イベント
GitHubが年次イベント「GitHub Satellite」をオンライン開催、4領域で新発表
開発ワークフローにコードのセキュリティ解析を組み込む「Code Scanning」など
2020年5月8日 06:00
コード共有サイトのGitHubは、年次イベント「GitHub Satellite Virtual 2020」を5月6日(米国時間)に開催した。GitHub Satelliteは年に1回、米国外で開催されるイベントだが、今年はオンライン開催となった。
GitHubのCEO、Nat Friedman氏による基調講演では、「コミュニティ」「コード」「エンタープライズ」「セキュリティ」の4つの領域について新発表がなされた。
Issue等の並びでフォーラム「GitHub Discussions」が登場
コミュニティの領域では「GitHub Discussions」が発表された。リポジトリごとに用意されるフォーラムだ。これまでリポジトリには、バグ報告や機能要望などを議論する「GitHub Issue」があったが、Friedman氏は「GitHub Issueは生産性ツール。GitHub Discussionsはオープンな議論をする場所」と区別した。IssueとDiscussionの相互変換の機能もある。
すでに60以上の開発コミュニティが先行してβ版を利用しているという。使い方としては、Q&Aに使うほか、アイデアの共有と議論なども想定されている。例えばNext.jsコミュニティではRFCの議論にも利用していることが紹介された
GitHub Discussionsは夏に登場予定。基調講演では、GitHub Satellite 2020のGitHub Discussionsで試せると紹介された。
オンライン開発環境「GitHub Codespaces」発表
コードの領域では、オンライン開発環境の「GitHub Codespaces」が発表された。リポジトリのソースコードを、Web版のVisual Studio Code(VSCode)で直接編集できるものだ。VSCodeの機能をフルに使えるほか、VSCodeの拡張機能も使える。GitHubリポジトリに対してgitの操作もできる。
開発環境は、クラウドにホストされたDockerコンテナとして動く。リポジトリの中の「.devcontainer/devcontainer.json」という設定ファイルで環境をカスタマイズすることもできる。VSCodeからターミナルを開いてサーバーアプリをテスト実行することもでき、実行したときなどにターミナルにメッセージとして表示される「localhost」をWebブラウザーでクリックしたときに、Webブラウザー側ではなくサーバーアプリに安全につながるという。
Friedman氏は「オープンソースソフトウェア(OSS)にコントリビュートしようとすると、ローカルに環境をセットアップし、ソースコードを入手し、READMEを読み、依存ライブラリのインストールなどの準備を実行する必要がある」とし、GitHub Codespacesならリポジトリ上でクリックするだけで開発環境が用意できるとした。
GitHub Codespacesは、発表と同時にアーリーアクセスの申し込みを受け付けている。
第3のGitHub Enterprise「GitHub Private Instances」
エンタープライズ用のGitHubには、現在、オンプレミスのGitHub Enterprise Serverと、クラウドのGitHub Enterprise Cloudがある。
この2つに加えて新しく「GitHub Private Instances」が発表された。クラウド上のフルマネージドな専用GitHubで、自前キーによる暗号化や、プライベートコネクト、バックアップとアーカイブなどの機能を持つ。GitHub Private Instancesは近日登場予定。
そのほか、GitHub Enterprise Serverに、GitHub ActionsとGitHub Packagesの機能が今年後半にやってくることも紹介。さらに、GitHub Enterpriseに最近追加された機能として、コードレビューやプルリクエストなどの活動メトリクスをグラフ表示する「GitHub Insights」も紹介した。
開発ワークフローにコードのセキュリティ解析を組み込む「GitHub Code Scanning」
セキュリティの領域について、Friedman氏は「いまや自動車を買うとOSSが入っている時代」として、OSSのコードセキュリティの重要性を強調した。そのために、コミュニティによる解決と、開発ワークフローによる解決の両方が必要だという。
その開発ワークフローによる解決として、新しく「GitHub Code Scanning」が発表された。2019年に買収したSemmle社のコード解析技術「CodeQL」を元にしており、「プロアクティブなコードスキャンをワークフローに組み込む」とFriedman氏は説明した。
基調講演では、GitHubリポジトリから「CodeQL Analysis」を選ぶことで、GitHub ActionsのワークフローによりCode Scanningを設定されるところを紹介した。リポジトリにpushされたタイミングと定期実行で、コードスキャンが実行され、コード中のセキュリティ問題が検出される。スキャンの結果には、問題個所のほか、詳細や解説、対処法などが表示される。
Code Scanningのほか、アクセストークンなどの秘密情報が誤ってリポジトリに入ってしまうのを検出する「Secret Scanning」を、公開リポジトリと同様に、プライベートリポジトリ(非公開リポジトリ)でも利用可能になったことも発表された。