ぶっちゃけCI/CDツールと競合する? 日本でのアフターイベントで語られた使いどころ
前編で紹介した通り、GitHub Universeで解説されたGitHub Actionsの活用方法はユーザーによってさまざま。多様なツールと組み合わせることで、開発者のワークフローを画期的に改善できる点が強調されたが、日本のエンジニアたちはこの新機能をどう見たのだろうか。
及川卓也氏をはじめ現地を訪れていたエンジニアたちが、GitHub Universe開催の1週間後に渋谷TECH PLAYで行われたアフターイベントに集い、本音を交わした。
あらゆるベンダーがDevOpsのプラットフォームを目指す―及川卓也氏の所見
GitHub Universe現地の様子をスライドとともに紹介した及川氏。GitHub Actionsについては、このリリースが業界のトレンドとどうつながっているのか、所見を示した。
GitHub Actionsは、大きく2つのトレンドを象徴しているという。1つは、コンテナの流行と拡大。もう1つはDevOpsが当たり前になっていることだ。
GitHub Actionsの技術にコンテナが使われている点は注目のポイントだ。アクションのひとつひとつは、コンテナの中のインスタンスに対してコマンドを発行していく仕組み。メジャーなパブリッククラウドにおいても、コンテナを持って、Kubernetesで管理できるのが当然になってきている。昨今の技術のトレンドが表出した形となった。
DevOpsという意味では、GitHub自体がそのプラットフォームになりうる。GitHub Actionsのデモで、各種プラットフォームに一気にデプロイする様子が見られたが、こういったことは今後必要とされ、技術的にも可能となっていく。古い監視ツールを使った運用から脱却し、自動化されたDevOpsの流れを前提としているとした。
現在でも、GitHubが「リポジトリホスティングの会社」と思われることはあるが「今回の発表で、『DevOpsのためのプラットフォーム』であるとはっきりと分かった」と及川氏。コードを入れておくだけではなく、そこに対してさまざまなアクションが発生した時にGitHubをプラットフォームに使ってもらうことを意図している。
気になるGitHub ActionsとCI/CDツールとの関係について、このアフターイベントでGitHub Japanの池田尚史氏は「共存していける」と考えを示していたが、及川氏は「実際にはかなり似ていて、競合する方向に発展していくことも十分考えられる」とした。
似た方向性を持っているのはCI/CDツールだけではない。パブリッククラウドは、リポジトリの部分こそGitHubやGitLabに任せているものの、その他のワークフローについてはカバーできるように機能を出してきているという。
ワークフローの自動化は、あらゆるプラットフォームでできるようになってきている中で、ユーザーは何を基準に技術を選定していけばよいのだろうか?
及川氏は「何をトリガーとしてワークフローが動くか?」を考えると、選びどころが見えてくるのではないかと提言した。
GitHub Actionsにおいては、GitHubのイベントがトリガーとなる。用意されている26の基本イベントに加えて、カスタムイベントを定義することはできないので、デプロイ先でおきたアクションをトリガーとしてワークフローを動かしたい場合などを、一見カバーできないように思える。
しかし、これは現状のGitHub Actionsで可能だ。というのも、別のサービスからGitHubにイシュー登録することでGitHubのイベント化し、GitHub Actionsのワークフローに組み込むことができる。
及川氏は「これをGitHubが意図したのかは分からないが、このようにイベントを発生させるための情報がどんどん集まってくると、GitHubはDevOpsのプラットフォームとして、まさに『ハブ』として動くようになる」とGitHubの向かう先を予見する。
CI/CDツールベンダーやパブリッククラウドベンダーも同じように、自分たちのところをプラットフォームとして使ってほしいと考えている。「そういう意味では競合は発生するし、そこに注目すると各社がどのようにDevOpsを捉えているのか思想が見えてくるのではないか」と及川氏は指摘した。
ユーザーはそういったことを踏まえて、どんなツール・環境をDevOpsの中心に据えるべきなのかを考えるとよさそうだ。及川氏も、「ソースリポジトリとしてGitHubを見た時にニュートラルなCI/CDツールを選んでもよいし、変更の予定がないならパブリッククラウドを中心に据えるのもあり」だと提言する。