Skip to content
Latchkey

Deploy Docs to Cloudflare Pages workflow (typeorm/typeorm)

The Deploy Docs to Cloudflare Pages workflow from typeorm/typeorm, 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: typeorm/typeorm.github/workflows/deploy-docs-cloudflare-pages.ymlLicense MITView source

What it does

This is the Deploy Docs to Cloudflare Pages workflow from the typeorm/typeorm 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: Deploy Docs to Cloudflare Pages

on:
  push:
    branches:
      - master
    paths:
      - "docs/**"
      - ".github/workflows/deploy-docs-cloudflare-pages.yml"

concurrency:
  group: deploy-docs-${{ github.ref }}
  cancel-in-progress: true

jobs:
  deploy:
    runs-on: ubuntu-latest
    permissions:
      contents: read
      deployments: write
    steps:
      - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
      - uses: ./.github/actions/build-docs

      - uses: cloudflare/wrangler-action@ebbaa1584979971c8614a24965b4405ff95890e0 # v4.0.0
        with:
          apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
          accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
          command: pages deploy docs/build --project-name=typeorm

The same workflow, on Latchkey

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

name: Deploy Docs to Cloudflare Pages
 
on:
  push:
    branches:
      - master
    paths:
      - "docs/**"
      - ".github/workflows/deploy-docs-cloudflare-pages.yml"
 
concurrency:
  group: deploy-docs-${{ github.ref }}
  cancel-in-progress: true
 
jobs:
  deploy:
    timeout-minutes: 30
    runs-on: latchkey-small
    permissions:
      contents: read
      deployments: write
    steps:
      - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
      - uses: ./.github/actions/build-docs
 
      - uses: cloudflare/wrangler-action@ebbaa1584979971c8614a24965b4405ff95890e0 # v4.0.0
        with:
          apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
          accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
          command: pages deploy docs/build --project-name=typeorm
 

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