问题描述
在 github action for Google app engine deploy 中,引用了 github 操作中的 id:
- id: Deploy
uses: google-github-actions/deploy-appengine@main
with:
credentials: ${{ secrets.GCP_SA_KEY }}
但是 Github Actions examples 不是指 id,而是指名称作为 id:
每个作业都必须有一个 ID 才能与作业关联。键 job_id 是一个字符串,其值是作业配置数据的映射。您必须将
jobs:
my_first_job:
name: My first job
my_second_job:
name: My second job
有什么区别?
解决方法
我相信您对 step
定义和 job
定义感到困惑。
这是一个步骤:
- id: Deploy
uses: google-github-actions/deploy-appengine@main
with:
credentials: ${{ secrets.GCP_SA_KEY }}
完整的、不太容易混淆的符号是这样的:
steps:
- id: deploy
uses: google-github-actions/deploy-appengine@main
with:
credentials: ${{ secrets.gcp_credentials }}
可以在 Usage section of the deploy-appengine 存储库中看到。
GitHub 操作 workflow syntax documentation 是权威指南 - 如果您在别处看到本指南中未提及的内容,则可能是错误或误解。
至于ID和Name的区别(jobs和steps):
- ID 用作参考,来自其他作业或步骤(例如,在
jobs.<job_id>.needs
中)。 - 名称用于在 GitHub 上显示。
最后,为了完整起见,以下是 GitHub 工作流语法中与 ID/名称相关的条目:
name: Test # <- Workflow name
jobs:
test: # <- Job ID
name: Run test suite # <- Optional Job Name
steps:
- id: checkout # <- Optional step ID
name: Checkout code # <- Optional step name