Skip to content
Latchkey

Push Notification workflow (vouch/vouch-proxy)

The Push Notification workflow from vouch/vouch-proxy, 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: vouch/vouch-proxy.github/workflows/notify-irc.ymlLicense MITView source

What it does

This is the Push Notification workflow from the vouch/vouch-proxy repository, a real project running GitHub Actions. It is shown here with attribution under its MIT license.

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

The workflow

workflow (.yml)
name: "Push Notification"
on: [push, pull_request, create]

jobs:
  notify-irc:
    runs-on: ubuntu-latest
    steps:
      - name: irc push
        uses: rectalogic/notify-irc@v1
        if: github.event_name == 'push'
        with:
          channel: "#vouch"
          server: irc.libera.chat
          nickname: from-github
          message: |
            ${{ github.actor }} pushed ${{ github.event.ref }} ${{ github.event.compare }}
            ${{ join(github.event.commits.*.message) }}
      - name: irc pull request
        uses: rectalogic/notify-irc@v1
        if: github.event_name == 'pull_request'
        with:
          channel: "#vouch"
          server: irc.libera.chat
          nickname: from-github
          message: |
            ${{ github.actor }} opened PR ${{ github.event.html_url }}
      - name: irc tag created
        uses: rectalogic/notify-irc@v1
        if: github.event_name == 'create' && github.event.ref_type == 'tag'
        with:
          channel: "#vouch"
          server: irc.libera.chat
          nickname: from-github
          message: |
            ${{ github.actor }} tagged ${{ github.repository }} ${{ github.event.ref }}

The same workflow, on Latchkey

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

name: "Push Notification"
on: [push, pull_request, create]
 
concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true
 
jobs:
  notify-irc:
    timeout-minutes: 30
    runs-on: latchkey-small
    steps:
      - name: irc push
        uses: rectalogic/notify-irc@v1
        if: github.event_name == 'push'
        with:
          channel: "#vouch"
          server: irc.libera.chat
          nickname: from-github
          message: |
            ${{ github.actor }} pushed ${{ github.event.ref }} ${{ github.event.compare }}
            ${{ join(github.event.commits.*.message) }}
      - name: irc pull request
        uses: rectalogic/notify-irc@v1
        if: github.event_name == 'pull_request'
        with:
          channel: "#vouch"
          server: irc.libera.chat
          nickname: from-github
          message: |
            ${{ github.actor }} opened PR ${{ github.event.html_url }}
      - name: irc tag created
        uses: rectalogic/notify-irc@v1
        if: github.event_name == 'create' && github.event.ref_type == 'tag'
        with:
          channel: "#vouch"
          server: irc.libera.chat
          nickname: from-github
          message: |
            ${{ github.actor }} tagged ${{ github.repository }} ${{ github.event.ref }}
 

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.