最近Microsoft傘下に入ったGitHubは長らくオープンソースのコード共有と保管のためのサービスと考えられてきた。今日(米国時間10/16)、同社はGitHub Actionsを発表し、独自のサービスを開発、提供する路線の第一歩を踏み出した。 デベロッパーはActionsを利用することで、単にこのプラットフォームにコードを保存したり同僚と共有したりするだけでなく、実行することが可能になる。
これはAWSのライバルとなるようなクラウドというより、IFTTTに近いがもっとフレキシブルなサービスだ。Actionsはワークフローそのものを自動化して効率化を図りたいデベロッパーのニーズに応えるものだ。
これはGitHubの事業にとって重要な転換点だ。事実、GitHubのプラットフォーム責任者、Sam Lambertは私の取材に対して「GitHubの歴史上最大のシフトだ」と答えた。LambertはこのサービスをiOSのショートカットに例えた。ただしはるかに多機能で強力だという。「ショートカット・アプリと似ているが比べものにならないくらいフレキシブルなサービスがGitHubにホスティングされ、誰でもこのコンテナの中で自由にパーツを組み合わせて効率的な独自のワークフローが作成できるところを想像して欲しい」とLambertは述べた。
GitHubのユーザーはActionsを使って 継続的デリバリー・システムを構築できる。GitHubでは多くのユーザーがActionsによるパイプラインを作るだろうと期待している。実際ユーザーもこのプロジェクトについて聞いたときそう思ったに違いない。今日のGitHubの発表によれば、Actionsは「ソフトウェアのビルド、パッケージ、リリース、デプロイ、アップデートという一連の流れを大きく効率化する。またどんなプログラミング言語にも対応する。GitHub上で開発された場合でもと外部のシステムの場合でも、コードを自分では実行する必要はない」という。しかしこれはほんの手始めに過ぎない。Lambertはこう強調している。
継続的インテグレーションと継続的デリバリー(CI/CD)はActionsのユースケースのほんの一部だ。たしかにその面で役立つが、Actionsはそれ以上のものだ。これはDevOps全体に革命を起こすものだとと思う。なぜならActionsを用いることでこの種のものとして最高のアプリケーション、フレームワークのデプロイメントのサイクルを構築できるからだ。ActionsはGitHubでプロジェクトを共有する場合のデファクト・スタンダードになるだろう[…]オープンソースで実行していたすべてができる。DevOps方式の開発ワークフロー・エコシステムのすべての部分に適用できる。
つまり、誰かがリポジトリで「緊急」というタグを使った場合、Twilioを使ってメッセージを送信するという仕組みを作ることができる。レポジトリを検索する一行のコードを書いてgrepコマンドで実行することもできる。その他どんなコードでもいい。レポジトリ内のコードをActionに変換するためにはそのためのDockerfileを書いてGitHubで実行できるようにしさえすればいいからだ。 Lambertによれば「Dockerファイルさえあれば、Actionsでビルドし、実行し、ワークフローに組み込むことができる」という。Dockerfileを使いたくない場合はワークフローをビルドするためのビジュアル・エディタも用意される。
GitHubのプロダクト・エンジニアリングの責任者、Corey Wilkersonによれば、Actionsはすでに多くのGitHubレポジトリで利用されているという。 Actionsは現在はまだベータ版で限定的公開だが、GitHubには9600万のプロジェクトがあるのですぐにたいへんな数のActionsが生まれるだろう。【略】
将来は(Lambertはそうなることを期待しているが)多くのGitHubユーザーがActionsで作成したワークフローをGitHubのマーケットプレイスで販売することになるかもしれない。現在はまだ可能ではないものの、GitHubはこのオプションの可能性を真剣に検討している。Lambertは「エンタープライズ向けツールを開発、販売する(これはSales Forceがやっている)予定がないデベロッパーもActionsによるワークフローの販売でマネタイズができるようになるはずだ」と考えている。
GitHubはデベロッパーに対してActionsを順次公開していく予定だ。デベロッパーはこちらからActionsに登録できる。【略】
GitHubではまたLearning LabでデベロッパーがGitHubを学習するのを助けるための新しいコースを3種類リリースした。また大規模な企業向けのプライベートなLearning Labも用意されている。
GitHub Enterpriseのユーザーにとってもっとも興味深いのは、管理者が個々のプログラマーの公開プロフィールに開発したプロジェクトを表示できるようになったことかもしれない。デベロッパーのコミュニティーではGitHubが事実上、履歴書として機能していることを考えると、このオプションが与える影響は大きい。
その他の発表はセキュリティーの強化に関するものが中心だった。たとえばGitHub Security Advisory APIはコードをスキャンしデベロッパーが脆弱性を発見することを容易にする。またJavaと .NETのプロジェクトには新たな脆弱性のアラート機能も追加された。 【略】
〔原文へ〕