GitHub Actions 允許並行作業執行以提高工作流程效率。透過使用「並行」關鍵字,多個作業可以同時運行,從而減少任務完成時間。本文探討了並行作業的最大數量,
GitHub Actions 是一個強大的自動化工具的軟體開發工作流程。 GitHub Actions 如此強大的功能之一是執行平行作業的能力。對於可以分解為較小的獨立步驟的任務來說,這可以節省大量時間。
要在 GitHub Actions 中執行平行作業,您需要在工作流程檔案中使用 parallel
關鍵字。 parallel
關鍵字採用作業名稱清單作為其參數。例如,以下工作流程檔案將並行執行兩個作業 job1
和 job2
:
<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>
執行此工作流程時,job1
和 job2
都會開始運作同時。一旦兩個作業都成功完成,工作流程就會完成。
GitHub Actions 中可以同時運行的平行作業數量取決於關於您正在使用的跑步者的類型。對於自架運行器,可以運行的最大並行作業數等於運行器上的 CPU 數量。對於 GitHub 託管的運行器,可以運行的平行作業的最大數量為 20。
是的,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 中的職位。一種方法是使用 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 中偵錯並行作業的另一種方法是執行 -vv
CLI 時使用 github-actions
標誌。此標誌將列印有關工作流程的大量附加信息,包括正在執行的步驟和正在使用的資源。
要使用 -vv
標誌,請執行下列指令:
<code>github-actions -vv run workflow.yaml</code>
-vv
標誌的輸出有助於解決並行作業的問題。
以上是如何在 github actions 中執行平行作業的詳細內容。更多資訊請關注PHP中文網其他相關文章!