name: Docker Image - Beta

on:
  workflow_dispatch:
    inputs:
      branch:
        description: 'Branch to create image off.'
        required: true
        default: 'ai-beta'
      tag:
        description: 'Name of the docker tag to create.'
        required: true
        default: 'ai-beta'

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3.5.3
        with:
          fetch-depth: 0
          ref: ${{ github.event.inputs.branch || 'ai-beta' }}

      - uses: docker/setup-qemu-action@v2
      - uses: docker/setup-buildx-action@v2

      - name: Login to DockerHub
        uses: docker/login-action@v2.2.0
        with:
          username: ${{ secrets.DOCKER_USERNAME }}
          password: ${{ secrets.DOCKER_PASSWORD }}

      - name: Build and push
        uses: docker/build-push-action@v4.1.1
        with:
          context: .
          file: ./docker/images/n8n-custom/Dockerfile
          build-args: |
            N8N_RELEASE_TYPE=beta
          platforms: linux/amd64,linux/arm64
          provenance: false
          push: true
          tags: ${{ secrets.DOCKER_USERNAME }}/n8n:${{ github.event.inputs.tag || 'ai-beta' }}
          no-cache: true
