尝试运行排队的 Github 操作时遇到问题

问题描述 投票:0回答:3
我遇到了一个案例,其中两个 GitHub 操作同时运行(按预期),并在主分支上进行推送。问题是,我希望它在队列中运行,但我找不到任何有关它的有用文档。就我而言,我需要仅在同一操作的运行结束后运行该操作,因为我的部署中断(如果它仍在执行最后一个操作)。我首先必须处理一个我不想处理的第三方 cli,让它等待而不是直接部署,我非常喜欢在整个操作中这样做。

github continuous-deployment github-actions building-github-actions
3个回答
1
投票
我在这里看到以下解决方案:

    您可以“睡眠”您的相关工作流程以模拟等待 第一个工作流程。
  1. 等待行动可能有帮助 你就这样吧。
  2. 您可以尝试从第一个操作触发第二个操作(而不是在
  3. push
    )。
但是所有这些选项实际上更像是黑客。 GitHub Actions 被设计为并行运行,如果您想按特定顺序运行操作,您应该考虑使用作业,并使用

needs

 属性在它们之间建立依赖关系。示例:

jobs: job1: name: Run 1st job job2: name: Run 2nd job needs: job1

文档 -

需求


1
投票
您可以使用

并发

name: CI on: pull_request: branches: [main] concurrency: ci jobs:

文档


0
投票
我假设您指的是两个独立的工作流程。我用的是这个:

name: workflow-name on: workflow_run: # this is the requisite workflow workflows: ["previous-workflow-name"] types: - completed jobs: job1: # Runs the steps only if the previous-workflow-name workflow is successful # Doesn't mean it's completed then i'ts successfull # https://github.com/orgs/community/discussions/26238 if: ${{ github.event.workflow_run.conclusion == 'success' }} runs-on: ubuntu-latest steps:
    
© www.soinside.com 2019 - 2024. All rights reserved.