-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Use Github Actions to build and publish the docker image
This commit reverts #21 so we use Github Actions again to build and publish the docker images, now that some of the actions related to building docker images have been whitelisted in the ThoughtMachine org. The docker images built as part of a release are published to ghcr.
- Loading branch information
1 parent
7ec6b28
commit dd01707
Showing
2 changed files
with
79 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
name: Publish Docker 🐳 images 📦 to GitHub Container Registry | ||
|
||
on: | ||
push: | ||
tags: | ||
- '**' | ||
|
||
jobs: | ||
build-and-publish-to-ghcr: | ||
# Explicitly grant the `secrets.GITHUB_TOKEN` permissions. | ||
permissions: | ||
# Grant the ability to write to GitHub Packages (push Docker images to | ||
# GitHub Container Registry). | ||
packages: write | ||
name: Build and publish Docker 🐳 images 📦 to GitHub Container Registry | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout main | ||
uses: actions/checkout@v3 | ||
with: | ||
fetch-depth: 0 | ||
|
||
- name: Extract metadata (tags, labels) for Docker | ||
id: meta | ||
uses: docker/metadata-action@v5 | ||
with: | ||
images: ghcr.io/${{ github.repository }} | ||
|
||
- name: Write version | ||
run: ./scripts/insert-version-pyproject.sh ${{github.ref_name}} | ||
|
||
- name: Set up QEMU | ||
uses: docker/setup-qemu-action@v3 | ||
|
||
- name: Set up Docker Buildx | ||
uses: docker/setup-buildx-action@v3 | ||
|
||
- name: Login to GitHub Container Registry | ||
uses: docker/login-action@v3 | ||
with: | ||
registry: ghcr.io | ||
# This is the user that triggered the Workflow. In this case, it will | ||
# either be the user whom created the Release or manually triggered | ||
# the workflow_dispatch. | ||
username: ${{ github.actor }} | ||
# `secrets.GITHUB_TOKEN` is a secret that's automatically generated by | ||
# GitHub Actions at the start of a workflow run to identify the job. | ||
# This is used to authenticate against GitHub Container Registry. | ||
# See https://docs.github.com/en/actions/security-guides/automatic-token-authentication#about-the-github_token-secret | ||
# for more detailed information. | ||
password: ${{ secrets.GITHUB_TOKEN }} | ||
|
||
- name: Build and push image | ||
uses: docker/build-push-action@v5 | ||
with: | ||
push: true # push the image to ghcr | ||
tags: > | ||
ghcr.io/thought-machine/generic-k8s-webhook:${{github.sha}}, | ||
ghcr.io/thought-machine/generic-k8s-webhook:${{github.ref_name}} | ||
labels: ${{ steps.meta.outputs.labels }} | ||
platforms: linux/amd64,linux/arm64 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters