今週、私は GitHub Actions を使用した継続的インテグレーション (CI) パイプラインのセットアップを詳しく掘り下げながら、プロジェクト VShell の単体テスト スイートを拡張しました。このプロセスにより、CI の原則、自動テスト、開発者が確実にコードを配信できるようにするためのツールについての理解が深まりました。
継続的インテグレーションは、コードの変更が自動的にテストされ、共有リポジトリに頻繁に統合される開発手法です。 CI パイプラインを活用することで、開発者は開発サイクルの早い段階で問題を検出して対処できるため、コードの品質が向上し、統合リスクが軽減されます。 CI/CD パイプラインを使用すると、アプリケーションを自動的に構築、テスト、デプロイできるため、開発が加速され、信頼性が向上します。
Jenkins、CircleCI、TravisCI、GitLab CI など、利用可能な CI ツールは数多くありますが、今週は、アプリケーションに CI/CD を実装するための GitHub Actions に焦点を当てました。 GitHub Actions は、GitHub 内で直接統合された簡単なセットアップを提供するため、私のプロジェクトに最適です。
プロジェクトの GitHub アクションの構成 CI パイプラインを設定するには、GitHub リポジトリの [アクション] タブに移動し、アプリケーションが JavaScript ベースで Node.js 上で実行されるため、Node.js テンプレートを選択しました。これにより、CI パイプラインの動作を定義する .yml 構成ファイルが生成されました。
YAML 構成を理解する CI を初めて使用する人にとって、.yml ファイルは恐ろしく思えるかもしれません。仕組みの詳細は次のとおりです:
パイプラインのトリガー: パイプラインは、メイン ブランチに対してプッシュ リクエストまたはプル リクエストが行われるたびに実行されるように設定され、on キーワードを使用してこれらのトリガーを定義します。
ジョブの定義: 構成には、CI パイプラインがトリガーされたときに実行される一連のジョブが含まれています。これらのジョブには、Ubuntu OS ビルド環境を指定し、さまざまな Node.js バージョン間でテストし、ランタイム環境をセットアップして実行する手順が含まれています。最後に、コードを検証するためにテストが自動的に実行されます。
環境変数の設定 最初のパイプライン設定中に、GROQ_API_KEY に関連するエラーが発生しました。GROQ_API_KEY は、特定のテストに不可欠であり、ローカルの .env ファイルで定義されています。テストはローカルでスムーズに実行されましたが、GitHub Actions は変数にアクセスできず、実行が失敗しました。
解決策: GitHub シークレットのセットアップ これに対処するために、GitHub リポジトリ設定で API キーのシークレット変数を構成しました。修正の簡単な概要は次のとおりです:
以上がGitHub アクションを使用した VShell 用の CI パイプラインの実装の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。