diff options
Diffstat (limited to 'templates/rust/.github/workflows/publish.yml')
| -rw-r--r-- | templates/rust/.github/workflows/publish.yml | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/templates/rust/.github/workflows/publish.yml b/templates/rust/.github/workflows/publish.yml new file mode 100644 index 0000000..1e81bb6 --- /dev/null +++ b/templates/rust/.github/workflows/publish.yml @@ -0,0 +1,46 @@ +name: Publish Docker Image + +on: + push: + branches: + - master + tags: + - "*" + workflow_dispatch: + +env: + REGISTRY: ghcr.io + IMAGE: my-orgname/my-packagename + +permissions: + contents: read + packages: write + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: docker/metadata-action@v5 + id: meta + with: + images: ${{ env.REGISTRY }}/${{ env.IMAGE }} + tags: | + type=ref,event=branch + type=semver,pattern={{version}} + type=semver,pattern={{major}}.{{minor}} + type=semver,pattern={{major}} + type=sha + - uses: docker/login-action@v3 + with: + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + registry: ${{ env.REGISTRY }} + + - uses: docker/setup-buildx-action@v3 + - uses: docker/build-push-action@v6 + with: + context: . + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} |
