Skip to content
Latchkey

Build template zips workflow (nuejs/nue)

The Build template zips workflow from nuejs/nue, explained and optimized by Latchkey.

C

CI health: C - fair

Point runs-on at Latchkey and get run de-duplication, 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: nuejs/nue.github/workflows/build-template-zips.ymlLicense MITView source

What it does

This is the Build template zips workflow from the nuejs/nue 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: Build template zips
on:
  push:
    branches: [ master, 2.0 ]
    paths:
      - 'packages/templates/**'
permissions:
  contents: write
jobs:
  build-templates:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Create template zips
        run: |
          cd packages/templates
          zip -r minimal.zip minimal/
          zip -r blog.zip blog/
          zip -r spa.zip spa/
          zip -r full.zip full/
      - name: Commit zips
        run: |
          git config user.name github-actions
          git config user.email github-actions@github.com
          git add packages/templates/*.zip
          git diff --quiet && git diff --staged --quiet || git commit -m "Update template zips"
          git push

The same workflow, on Latchkey

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

name: Build template zips
on:
  push:
    branches: [ master, 2.0 ]
    paths:
      - 'packages/templates/**'
permissions:
  contents: write
concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true
 
jobs:
  build-templates:
    timeout-minutes: 30
    runs-on: latchkey-small
    steps:
      - uses: actions/checkout@v4
      - name: Create template zips
        run: |
          cd packages/templates
          zip -r minimal.zip minimal/
          zip -r blog.zip blog/
          zip -r spa.zip spa/
          zip -r full.zip full/
      - name: Commit zips
        run: |
          git config user.name github-actions
          git config user.email github-actions@github.com
          git add packages/templates/*.zip
          git diff --quiet && git diff --staged --quiet || git commit -m "Update template zips"
          git push

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.

Actions used in this workflow