decentralised message store

feat: ci build and push flow

serenity 35b34a9f 42ae64c5

Changed files
+47
.github
workflows
+47
.github/workflows/push-image.yaml
···
+
name: Build and Push Docker Image
+
+
on:
+
push:
+
tags:
+
- "v*"
+
+
env:
+
REGISTRY: ghcr.io
+
IMAGE_NAME: ${{ github.repository }}
+
+
jobs:
+
build-and-push:
+
runs-on: ubuntu-latest
+
permissions:
+
contents: read
+
packages: write
+
+
steps:
+
- name: Checkout repository
+
uses: actions/checkout@v4
+
+
- name: Log in to GitHub Container Registry
+
uses: docker/login-action@v3
+
with:
+
registry: ${{ env.REGISTRY }}
+
username: ${{ github.actor }}
+
password: ${{ secrets.GITHUB_TOKEN }}
+
+
- name: Extract metadata (tags, labels)
+
id: meta
+
uses: docker/metadata-action@v5
+
with:
+
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
+
tags: |
+
type=semver,pattern={{version}}
+
type=semver,pattern={{major}}.{{minor}}
+
type=semver,pattern={{major}}
+
type=raw,value=latest
+
+
- name: Build and push Docker image
+
uses: docker/build-push-action@v5
+
with:
+
context: .
+
push: true
+
tags: ${{ steps.meta.outputs.tags }}
+
labels: ${{ steps.meta.outputs.labels }}