name: Build and publish Docker image on tag

on:
  push:
    tags:
      - 'v*.*.*'

env:
  DOCKER_CLI_EXPERIMENTAL: enabled

jobs:
  build:
    name: Build Docker image
    runs-on: ubuntu-22.04
    steps:
      - name: Set VERSION
        run: echo "VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV

      - name: Login to Docker Hub
        run: echo "${{ secrets.DOCKER_PASSWORD }}" | docker login -u "${{ secrets.DOCKER_USERNAME }}" --password-stdin

      - name: Checkout project
        uses: actions/checkout@v2

      - name: Set up QEMU
        uses: docker/setup-qemu-action@v1

      - name: Setup Docker buildx action
        uses: docker/setup-buildx-action@v1

      - name: Run Docker buildx
        run: |
          docker buildx build \
          --platform linux/amd64,linux/arm64 \
          --tag ${{ secrets.DOCKER_HUB_USER }}/umbrel-bitcoin:$VERSION \
          --push .