mirror of
https://github.com/hatchet-dev/hatchet.git
synced 2026-03-20 11:40:32 -05:00
727 lines
32 KiB
YAML
727 lines
32 KiB
YAML
on:
|
|
push:
|
|
tags:
|
|
- "v*" # Push events to matching v*, i.e. v1.0, v20.15.10
|
|
name: Create prerelease w/ binaries and static assets
|
|
jobs:
|
|
build-push-hatchet-api-amd:
|
|
name: hatchet-api
|
|
runs-on: ubicloud-standard-4
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Build
|
|
run: |
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/servers.dockerfile \
|
|
-t ghcr.io/hatchet-dev/hatchet/hatchet-api:${{steps.tag_name.outputs.tag}}-amd64 \
|
|
--build-arg SERVER_TARGET=api \
|
|
--build-arg VERSION=${{steps.tag_name.outputs.tag}} \
|
|
--platform linux/amd64 \
|
|
.
|
|
- name: Push to GHCR
|
|
run: |
|
|
docker push ghcr.io/hatchet-dev/hatchet/hatchet-api:${{steps.tag_name.outputs.tag}}-amd64
|
|
build-push-hatchet-api-arm:
|
|
name: hatchet-api
|
|
runs-on: ubicloud-standard-4-arm
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Build
|
|
run: |
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/servers.dockerfile \
|
|
-t ghcr.io/hatchet-dev/hatchet/hatchet-api:${{steps.tag_name.outputs.tag}}-arm64 \
|
|
--build-arg SERVER_TARGET=api \
|
|
--build-arg VERSION=${{steps.tag_name.outputs.tag}} \
|
|
--platform linux/arm64 \
|
|
.
|
|
- name: Push to GHCR
|
|
run: |
|
|
docker push ghcr.io/hatchet-dev/hatchet/hatchet-api:${{steps.tag_name.outputs.tag}}-arm64
|
|
build-push-hatchet-api:
|
|
name: Combine hatchet-api
|
|
runs-on: ubicloud-standard-4
|
|
needs:
|
|
- build-push-hatchet-api-amd
|
|
- build-push-hatchet-api-arm
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Pull amd64
|
|
run: docker pull ghcr.io/hatchet-dev/hatchet/hatchet-api:${{steps.tag_name.outputs.tag}}-amd64
|
|
- name: Pull arm64
|
|
run: docker pull ghcr.io/hatchet-dev/hatchet/hatchet-api:${{steps.tag_name.outputs.tag}}-arm64
|
|
- name: Combine
|
|
run: |
|
|
docker manifest create ghcr.io/hatchet-dev/hatchet/hatchet-api:${{steps.tag_name.outputs.tag}} \
|
|
ghcr.io/hatchet-dev/hatchet/hatchet-api:${{steps.tag_name.outputs.tag}}-amd64 \
|
|
ghcr.io/hatchet-dev/hatchet/hatchet-api:${{steps.tag_name.outputs.tag}}-arm64
|
|
docker manifest push ghcr.io/hatchet-dev/hatchet/hatchet-api:${{steps.tag_name.outputs.tag}}
|
|
build-push-hatchet-admin-amd:
|
|
name: hatchet-admin
|
|
runs-on: ubicloud-standard-4
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Build
|
|
run: |
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/servers.dockerfile \
|
|
-t ghcr.io/hatchet-dev/hatchet/hatchet-admin:${{steps.tag_name.outputs.tag}}-amd64 \
|
|
--build-arg SERVER_TARGET=admin \
|
|
--build-arg VERSION=${{steps.tag_name.outputs.tag}} \
|
|
--platform linux/amd64 \
|
|
.
|
|
- name: Push to GHCR
|
|
run: |
|
|
docker push ghcr.io/hatchet-dev/hatchet/hatchet-admin:${{steps.tag_name.outputs.tag}}-amd64
|
|
build-push-hatchet-admin-arm:
|
|
name: hatchet-admin
|
|
runs-on: ubicloud-standard-4-arm
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Build
|
|
run: |
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/servers.dockerfile \
|
|
-t ghcr.io/hatchet-dev/hatchet/hatchet-admin:${{steps.tag_name.outputs.tag}}-arm64 \
|
|
--build-arg SERVER_TARGET=admin \
|
|
--build-arg VERSION=${{steps.tag_name.outputs.tag}} \
|
|
--platform linux/arm64 \
|
|
.
|
|
- name: Push to GHCR
|
|
run: |
|
|
docker push ghcr.io/hatchet-dev/hatchet/hatchet-admin:${{steps.tag_name.outputs.tag}}-arm64
|
|
build-push-hatchet-admin:
|
|
name: Combine hatchet-admin
|
|
runs-on: ubicloud-standard-4
|
|
needs:
|
|
- build-push-hatchet-admin-amd
|
|
- build-push-hatchet-admin-arm
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Pull amd64
|
|
run: docker pull ghcr.io/hatchet-dev/hatchet/hatchet-admin:${{steps.tag_name.outputs.tag}}-amd64
|
|
- name: Pull arm64
|
|
run: docker pull ghcr.io/hatchet-dev/hatchet/hatchet-admin:${{steps.tag_name.outputs.tag}}-arm64
|
|
- name: Combine
|
|
run: |
|
|
docker manifest create ghcr.io/hatchet-dev/hatchet/hatchet-admin:${{steps.tag_name.outputs.tag}} \
|
|
ghcr.io/hatchet-dev/hatchet/hatchet-admin:${{steps.tag_name.outputs.tag}}-amd64 \
|
|
ghcr.io/hatchet-dev/hatchet/hatchet-admin:${{steps.tag_name.outputs.tag}}-arm64
|
|
docker manifest push ghcr.io/hatchet-dev/hatchet/hatchet-admin:${{steps.tag_name.outputs.tag}}
|
|
build-push-hatchet-engine-amd:
|
|
name: hatchet-engine
|
|
runs-on: ubicloud-standard-4
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Build
|
|
run: |
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/servers.dockerfile \
|
|
-t ghcr.io/hatchet-dev/hatchet/hatchet-engine:${{steps.tag_name.outputs.tag}}-amd64 \
|
|
--build-arg SERVER_TARGET=engine \
|
|
--build-arg VERSION=${{steps.tag_name.outputs.tag}} \
|
|
--platform linux/amd64 \
|
|
.
|
|
- name: Push to GHCR
|
|
run: |
|
|
docker push ghcr.io/hatchet-dev/hatchet/hatchet-engine:${{steps.tag_name.outputs.tag}}-amd64
|
|
build-push-hatchet-engine-arm:
|
|
name: hatchet-engine
|
|
runs-on: ubicloud-standard-4-arm
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Build
|
|
run: |
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/servers.dockerfile \
|
|
-t ghcr.io/hatchet-dev/hatchet/hatchet-engine:${{steps.tag_name.outputs.tag}}-arm64 \
|
|
--build-arg SERVER_TARGET=engine \
|
|
--build-arg VERSION=${{steps.tag_name.outputs.tag}} \
|
|
--platform linux/arm64 \
|
|
.
|
|
- name: Push to GHCR
|
|
run: |
|
|
docker push ghcr.io/hatchet-dev/hatchet/hatchet-engine:${{steps.tag_name.outputs.tag}}-arm64
|
|
build-push-hatchet-engine:
|
|
name: Combine hatchet-engine
|
|
runs-on: ubicloud-standard-4
|
|
needs:
|
|
- build-push-hatchet-engine-amd
|
|
- build-push-hatchet-engine-arm
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Pull amd64
|
|
run: docker pull ghcr.io/hatchet-dev/hatchet/hatchet-engine:${{steps.tag_name.outputs.tag}}-amd64
|
|
- name: Pull arm64
|
|
run: docker pull ghcr.io/hatchet-dev/hatchet/hatchet-engine:${{steps.tag_name.outputs.tag}}-arm64
|
|
- name: Combine
|
|
run: |
|
|
docker manifest create ghcr.io/hatchet-dev/hatchet/hatchet-engine:${{steps.tag_name.outputs.tag}} \
|
|
ghcr.io/hatchet-dev/hatchet/hatchet-engine:${{steps.tag_name.outputs.tag}}-amd64 \
|
|
ghcr.io/hatchet-dev/hatchet/hatchet-engine:${{steps.tag_name.outputs.tag}}-arm64
|
|
docker manifest push ghcr.io/hatchet-dev/hatchet/hatchet-engine:${{steps.tag_name.outputs.tag}}
|
|
build-push-hatchet-migrate-amd:
|
|
name: hatchet-migrate
|
|
runs-on: ubicloud-standard-4
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Build
|
|
run: |
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/servers.dockerfile \
|
|
--build-arg SERVER_TARGET=migrate \
|
|
--build-arg VERSION=${{steps.tag_name.outputs.tag}} \
|
|
-t ghcr.io/hatchet-dev/hatchet/hatchet-migrate:${{steps.tag_name.outputs.tag}}-amd64 \
|
|
--platform linux/amd64 \
|
|
.
|
|
- name: Push to GHCR
|
|
run: |
|
|
docker push ghcr.io/hatchet-dev/hatchet/hatchet-migrate:${{steps.tag_name.outputs.tag}}-amd64
|
|
build-push-hatchet-migrate-arm:
|
|
name: hatchet-migrate
|
|
runs-on: ubicloud-standard-4-arm
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Build
|
|
run: |
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/servers.dockerfile \
|
|
--build-arg SERVER_TARGET=migrate \
|
|
--build-arg VERSION=${{steps.tag_name.outputs.tag}} \
|
|
-t ghcr.io/hatchet-dev/hatchet/hatchet-migrate:${{steps.tag_name.outputs.tag}}-arm64 \
|
|
--platform linux/arm64 \
|
|
.
|
|
- name: Push to GHCR
|
|
run: |
|
|
docker push ghcr.io/hatchet-dev/hatchet/hatchet-migrate:${{steps.tag_name.outputs.tag}}-arm64
|
|
build-push-hatchet-migrate:
|
|
name: Combine hatchet-migrate
|
|
runs-on: ubicloud-standard-4
|
|
needs:
|
|
- build-push-hatchet-migrate-amd
|
|
- build-push-hatchet-migrate-arm
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Pull amd64
|
|
run: docker pull ghcr.io/hatchet-dev/hatchet/hatchet-migrate:${{steps.tag_name.outputs.tag}}-amd64
|
|
- name: Pull arm64
|
|
run: docker pull ghcr.io/hatchet-dev/hatchet/hatchet-migrate:${{steps.tag_name.outputs.tag}}-arm64
|
|
- name: Combine
|
|
run: |
|
|
docker manifest create ghcr.io/hatchet-dev/hatchet/hatchet-migrate:${{steps.tag_name.outputs.tag}} \
|
|
ghcr.io/hatchet-dev/hatchet/hatchet-migrate:${{steps.tag_name.outputs.tag}}-amd64 \
|
|
ghcr.io/hatchet-dev/hatchet/hatchet-migrate:${{steps.tag_name.outputs.tag}}-arm64
|
|
docker manifest push ghcr.io/hatchet-dev/hatchet/hatchet-migrate:${{steps.tag_name.outputs.tag}}
|
|
build-push-hatchet-frontend-amd:
|
|
name: hatchet-frontend
|
|
runs-on: ubicloud-standard-4
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
|
|
with:
|
|
python-version: '3.14'
|
|
- name: Generate docs snippets and examples
|
|
working-directory: frontend/snippets
|
|
run: python3 generate.py
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Build
|
|
run: |
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/frontend.dockerfile \
|
|
-t ghcr.io/hatchet-dev/hatchet/hatchet-frontend:${{steps.tag_name.outputs.tag}}-amd64 \
|
|
--platform linux/amd64 \
|
|
.
|
|
- name: Push to GHCR
|
|
run: |
|
|
docker push ghcr.io/hatchet-dev/hatchet/hatchet-frontend:${{steps.tag_name.outputs.tag}}-amd64
|
|
build-push-hatchet-frontend-arm:
|
|
name: hatchet-frontend
|
|
runs-on: ubicloud-standard-4-arm
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
|
|
with:
|
|
python-version: '3.14'
|
|
- name: Generate docs snippets and examples
|
|
working-directory: frontend/snippets
|
|
run: python3 generate.py
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Build
|
|
run: |
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/frontend.dockerfile \
|
|
-t ghcr.io/hatchet-dev/hatchet/hatchet-frontend:${{steps.tag_name.outputs.tag}}-arm64 \
|
|
--platform linux/arm64 \
|
|
.
|
|
- name: Push to GHCR
|
|
run: |
|
|
docker push ghcr.io/hatchet-dev/hatchet/hatchet-frontend:${{steps.tag_name.outputs.tag}}-arm64
|
|
build-push-hatchet-frontend:
|
|
name: Combine hatchet-frontend
|
|
runs-on: ubicloud-standard-4
|
|
needs:
|
|
- build-push-hatchet-frontend-amd
|
|
- build-push-hatchet-frontend-arm
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Pull amd64
|
|
run: docker pull ghcr.io/hatchet-dev/hatchet/hatchet-frontend:${{steps.tag_name.outputs.tag}}-amd64
|
|
- name: Pull arm64
|
|
run: docker pull ghcr.io/hatchet-dev/hatchet/hatchet-frontend:${{steps.tag_name.outputs.tag}}-arm64
|
|
- name: Combine
|
|
run: |
|
|
docker manifest create ghcr.io/hatchet-dev/hatchet/hatchet-frontend:${{steps.tag_name.outputs.tag}} \
|
|
ghcr.io/hatchet-dev/hatchet/hatchet-frontend:${{steps.tag_name.outputs.tag}}-amd64 \
|
|
ghcr.io/hatchet-dev/hatchet/hatchet-frontend:${{steps.tag_name.outputs.tag}}-arm64
|
|
docker manifest push ghcr.io/hatchet-dev/hatchet/hatchet-frontend:${{steps.tag_name.outputs.tag}}
|
|
build-push-hatchet-lite-amd:
|
|
name: hatchet-lite-amd
|
|
runs-on: ubicloud-standard-4
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
|
|
with:
|
|
python-version: '3.14'
|
|
- name: Generate docs snippets and examples
|
|
working-directory: frontend/snippets
|
|
run: python3 generate.py
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # v3.12.0
|
|
- name: Build
|
|
run: |
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/servers.dockerfile \
|
|
--build-arg SERVER_TARGET=lite \
|
|
--build-arg VERSION=${{steps.tag_name.outputs.tag}} \
|
|
--platform linux/amd64 \
|
|
-t hatchet-lite-tmp:amd64 \
|
|
. &
|
|
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/servers.dockerfile \
|
|
--build-arg SERVER_TARGET=admin \
|
|
--build-arg VERSION=${{steps.tag_name.outputs.tag}} \
|
|
--platform linux/amd64 \
|
|
-t hatchet-admin-tmp:amd64 \
|
|
. &
|
|
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/servers.dockerfile \
|
|
--build-arg SERVER_TARGET=migrate \
|
|
--build-arg VERSION=${{steps.tag_name.outputs.tag}} \
|
|
--platform linux/amd64 \
|
|
-t hatchet-migrate-tmp:amd64 \
|
|
. &
|
|
|
|
wait
|
|
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/lite.dockerfile \
|
|
-t ghcr.io/hatchet-dev/hatchet/hatchet-lite:${{steps.tag_name.outputs.tag}}-amd64 \
|
|
--platform linux/amd64 \
|
|
--build-arg HATCHET_LITE_IMAGE=hatchet-lite-tmp:amd64 \
|
|
--build-arg HATCHET_ADMIN_IMAGE=hatchet-admin-tmp:amd64 \
|
|
--build-arg HATCHET_MIGRATE_IMAGE=hatchet-migrate-tmp:amd64 \
|
|
.
|
|
- name: Push to GHCR
|
|
run: |
|
|
docker push ghcr.io/hatchet-dev/hatchet/hatchet-lite:${{steps.tag_name.outputs.tag}}-amd64
|
|
build-push-hatchet-lite-arm:
|
|
name: hatchet-lite-arm
|
|
runs-on: ubicloud-standard-4-arm
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
|
|
with:
|
|
python-version: '3.14'
|
|
- name: Generate docs snippets and examples
|
|
working-directory: frontend/snippets
|
|
run: python3 generate.py
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # v3.12.0
|
|
- name: Build
|
|
run: |
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/servers.dockerfile \
|
|
--build-arg SERVER_TARGET=lite \
|
|
--build-arg VERSION=${{steps.tag_name.outputs.tag}} \
|
|
--platform linux/arm64 \
|
|
-t hatchet-lite-tmp:arm64 \
|
|
. &
|
|
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/servers.dockerfile \
|
|
--build-arg SERVER_TARGET=admin \
|
|
--build-arg VERSION=${{steps.tag_name.outputs.tag}} \
|
|
--platform linux/arm64 \
|
|
-t hatchet-admin-tmp:arm64 \
|
|
. &
|
|
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/servers.dockerfile \
|
|
--build-arg SERVER_TARGET=migrate \
|
|
--build-arg VERSION=${{steps.tag_name.outputs.tag}} \
|
|
--platform linux/arm64 \
|
|
-t hatchet-migrate-tmp:arm64 \
|
|
. &
|
|
|
|
wait
|
|
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/lite.dockerfile \
|
|
-t ghcr.io/hatchet-dev/hatchet/hatchet-lite:${{steps.tag_name.outputs.tag}}-arm64 \
|
|
--platform linux/arm64 \
|
|
--build-arg HATCHET_LITE_IMAGE=hatchet-lite-tmp:arm64 \
|
|
--build-arg HATCHET_ADMIN_IMAGE=hatchet-admin-tmp:arm64 \
|
|
--build-arg HATCHET_MIGRATE_IMAGE=hatchet-migrate-tmp:arm64 \
|
|
.
|
|
- name: Push to GHCR
|
|
run: |
|
|
docker push ghcr.io/hatchet-dev/hatchet/hatchet-lite:${{steps.tag_name.outputs.tag}}-arm64
|
|
combine-hatchet-lite:
|
|
name: Combine hatchet-lite
|
|
runs-on: ubicloud-standard-4
|
|
needs:
|
|
- build-push-hatchet-lite-amd
|
|
- build-push-hatchet-lite-arm
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Pull amd64
|
|
run: docker pull ghcr.io/hatchet-dev/hatchet/hatchet-lite:${{steps.tag_name.outputs.tag}}-amd64
|
|
- name: Pull arm64
|
|
run: docker pull ghcr.io/hatchet-dev/hatchet/hatchet-lite:${{steps.tag_name.outputs.tag}}-arm64
|
|
- name: Combine
|
|
run: |
|
|
docker manifest create ghcr.io/hatchet-dev/hatchet/hatchet-lite:${{steps.tag_name.outputs.tag}} \
|
|
ghcr.io/hatchet-dev/hatchet/hatchet-lite:${{steps.tag_name.outputs.tag}}-amd64 \
|
|
ghcr.io/hatchet-dev/hatchet/hatchet-lite:${{steps.tag_name.outputs.tag}}-arm64
|
|
docker manifest push ghcr.io/hatchet-dev/hatchet/hatchet-lite:${{steps.tag_name.outputs.tag}}
|
|
build-push-hatchet-dashboard-amd:
|
|
name: hatchet-dashboard-amd
|
|
runs-on: ubicloud-standard-4
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
|
|
with:
|
|
python-version: '3.14'
|
|
- name: Generate docs snippets and examples
|
|
working-directory: frontend/snippets
|
|
run: python3 generate.py
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # v3.12.0
|
|
- name: Build
|
|
run: |
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/servers.dockerfile \
|
|
--build-arg SERVER_TARGET=api \
|
|
--build-arg VERSION=${{steps.tag_name.outputs.tag}} \
|
|
--platform linux/amd64 \
|
|
-t hatchet-api-tmp:amd64 \
|
|
.
|
|
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/dashboard.dockerfile \
|
|
-t ghcr.io/hatchet-dev/hatchet/hatchet-dashboard:${{steps.tag_name.outputs.tag}}-amd64 \
|
|
--platform linux/amd64 \
|
|
--build-arg HATCHET_API_IMAGE=hatchet-api-tmp:amd64 \
|
|
.
|
|
- name: Push to GHCR
|
|
run: |
|
|
docker push ghcr.io/hatchet-dev/hatchet/hatchet-dashboard:${{steps.tag_name.outputs.tag}}-amd64
|
|
build-push-hatchet-dashboard-arm:
|
|
name: hatchet-dashboard-arm
|
|
runs-on: ubicloud-standard-4-arm
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
|
|
with:
|
|
python-version: '3.14'
|
|
- name: Generate docs snippets and examples
|
|
working-directory: frontend/snippets
|
|
run: python3 generate.py
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # v3.12.0
|
|
- name: Build
|
|
run: |
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/servers.dockerfile \
|
|
--build-arg SERVER_TARGET=api \
|
|
--build-arg VERSION=${{steps.tag_name.outputs.tag}} \
|
|
--platform linux/arm64 \
|
|
-t hatchet-api-tmp:arm64 \
|
|
.
|
|
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/dashboard.dockerfile \
|
|
-t ghcr.io/hatchet-dev/hatchet/hatchet-dashboard:${{steps.tag_name.outputs.tag}}-arm64 \
|
|
--platform linux/arm64 \
|
|
--build-arg HATCHET_API_IMAGE=hatchet-api-tmp:arm64 \
|
|
.
|
|
- name: Push to GHCR
|
|
run: |
|
|
docker push ghcr.io/hatchet-dev/hatchet/hatchet-dashboard:${{steps.tag_name.outputs.tag}}-arm64
|
|
combine-hatchet-dashboard:
|
|
name: Combine hatchet-dashboard
|
|
runs-on: ubicloud-standard-4
|
|
needs:
|
|
- build-push-hatchet-dashboard-amd
|
|
- build-push-hatchet-dashboard-arm
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Pull amd64
|
|
run: docker pull ghcr.io/hatchet-dev/hatchet/hatchet-dashboard:${{steps.tag_name.outputs.tag}}-amd64
|
|
- name: Pull arm64
|
|
run: docker pull ghcr.io/hatchet-dev/hatchet/hatchet-dashboard:${{steps.tag_name.outputs.tag}}-arm64
|
|
- name: Combine
|
|
run: |
|
|
docker manifest create ghcr.io/hatchet-dev/hatchet/hatchet-dashboard:${{steps.tag_name.outputs.tag}} \
|
|
ghcr.io/hatchet-dev/hatchet/hatchet-dashboard:${{steps.tag_name.outputs.tag}}-amd64 \
|
|
ghcr.io/hatchet-dev/hatchet/hatchet-dashboard:${{steps.tag_name.outputs.tag}}-arm64
|
|
docker manifest push ghcr.io/hatchet-dev/hatchet/hatchet-dashboard:${{steps.tag_name.outputs.tag}}
|
|
build-push-hatchet-loadtest-amd:
|
|
name: hatchet-loadtest
|
|
runs-on: ubicloud-standard-4
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Build
|
|
run: |
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/loadtest.dockerfile \
|
|
-t ghcr.io/hatchet-dev/hatchet/hatchet-loadtest:${{steps.tag_name.outputs.tag}}-amd64 \
|
|
--platform linux/amd64 \
|
|
.
|
|
- name: Push to GHCR
|
|
run: |
|
|
docker push ghcr.io/hatchet-dev/hatchet/hatchet-loadtest:${{steps.tag_name.outputs.tag}}-amd64
|
|
build-push-hatchet-loadtest-arm:
|
|
name: hatchet-loadtest
|
|
runs-on: ubicloud-standard-4-arm
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Build
|
|
run: |
|
|
DOCKER_BUILDKIT=1 docker build -f ./build/package/loadtest.dockerfile \
|
|
-t ghcr.io/hatchet-dev/hatchet/hatchet-loadtest:${{steps.tag_name.outputs.tag}}-arm64 \
|
|
--platform linux/arm64 \
|
|
.
|
|
- name: Push to GHCR
|
|
run: |
|
|
docker push ghcr.io/hatchet-dev/hatchet/hatchet-loadtest:${{steps.tag_name.outputs.tag}}-arm64
|
|
build-push-hatchet-loadtest:
|
|
name: Combine hatchet-loadtest
|
|
runs-on: ubicloud-standard-4
|
|
needs:
|
|
- build-push-hatchet-loadtest-amd
|
|
- build-push-hatchet-loadtest-arm
|
|
steps:
|
|
- name: Get tag name
|
|
id: tag_name
|
|
run: echo "tag=${GITHUB_TAG/refs\/tags\//}" >> $GITHUB_OUTPUT
|
|
env:
|
|
GITHUB_TAG: ${{ github.ref }}
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Login to GHCR
|
|
id: login-ghcr
|
|
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
|
|
- name: Pull amd64
|
|
run: docker pull ghcr.io/hatchet-dev/hatchet/hatchet-loadtest:${{steps.tag_name.outputs.tag}}-amd64
|
|
- name: Pull arm64
|
|
run: docker pull ghcr.io/hatchet-dev/hatchet/hatchet-loadtest:${{steps.tag_name.outputs.tag}}-arm64
|
|
- name: Combine
|
|
run: |
|
|
docker manifest create ghcr.io/hatchet-dev/hatchet/hatchet-loadtest:${{steps.tag_name.outputs.tag}} \
|
|
ghcr.io/hatchet-dev/hatchet/hatchet-loadtest:${{steps.tag_name.outputs.tag}}-amd64 \
|
|
ghcr.io/hatchet-dev/hatchet/hatchet-loadtest:${{steps.tag_name.outputs.tag}}-arm64
|
|
docker manifest push ghcr.io/hatchet-dev/hatchet/hatchet-loadtest:${{steps.tag_name.outputs.tag}}
|