sql-fun 0.1.0

SQL query/statement execution code generator
Documentation
name: github actions custom image publisher

on:
  push:
    branches: ["ci-image"]

permissions:
  contents: read
  packages: write

jobs:
  publish:
    runs-on: ubuntu-24.04
    env:
      IMAGE_CONTEXT: "./ci/github-actions/"
      DOCKER_FILE: "./ci/github-actions/Dockerfile"
      LOCAL_IMAGE_TAG: "ci-builder:local"
    steps:
      - uses: actions/checkout@v4

      - uses: docker/login-action@v3
        with:
          registry: ghcr.io
          username: ${{ github.actor }}
          password: ${{ secrets.GITHUB_TOKEN }}
      - name: Set up Buildx
        id: buildx
        uses: docker/setup-buildx-action@v3
        with:
          driver: docker-container

      - name: Build (load only)
        uses: docker/build-push-action@v6
        with:
          builder: ${{ steps.buildx.outputs.name }}
          context: ${{ env.IMAGE_CONTEXT }}
          file: ${{ env.DOCKER_FILE }}
          load: true
          tags: ${{ env.LOCAL_IMAGE_TAG }}
          cache-from: type=gha
          cache-to: type=gha,mode=max
          build-args: |
            SERENA_TAG=v0.1.4

      - name: Smoke test
        run: |
          docker run --rm "${LOCAL_IMAGE_TAG}" cargo --version
          docker run --rm "${LOCAL_IMAGE_TAG}" cargo deny --version
          docker run --rm "${LOCAL_IMAGE_TAG}" mdbook --help >/dev/null

      - name: publish
        id: build
        uses: docker/build-push-action@v6
        with:
          builder: ${{ steps.buildx.outputs.name }}
          context: ${{ env.IMAGE_CONTEXT }}
          file: ${{ env.DOCKER_FILE }}
          push: true
          tags: |
            ghcr.io/${{ github.repository_owner }}/ci-builder:ci-image
            ghcr.io/${{ github.repository_owner }}/ci-builder:sha-${{ github.sha }}
          cache-from: type=gha
          cache-to: type=gha,mode=max
          build-args: |
            SERENA_TAG=v0.1.4

      - name: Show digest
        run: echo "digest=${{ steps.build.outputs.digest }}"