Skip to content
Latchkey

Comment on pull request without race conditions workflow (gradio-app/gradio)

The Comment on pull request without race conditions workflow from gradio-app/gradio, explained and optimized by Latchkey.

A

CI health: A - excellent

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

Grade your own workflow free or run it on Latchkey →
Source: gradio-app/gradio.github/workflows/comment-queue.ymlLicense Apache-2.0View source

What it does

This is the Comment on pull request without race conditions workflow from the gradio-app/gradio 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: Comment on pull request without race conditions

on:
  workflow_call:
    inputs:
      pr_number:
        type: string
      message:
        required: true
        type: string
      tag:
        required: false
        type: string
        default: "previews"
      additional_text:
        required: false
        type: string
        default: ""
    secrets:
      gh_token:
        required: true

jobs:
  comment:
    environment: comment_pr
    concurrency:
      group: ${{inputs.pr_number || inputs.tag}}
    runs-on: ubuntu-latest
    steps:
      - name: comment on pr
        uses: "gradio-app/github/actions/comment-pr@main"
        with:
          gh_token: ${{ secrets.gh_token }}
          tag: ${{ inputs.tag }}
          pr_number: ${{ inputs.pr_number}}
          message: ${{ inputs.message }}
          additional_text: ${{ inputs.additional_text }}

The same workflow, on Latchkey

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

name: Comment on pull request without race conditions
 
on:
  workflow_call:
    inputs:
      pr_number:
        type: string
      message:
        required: true
        type: string
      tag:
        required: false
        type: string
        default: "previews"
      additional_text:
        required: false
        type: string
        default: ""
    secrets:
      gh_token:
        required: true
 
jobs:
  comment:
    timeout-minutes: 30
    environment: comment_pr
    concurrency:
      group: ${{inputs.pr_number || inputs.tag}}
    runs-on: latchkey-small
    steps:
      - name: comment on pr
        uses: "gradio-app/github/actions/comment-pr@main"
        with:
          gh_token: ${{ secrets.gh_token }}
          tag: ${{ inputs.tag }}
          pr_number: ${{ inputs.pr_number}}
          message: ${{ inputs.message }}
          additional_text: ${{ inputs.additional_text }}
 

What changed

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