Files
hatchet/.github/workflows/release.yaml
abelanger5 d9bcfda487 feat: dashboard container image (#937)
* feat: dashboard container image

* fix: build

* add release and pre-release

* forward cli flags to hatchet-api

* fix: make entrypoint executable

* hatchet-api path fix

* fix: hatchet-api path, again
2024-10-04 10:33:23 -04:00

99 lines
5.0 KiB
YAML

on:
release:
types: [released]
workflow_dispatch:
inputs:
tag:
description: "Tag to use for the release"
required: true
name: Release
jobs:
push-hatchet-server:
name: Push latest
runs-on: ubuntu-latest
steps:
- name: Get tag name
id: tag_name
run: |
if [ -z "${{ github.event.inputs.tag }}" ]; then
tag=${GITHUB_TAG/refs\/tags\//}
else
tag=${{ github.event.inputs.tag }}
fi
echo ::set-output name=tag::$tag
env:
GITHUB_TAG: ${{ github.ref }}
- name: Login to GHCR
id: login-ghcr
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
- name: Pull and push hatchet-api
run: |
docker pull ghcr.io/hatchet-dev/hatchet/hatchet-api:${{steps.tag_name.outputs.tag}}-arm64
docker pull ghcr.io/hatchet-dev/hatchet/hatchet-api:${{steps.tag_name.outputs.tag}}-amd64
docker manifest create ghcr.io/hatchet-dev/hatchet/hatchet-api:latest \
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:latest
- name: Pull and push hatchet-engine
run: |
docker pull ghcr.io/hatchet-dev/hatchet/hatchet-engine:${{steps.tag_name.outputs.tag}}-arm64
docker pull ghcr.io/hatchet-dev/hatchet/hatchet-engine:${{steps.tag_name.outputs.tag}}-amd64
docker manifest create ghcr.io/hatchet-dev/hatchet/hatchet-engine:latest \
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:latest
- name: Pull and push hatchet-admin
run: |
docker pull ghcr.io/hatchet-dev/hatchet/hatchet-admin:${{steps.tag_name.outputs.tag}}-arm64
docker pull ghcr.io/hatchet-dev/hatchet/hatchet-admin:${{steps.tag_name.outputs.tag}}-amd64
docker manifest create ghcr.io/hatchet-dev/hatchet/hatchet-admin:latest \
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:latest
- name: Pull and push hatchet-frontend
run: |
docker pull ghcr.io/hatchet-dev/hatchet/hatchet-frontend:${{steps.tag_name.outputs.tag}}-arm64
docker pull ghcr.io/hatchet-dev/hatchet/hatchet-frontend:${{steps.tag_name.outputs.tag}}-amd64
docker manifest create ghcr.io/hatchet-dev/hatchet/hatchet-frontend:latest \
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:latest
- name: Pull and push hatchet-migrate
run: |
docker pull ghcr.io/hatchet-dev/hatchet/hatchet-migrate:${{steps.tag_name.outputs.tag}}-arm64
docker pull ghcr.io/hatchet-dev/hatchet/hatchet-migrate:${{steps.tag_name.outputs.tag}}-amd64
docker manifest create ghcr.io/hatchet-dev/hatchet/hatchet-migrate:latest \
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:latest
- name: Pull and push hatchet-lite
run: |
docker pull ghcr.io/hatchet-dev/hatchet/hatchet-lite:${{steps.tag_name.outputs.tag}}-arm64
docker pull ghcr.io/hatchet-dev/hatchet/hatchet-lite:${{steps.tag_name.outputs.tag}}-amd64
docker manifest create ghcr.io/hatchet-dev/hatchet/hatchet-lite:latest \
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:latest
- name: Pull and push hatchet-dashboard
run: |
docker pull ghcr.io/hatchet-dev/hatchet/hatchet-dashboard:${{steps.tag_name.outputs.tag}}-arm64
docker pull ghcr.io/hatchet-dev/hatchet/hatchet-dashboard:${{steps.tag_name.outputs.tag}}-amd64
docker manifest create ghcr.io/hatchet-dev/hatchet/hatchet-dashboard:latest \
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:latest