Skip to content

Detect deadlocks with concurrency groups #538

Open
@mschoettle

Description

@mschoettle

I ran into a situation where on main jobs were cancelled due to a deadlock:

Canceling since a deadlock for concurrency group 'ci-939eda80664ec7b607b527ab22c31f5fe6ac4fa1' was detected between 'top level workflow' and 'build-image'

I have two workflows ci and build where ci calls the build workflow via uses:

  build-image:
    needs:
      - lint
    permissions:
      contents: read
      packages: write
    uses: ./.github/workflows/build.yml

This happens as soon as the lint job successfully completes and build-image is added.
Both workflows have the following concurrency group:

concurrency:
  group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
  cancel-in-progress: true

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions