第14章. GitHubアクションに移行する
この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com
この本を通して見てきたように、GitHub Actions は GitHub と自動化を統合するための強力なプラットフォームを提供する。 ワークフローやアクションは、現在別のツールやプラットフォームを使っている CI/CD などの典型的なタスクに使うことができる。また、別のプラットフォームを使っている場合、GitHub Actionsへの移行は大変な命題のように思えるかもしれない。
この章では、CI/CD プラットフォームから GitHub Actions への移行に必要な基本的な知識を説明する。また、GitHub Actions Importerという新しいツールの使い方も紹介する。
GitHub Actions は、現在の自動化フレームワークを置き換えるために実装することができる。一般規則として、これらの6つのオプションのいずれかを使っている場合、移行はより簡単だ。 インポーターツールも、これらのプラットフォームのパイプラインで動作するように特別に設計されている:
- Azure DevOps
- バンブー(ベータ版、注参照)
- サークルCI
- ギットラボ
- ジェンキンス
- トラヴィスCI
バンブーへの対応
Atlassian Bamboo のサポートはこの章が書かれた後に追加されたもので、この執筆時点では現在ベータ版である。 このため、Bamboo からの移行の詳細については、ここでは説明しない。詳しくはドキュメントを参照のこと。
この章では詳細をすべて説明する時間とスペースはない。GitHub Actions ドキュメントの各プラットフォームの詳細な情報を参照すること。各プラットフォームの詳細な情報は、GitHub Actions のドキュメントを参照すること。(Bamboo を除いた)それぞれのタイプについて、共通点を説明し、違いを表にまとめた上で簡単な例を挙げていく。
法的通知
この章の例の一部は、MITライセンスの下、GitHub Actions Importerのページから転用されている。
プレップ
移行の前には、考え、計画する重要なステップがある。 これには、ソースコード、自動化、インフラ、ユーザのレビューが含まれる。
ソースコード
アクションとワークフローはGitHubリポジトリに関連付けられている。そのため、自動化のためにActionsに移行する前に、ソースコードをGitHubリポジトリに置くか、GitHubリポジトリに移行する必要がある。Gitをすでに使っている/知っているのであれば、この仕組みは簡単だ。空のリポジトリを作成すれば、GitHub がそれを実現するための明示的な手順を提供してくれる(図14-1)。
図14-1. 新しい GitHub リポジトリでの作業手順
とはいえ、コードをそのままGitHubに移行する前に、検討・対処すべき項目がいくつかある。以下の質問について検討し、その答えに納得してから作業を進めよう:
- すべてのソースコードを移したいのか、それとも特定のプロジェクトだけを移したいのか。
- すべての履歴を移動させたいのか、それとも最新のコンテンツだけを移動させたいのか。 ...