本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
CodeBuild託管 GitHub 動作執行器支援的標籤覆寫
在 GitHub 動作工作流程 中YAML,您可以提供各種標籤覆寫,以修改自我託管的執行器建置。任何無法由 識別的建置 CodeBuild 都會遭到忽略,但不會失敗您的 Webhook 請求。例如,下列工作流程YAML包含映像、執行個體大小、機群和 buidlspec 的覆寫:
name: Hello World on: [push] jobs: Hello-World-Job: runs-on: - codebuild-myProject-${{ github.run_id }}-${{ github.run_attempt }} - image:${{ matrix.os }} - instance-size:${{ matrix.size }} - fleet:myFleet - buildspec-override:true strategy: matrix: include: - os: arm-3.0 size: small - os: al2-5.0 size: large steps: - run: echo "Hello World!"
codebuild-
(必要)<project-name>
-${{github.run_id}}-${{github.run_attempt}}
範例:
codebuild-fake-project-${{ github.run_id }}-${{ github.run_attempt }}
-
所有 GitHub 動作工作流程 都需要YAMLs。
<project name>
應等於設定自我託管 Runner Webhook 的專案名稱。
image:
<environment-type>
-<image-identifier>
範例:
image:arm-3.0
-
覆寫啟動自我託管執行器建置時所使用的映像和環境類型。若要了解支援的值,請參閱 CodeBuild託管 GitHub 動作執行器支援的運算映像。
instance-size:
<instance-size>
範例:
instance-size:medium
-
覆寫啟動自我託管執行器建置時所使用的執行個體類型。若要了解支援的值,請參閱 CodeBuild託管 GitHub 動作執行器支援的運算映像。
fleet:
<fleet-name>
範例:
fleet:myFleet
-
覆寫在專案上設定的機群設定,以使用指定的機群。如需詳細資訊,請參閱在預留容量機群上執行建置。
buildspec-override:
<boolean>
範例:
buildspec-override:true
-
如果設定為
PRE_BUILD
,允許建置在INSTALL
、 和POST_BUILD
階段中執行 buildspec 命令true
。
單一標籤覆寫 (舊版)
CodeBuild 可讓您使用下列方式,在單一標籤中提供多個覆寫:
-
若要覆寫 Amazon EC2/Lambda 運算建置的環境設定,請使用下列語法:
runs-on: codebuild-
<project-name>
-${{ github.run_id }}-${{ github.run_attempt }}-<environment-type>
-<image-identifier>
-<instance-size>
-
若要覆寫 Amazon EC2運算建置的機群設定,請使用下列語法:
runs-on: codebuild-
<project-name>
-${{ github.run_id }}-${{ github.run_attempt }}-fleet-<fleet-name>
-
若要同時覆寫用於建置的機群和映像,請使用下列語法:
runs-on: codebuild-
<project-name>
-${{ github.run_id }}-${{ github.run_attempt }}-image
-<image-version>
-fleet-<fleet-name>
-
若要在建置期間執行 buildspec 命令,
-with-buildspec
可以新增為標籤的尾碼:runs-on: codebuild-
<project-name>
-${{ github.run_id }}-${{ github.run_attempt }}-<image>
-<image-version>
-<instance-size>
-with-buildspec -
或者,您可以提供執行個體大小覆寫,而無需覆寫映像。對於 Amazon EC2建置,您可以同時排除環境類型和映像識別符。對於 Lambda 建置,您可以排除影像識別符。