|
@@ -5,9 +5,18 @@ on:
|
|
|
tags:
|
|
|
- 'v*.*.*'
|
|
|
|
|
|
+env:
|
|
|
+ REGISTRY: ghcr.io
|
|
|
+ IMAGE_NAME: ${{ github.repository }}
|
|
|
+
|
|
|
jobs:
|
|
|
- docker:
|
|
|
+ build-and-push-image:
|
|
|
runs-on: ubuntu-latest
|
|
|
+
|
|
|
+ permissions:
|
|
|
+ contents: read
|
|
|
+ packages: write
|
|
|
+
|
|
|
steps:
|
|
|
-
|
|
|
name: Checkout
|
|
@@ -30,7 +39,7 @@ jobs:
|
|
|
with:
|
|
|
# list of Docker images to use as base name for tags
|
|
|
images: |
|
|
|
- ${{ secrets.DOCKERHUB_USERNAME }}/${{ github.event.repository.name }}
|
|
|
+ ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
|
|
# generate Docker tags based on the following events/attributes
|
|
|
tags: |
|
|
|
type=semver,pattern={{version}}
|
|
@@ -47,8 +56,9 @@ jobs:
|
|
|
name: Login to DockerHub
|
|
|
uses: docker/login-action@v3
|
|
|
with:
|
|
|
- username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
|
- password: ${{ secrets.DOCKERHUB_TOKEN }}
|
|
|
+ registry: ${{ env.REGISTRY }}
|
|
|
+ username: ${{ github.actor }}
|
|
|
+ password: ${{ secrets.GITHUB_TOKEN }}
|
|
|
-
|
|
|
name: Build and push
|
|
|
id: docker_build
|