ホームページ >開発ツール >Git >Githubアクションで並列ジョブを実行する方法

Githubアクションで並列ジョブを実行する方法

DDD
DDDオリジナル
2024-10-10 12:07:21992ブラウズ

GitHub Actions を使用すると、ジョブの並列実行が可能になり、ワークフローの効率が向上します。 「Parallel」キーワードを使用すると、複数のジョブが同時に実行され、タスクの完了時間が短縮されます。この記事では、並列ジョブの最大数について説明します。

Githubアクションで並列ジョブを実行する方法

GitHub Actions で並列ジョブを実行する方法

GitHub Actions は、自動化のための強力なツールです。ソフトウェア開発ワークフロー。 GitHub Actions を非常に強力にする機能の 1 つは、並列ジョブを実行する機能です。これにより、タスクをより小さな独立したステップに分割できるため、時間を大幅に節約できます。

GitHub Actions で並列ジョブを実行するには、ワークフロー ファイルで parallel キーワードを使用する必要があります。 parallel キーワードは、ジョブ名のリストを引数として受け取ります。たとえば、次のワークフロー ファイルは、2 つのジョブ job1job2 を並行して実行します。

<code class="yaml">name: My Workflow

on: [push]

jobs:
  job1:
    runs-on: ubuntu-latest
    steps:
      - echo "Hello from job1!"

  job2:
    runs-on: ubuntu-latest
    steps:
      - echo "Hello from job2!"</code>

このワークフローが実行されると、job1job2 の両方が に実行を開始します。同じ時間です。両方のジョブが正常に完了すると、ワークフローが完了します。

GitHub Actions で実行できる同時並列ジョブの数は何ですか?

GitHub Actions で実行できる同時並列ジョブの数は状況によって異なります。使用しているランナーの種類によって異なります。自己ホスト型ランナーの場合、実行できる並列ジョブの最大数は、ランナー上の CPU の数と同じです。 GitHub でホストされているランナーの場合、実行できる並列ジョブの最大数は 20 です。

GitHub Actions の並列ジョブは同じシークレットを共有できますか?

はい、GitHub Actions の並列ジョブは共有できます。同じ秘密を共有します。並列ジョブ間でシークレットを共有するには、secrets コンテキストを使用できます。 secrets コンテキストは、ワークフローで使用できるすべてのシークレットを含む辞書です。

ジョブ内の secrets コンテキストにアクセスするには、secrets キーワードを使用できます。たとえば、次のジョブは MY_SECRET シークレットの値を出力します:

<code class="yaml">name: My Job

on: [push]

jobs:
  job1:
    runs-on: ubuntu-latest
    steps:
      - echo "The value of MY_SECRET is: ${{ secrets.MY_SECRET }}"</code>

GitHub Actions で並列ジョブをデバッグするには?

並列をデバッグするには、いくつかの方法があります。 GitHub Actions のジョブ。 1 つの方法は、actions/runner-debug アクションを使用することです。このアクションは、ジョブで使用できる環境変数など、ランナーに関する多くの有用な情報を出力します。

actions/runner-debug アクションを使用するには、ワークフロー ファイルに次の行を追加します。

<code class="yaml">name: My Workflow

on: [push]

jobs:
  job1:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/runner-debug@v1</code>

actions/runner-debug アクションをワークフロー ファイルに追加したら、ワークフローを実行して、GitHub Actions ログの出力を確認できます。

GitHub Actions で並列ジョブをデバッグするもう 1 つの方法は、次のとおりです。 -vv CLI を実行する場合は、github-actions フラグを使用します。このフラグは、実行されているステップや使用されているリソースなど、ワークフローに関する多くの追加情報を出力します。

-vv フラグを使用するには、次のコマンドを実行します。

<code>github-actions -vv run workflow.yaml</code>

-vv フラグの出力は、並列ジョブの問題のトラブルシューティングに役立ちます。

以上がGithubアクションで並列ジョブを実行する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。