generated from phundrak/rust-poem-openapi-template
66 lines
2.0 KiB
YAML
66 lines
2.0 KiB
YAML
name: Publish Docker image
|
|
on:
|
|
push:
|
|
branches:
|
|
- 'main'
|
|
- 'develop'
|
|
tags:
|
|
- 'v*'
|
|
pull_request:
|
|
branches:
|
|
- 'main'
|
|
- 'develop'
|
|
|
|
jobs:
|
|
publish:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Log in to Docker registry
|
|
uses: docker/login-action@v3.3.0
|
|
with:
|
|
username: ${{ secrets.DOCKER_REGISTRY_USERNAME }}
|
|
password: ${{ secrets.DOCKER_REGISTRY_PASSWORD }}
|
|
registry: ${{ vars.REGISTRY }}
|
|
- uses: cachix/install-nix-action@v30
|
|
with:
|
|
nix_path: nixpkgs=channel:nixos-unstable
|
|
enable_kvm: false
|
|
# extra_nix_config: "system-features = benchmark big-parallel kvm"
|
|
- name: Test home
|
|
run: |
|
|
ls -ahl /homeless-shelter
|
|
- name: Build Docker image
|
|
env:
|
|
HOME: ${{ gitea.workspace }}
|
|
run: nix develop --command -- just backend build-docker
|
|
- name: Load Docker Image
|
|
run: |
|
|
docker load < ./gejdr-backend/result
|
|
- name: Docker Metadata action
|
|
uses: docker/metadata-action@v5.6.1
|
|
id: meta
|
|
with:
|
|
image: gejdr-backend:latest
|
|
tags:
|
|
type=ref,event=branch
|
|
type=ref,event=pr
|
|
type=semver,pattern={{version}}
|
|
type=semver,pattern={{major}}.{{minor}}
|
|
type=semver,pattern={{major}}
|
|
type=sha
|
|
labels: |
|
|
org.opencontainers.image.title=Backend GéJDR
|
|
org.opencontainers.image.description=Backend for GéJDR
|
|
org.opencontainers.image.vendor=Lucien Cartier-Tilet <lucien@phundrak.com>
|
|
- name: Retag and publish Docker image for backend
|
|
env:
|
|
TAGS: ${{ steps.meta.outputs.tags }}
|
|
run: |
|
|
for tag in ${{ steps.meta.outputs.tags }}; do
|
|
newtag=${{ vars.REGISTRY }}/$tag
|
|
echo $newtag
|
|
# docker tag gejdr-backend:latest $newtag
|
|
# docker push $newtag
|
|
done
|