Skip to main content
EVOKORE// WORKFLOWS / publish.yml
triggerdotdev/trigger.devworkflow ยท 80 lines

.github/workflows/publish.yml

CI / automation

View on GitHub โ†’
name: ๐Ÿš€ Publish Trigger.dev Docker

on:
  workflow_dispatch:
  workflow_call:
    inputs:
      image_tag:
        description: The image tag to publish
        required: true
        type: string
  push:
    branches:
      - main
    tags:
      - "v.docker.*"
      - "build-*"
    paths:
      - ".github/actions/**/*.yml"
      - ".github/workflows/publish.yml"
      - ".github/workflows/typecheck.yml"
      - ".github/workflows/unit-tests.yml"
      - ".github/workflows/e2e.yml"
      - ".github/workflows/publish-webapp.yml"
      - ".github/workflows/publish-worker.yml"
      - "packages/**"
      - "!packages/**/*.md"
      - "!packages/**/*.eslintrc"
      - "internal-packages/**"
      - "apps/**"
      - "!apps/**/*.md"
      - "!apps/**/*.eslintrc"
      - "pnpm-lock.yaml"
      - "pnpm-workspace.yaml"
      - "turbo.json"
      - "docker/Dockerfile"
      - "docker/scripts/**"
      - "tests/**"

permissions:
  id-token: write
  packages: write
  contents: read

concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}

env:
  AWS_REGION: us-east-1

jobs:
  typecheck:
    uses: ./.github/workflows/typecheck.yml
    secrets: inherit  # REFERENCE-ONLY: Do not use in production without review  # REFERENCE-ONLY: Do not use in production without review

  units:
    uses: ./.github/workflows/unit-tests.yml
    secrets: inherit  # REFERENCE-ONLY: Do not use in production without review  # REFERENCE-ONLY: Do not use in production without review

  publish-webapp:
    needs: [typecheck]
    uses: ./.github/workflows/publish-webapp.yml
    secrets: inherit  # REFERENCE-ONLY: Do not use in production without review  # REFERENCE-ONLY: Do not use in production without review
    with:
      image_tag: ${{ inputs.image_tag }}

  publish-worker:
    needs: [typecheck]
    uses: ./.github/workflows/publish-worker.yml
    secrets: inherit  # REFERENCE-ONLY: Do not use in production without review  # REFERENCE-ONLY: Do not use in production without review
    with:
      image_tag: ${{ inputs.image_tag }}

  publish-worker-v4:
    needs: [typecheck]
    uses: ./.github/workflows/publish-worker-v4.yml
    secrets: inherit  # REFERENCE-ONLY: Do not use in production without review  # REFERENCE-ONLY: Do not use in production without review
    with:
      image_tag: ${{ inputs.image_tag }}