Ipad

GitHubはソフトウェア開発の技術をさらに自動化するためにGitHub Actionsを導入しました

GitHubはソフトウェア開発の技術をさらに自動化するためにGitHub Actionsを導入しました

トム・クレイジット

GitHub のサンフランシスコ本社のフロアに設置された Octocat。(Steve Fadden 撮影、Flickr 経由、Creative Commons)

GitHub は、コードの保管庫であることに満足せず、ソフトウェア開発者が協力して効率を向上できる、よりよい方法を考案したと考えています。

まもなくマイクロソフト傘下となる同社は、火曜日の後半にサンフランシスコで開催される年次開発者カンファレンス「GitHub Universe」で、GitHub Actionsを発表する予定だ。GitHub Actionsにより、GitHubユーザー(今ではほぼすべてのコード開発者)は、ソフトウェアワークフローのさまざまなステップ間でコードを移動するプロセスを自動化できるようになる。

「これはプルリクエストを作成して以来、私たちが行った最も重要なことです」と、エコシステムエンジニアリングディレクターのカイル・デイグル氏は語った。これは、コードベースのメンテナーにレビュー対象の新しいものを思いついたことを知らせるために使用される、GitHub でおそらく最も基本的なアクションである。

多くの大規模プロジェクトと同様に、ソフトウェア開発は通常、プロジェクトの規模に応じて数十、数百、あるいは数千もの小さなステップに分割されます。チームは、各ステップの進捗状況(レビューの準備が整っているか、まだ作業が必要かなど)を調整する必要があるほか、既存のソフトウェアにコードをマージする際に、何も壊さずに調整する必要があります。多くの企業では、このプロセスが複数の開発ツールにまたがる手作業で行われており、非常に面倒な作業になっているとデイグル氏は述べています。

GitHubの新機能で定義されているアクションは、GitHubサーバー上で実行されるDockerコンテナにパッケージ化されたコードを使用します。ユーザーは、テストチャネルへの新しいコードの導入などのイベントに対してトリガーを設定できます。これらのトリガーによってアクションが起動され、管理者が設定した条件に基づいて、そのコードに関連する追加手順が実行されます。

GitHub Actions の概要。(GitHub 画像)

デイグル氏によると、あらゆるプログラミング言語をサポートし、オンプレミスサーバーだけでなくパブリッククラウドプロバイダーでも動作するという。Actionsは当初は招待制のプレビューとして提供されるが、HashiCorpやPulumiといった企業が自社の開発ツールでテストを行っている。

GitHub は今週のイベントで、セキュリティとコラボレーションに関するいくつかの機能も紹介する予定です。

同社はGitHub Security Advisory APIを導入します。このAPIはソフトウェアの脆弱性に関するデータを収集し、機械可読形式で提供します。これにより、企業は自社のコードベースに含まれるプロジェクトのバグやパッチに関する情報を入手できるようになります。また、JavaScript、Python、Rubyといった広く使用されているプログラミング言語向けに導入済みの脆弱性アラートと呼ばれる同様のサービスを、Javaおよび.NETプログラミング言語のユーザーにも拡張します。

また、膨大な数の企業開発プロジェクトを占めるプライベートリポジトリ内の GitHub プロジェクトに取り組んだ開発者は、すべての秘密を漏らすことなく、それらのプロジェクトの一部への貢献をリストできるようになります。

「私の20年間の開発履歴はファイアウォールの奥に閉じ込められています」と、GitHubのプロダクトエンジニアリング担当シニアディレクター、コーリー・ウィルカーソン氏は語る。「このチャンネルができたので、元CTOやVPEに連絡して、Github.comに接続し直してもらうようにお願いするかもしれません。そうすれば、自分のアイデンティティの一部を戻せるかもしれません。」

マイクロソフトによるGitHubの75億ドルの買収は今週後半に欧州の規制当局によって審査される予定で、米国の規制プロセスで何か異変が起きない限り、年末までに完了すると予想される。