ホームページ > ウェブフロントエンド > jsチュートリアル > GitHub アクションを使用した VShell 用の CI パイプラインの実装

GitHub アクションを使用した VShell 用の CI パイプラインの実装

Susan Sarandon
リリース: 2024-11-17 00:38:03
オリジナル
628 人が閲覧しました

導入

今週、私は GitHub Actions を使用した継続的インテグレーション (CI) パイプラインのセットアップを詳しく掘り下げながら、プロジェクト VShell の単体テスト スイートを拡張しました。このプロセスにより、CI の原則、自動テスト、開発者が確実にコードを配信できるようにするためのツールについての理解が深まりました。

継続的インテグレーションとは何ですか?

継続的インテグレーションは、コードの変更が自動的にテストされ、共有リポジトリに頻繁に統合される開発手法です。 CI パイプラインを活用することで、開発者は開発サイクルの早い段階で問題を検出して対処できるため、コードの品質が向上し、統合リスクが軽減されます。 CI/CD パイプラインを使用すると、アプリケーションを自動的に構築、テスト、デプロイできるため、開発が加速され、信頼性が向上します。

GitHub アクションを使用した CI パイプラインのセットアップ

Jenkins、CircleCI、TravisCI、GitLab CI など、利用可能な CI ツールは数多くありますが、今週は、アプリケーションに CI/CD を実装するための GitHub Actions に焦点を当てました。 GitHub Actions は、GitHub 内で直接統合された簡単なセットアップを提供するため、私のプロジェクトに最適です。

プロジェクトの GitHub アクションの構成 CI パイプラインを設定するには、GitHub リポジトリの [アクション] タブに移動し、アプリケーションが JavaScript ベースで Node.js 上で実行されるため、Node.js テンプレートを選択しました。これにより、CI パイプラインの動作を定義する .yml 構成ファイルが生成されました。

Implementing a CI Pipeline for VShell with GitHub Actions

YAML 構成を理解する CI を初めて使用する人にとって、.yml ファイルは恐ろしく思えるかもしれません。仕組みの詳細は次のとおりです:

パイプラインのトリガー: パイプラインは、メイン ブランチに対してプッシュ リクエストまたはプル リクエストが行われるたびに実行されるように設定され、on キーワードを使用してこれらのトリガーを定義します。

ジョブの定義: 構成には、CI パイプラインがトリガーされたときに実行される一連のジョブが含まれています。これらのジョブには、Ubuntu OS ビルド環境を指定し、さまざまな Node.js バージョン間でテストし、ランタイム環境をセットアップして実行する手順が含まれています。最後に、コードを検証するためにテストが自動的に実行されます。

私の経験

環境変数の設定 最初のパイプライン設定中に、GROQ_API_KEY に関連するエラーが発生しました。GROQ_API_KEY は、特定のテストに不可欠であり、ローカルの .env ファイルで定義されています。テストはローカルでスムーズに実行されましたが、GitHub Actions は変数にアクセスできず、実行が失敗しました。

解決策: GitHub シークレットのセットアップ これに対処するために、GitHub リポジトリ設定で API キーのシークレット変数を構成しました。修正の簡単な概要は次のとおりです:

  • リポジトリの設定に移動し、[設定] > [設定] に GROQ_API_KEY をシークレットとして追加しました。秘密。
  • .yml ファイルに env キーワードを追加して、パイプラインにこのキーを取得するように指示し、構成ファイルに機密データをハードコーディングせずにテストでキーにアクセスできるようにしました。

以上がGitHub アクションを使用した VShell 用の CI パイプラインの実装の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート