From 82bcffc49890ccd63988566278f63fdfe3857330 Mon Sep 17 00:00:00 2001 From: Luke Tainton Date: Sat, 13 Jul 2024 12:25:09 +0100 Subject: [PATCH] Move to shared workflows --- .github/workflows/create_release.yml | 36 ---------------- .github/workflows/docker_publish.yml | 61 ---------------------------- .github/workflows/release.yml | 17 ++++++++ 3 files changed, 17 insertions(+), 97 deletions(-) delete mode 100644 .github/workflows/create_release.yml delete mode 100644 .github/workflows/docker_publish.yml create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/create_release.yml b/.github/workflows/create_release.yml deleted file mode 100644 index 0c95b1b..0000000 --- a/.github/workflows/create_release.yml +++ /dev/null @@ -1,36 +0,0 @@ -name: Create Release -on: - workflow_dispatch: - schedule: - - cron: "0 9 * * *" - -jobs: - create_release: - name: Create Release - runs-on: ubuntu-latest - outputs: - new_tag: ${{ steps.tag_version.outputs.new_tag }} - steps: - - uses: actions/checkout@v4 - - - name: Bump version and push tag - id: tag_version - uses: mathieudutour/github-tag-action@v6.2 - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - default_bump: minor - - - name: Create a GitHub release - uses: ncipollo/release-action@v1 - with: - tag: ${{ steps.tag_version.outputs.new_tag }} - name: ${{ steps.tag_version.outputs.new_tag }} - body: ${{ steps.tag_version.outputs.changelog }} - generateReleaseNotes: true - - create_docker: - name: Create Docker Image - needs: create_release - uses: luketainton/roboluke-tasks/.github/workflows/docker_publish.yml@main - with: - release: ${{ needs.create_release.outputs.new_tag }} diff --git a/.github/workflows/docker_publish.yml b/.github/workflows/docker_publish.yml deleted file mode 100644 index 7b02506..0000000 --- a/.github/workflows/docker_publish.yml +++ /dev/null @@ -1,61 +0,0 @@ -name: Publish Docker Image - -on: - workflow_call: - inputs: - release: - required: true - type: string - -jobs: - publish: - name: Publish Docker image - runs-on: ubuntu-latest - permissions: - packages: write - contents: read - attestations: write - id-token: write - steps: - - name: Check out the repo - uses: actions/checkout@v4 - with: - ref: ${{ inputs.release }} - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - - - name: Log in to GitHub Container Registry - uses: docker/login-action@0d4c9c5ea7693da7b068278f7b52bda2a190a446 - with: - registry: ghcr.io - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} - - - name: Extract metadata (tags, labels) for Docker - id: meta - uses: docker/metadata-action@a64d0487d7069df33b279515d35d60fa80e2ea62 - with: - images: | - ghcr.io/${{ github.repository }} - tags: | - type=semver,pattern=v{{version}},value=${{ inputs.release }} - - - name: Build and push Docker image - id: push - uses: docker/build-push-action@1a162644f9a7e87d8f4b053101d1d9a712edc18c - with: - context: . - push: true - # provenance: mode=max - labels: ${{ steps.meta.outputs.labels }} - tags: | - ghcr.io/${{ github.repository }}:latest - ghcr.io/${{ github.repository }}:${{ inputs.release }} - - - name: Generate artifact attestation - uses: actions/attest-build-provenance@v1 - with: - subject-name: ghcr.io/${{ github.repository }} - subject-digest: ${{ steps.push.outputs.digest }} - push-to-registry: true diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..dc8e260 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,17 @@ +name: Release +on: + workflow_dispatch: + schedule: + - cron: "0 9 * * *" + +jobs: + create_release: + name: Create Release + uses: luketainton/gha-workflows/.github/workflows/create-release.yml@main + + create_docker: + name: Create Docker Image + needs: create_release + uses: luketainton/gha-workflows/.github/workflows/build-push-attest-docker.yml@main + with: + release: ${{ needs.create_release.outputs.release_name }}