name: Build Docker Image

on:
  push:
    branches:
      - main

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-go@v5
        with:
          go-version: '^1.22.5'
      - name: Login to GitHub Container Registry
        uses: docker/login-action@v3
        with:
          registry: git.wittern.io
          username: ${{ github.actor }}
          password: ${{ secrets.DOCKER_PASSWORD }}
      - name: Build the Docker image
        run: |
          go install github.com/a-h/templ/cmd/templ@latest
          templ generate
          docker build . --file Dockerfile --tag git.wittern.io/public/echo-todos:latest
          docker push git.wittern.io/public/echo-todos