Skip to content
Latchkey

PR workflow (ProjectQ-Framework/ProjectQ)

The PR workflow from ProjectQ-Framework/ProjectQ, explained and optimized by Latchkey.

C

CI health: C - fair

Point runs-on at Latchkey and get run de-duplication, job timeouts, SHA-pinned actions, self-healing for flaky steps, and up to 58% lower cost, applied automatically.

Grade your own workflow free or run it on Latchkey →
Source: ProjectQ-Framework/ProjectQ.github/workflows/pull_request.ymlLicense Apache-2.0View source

What it does

This is the PR workflow from the ProjectQ-Framework/ProjectQ repository, a real project running GitHub Actions. It is shown here with attribution under its Apache-2.0 license.

Below, Latchkey shows a faster, safer version produced by its optimization engine.

The workflow

workflow (.yml)
---

name: PR
on:
  merge_group:
  pull_request:
    types: [opened, synchronize, reopened, ready_for_review, labeled, unlabeled]

jobs:
  # Enforces the update of a changelog file on every pull request
  changelog:
    runs-on: ubuntu-latest
    if: github.ref != 'refs/heads/master'
    steps:
      - uses: actions/checkout@v3

      - id: changelog-enforcer
        uses: dangoslen/changelog-enforcer@v3
        with:
          changeLogPath: 'CHANGELOG.md'
          skipLabels: 'Skip-Changelog'

The same workflow, on Latchkey

Removes redundant runs and caps runaway jobs. Added and changed lines are highlighted.

---
 
name: PR
on:
  merge_group:
  pull_request:
    types: [opened, synchronize, reopened, ready_for_review, labeled, unlabeled]
 
concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true
 
jobs:
  # Enforces the update of a changelog file on every pull request
  changelog:
    timeout-minutes: 30
    runs-on: latchkey-small
    if: github.ref != 'refs/heads/master'
    steps:
      - uses: actions/checkout@v3
 
      - id: changelog-enforcer
        uses: dangoslen/changelog-enforcer@v3
        with:
          changeLogPath: 'CHANGELOG.md'
          skipLabels: 'Skip-Changelog'
 

What changed

1 third-party action is referenced by a movable tag. Pin it to the commit SHA (Latchkey resolves and applies this automatically) so a repointed tag cannot change what runs.

This workflow runs 1 job per trigger. On Latchkey the same minutes cost up to 58% less than GitHub-hosted, with zero queue time.

Actions used in this workflow