!REMOVE Force build phoebe/hotfix/0.11.1/divide-by-zero #1292
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Docker Image | |
on: | |
push: | |
branches: | |
- master | |
- staging | |
- dev | |
- phoebe/hotfix/0.11.1/divide-by-zero | |
tags: | |
- 'v*' | |
jobs: | |
docker-amd64: | |
runs-on: bare-metal | |
name: Build DockerHub AMD64 Container | |
steps: | |
- name: Install jq | |
run: sudo apt-get install jq -y | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Docker meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
clockworklabs/spacetimedb | |
tags: | | |
type=ref,event=branch,prefix=branch- | |
type=sha,prefix=commit- | |
type=ref,event=tag | |
type=sha,suffix=-amd64 | |
flavor: | | |
latest=false | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Cache Docker layers | |
uses: actions/cache@v2 | |
with: | |
path: /tmp/.buildx-cache | |
key: ${{ runner.os }}-buildx-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-buildx- | |
- name: Login to DockerHub | |
uses: docker/login-action@v2 | |
with: | |
username: ${{ vars.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
context: . | |
file: crates/standalone/Dockerfile | |
push: ${{ github.event_name != 'pull_request' }} | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
cache-from: type=local,src=/tmp/.buildx-cache | |
cache-to: type=local,dest=/tmp/.buildx-cache-new | |
platforms: linux/amd64 | |
- name: Merge images | |
run: | | |
./tools/merge-docker-images.sh $GITHUB_SHA | |
# This ugly bit is necessary if you don't want your cache to grow forever | |
# until it hits GitHub's limit of 5GB. | |
# Temp fix | |
# https://github.com/docker/build-push-action/issues/252 | |
# https://github.com/moby/buildkit/issues/1896 | |
- name: Move cache | |
run: | | |
rm -rf /tmp/.buildx-cache | |
mv /tmp/.buildx-cache-new /tmp/.buildx-cache | |
docker-arm64: | |
runs-on: arm-runner | |
name: Build DockerHub ARM64 Container | |
steps: | |
- name: Install jq | |
run: sudo apt-get install jq -y | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Docker meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
clockworklabs/spacetimedb | |
tags: | | |
type=ref,event=branch,prefix=branch- | |
type=sha,prefix=commit- | |
type=ref,event=tag | |
type=sha,suffix=-arm64 | |
flavor: | | |
latest=false | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Cache Docker layers | |
uses: actions/cache@v2 | |
with: | |
path: /tmp/.buildx-cache | |
key: ${{ runner.os }}-buildx-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-buildx- | |
- name: Login to DockerHub | |
uses: docker/login-action@v2 | |
with: | |
username: ${{ vars.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
context: . | |
file: crates/standalone/Dockerfile | |
push: ${{ github.event_name != 'pull_request' }} | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
cache-from: type=local,src=/tmp/.buildx-cache | |
cache-to: type=local,dest=/tmp/.buildx-cache-new | |
platforms: linux/arm64/v8 | |
- name: Merge images | |
run: | | |
./tools/merge-docker-images.sh $GITHUB_SHA | |
# This ugly bit is necessary if you don't want your cache to grow forever | |
# until it hits GitHub's limit of 5GB. | |
# Temp fix | |
# https://github.com/docker/build-push-action/issues/252 | |
# https://github.com/moby/buildkit/issues/1896 | |
- name: Move cache | |
run: | | |
rm -rf /tmp/.buildx-cache | |
mv /tmp/.buildx-cache-new /tmp/.buildx-cache |