mirror of
https://github.com/MODSetter/SurfSense.git
synced 2026-04-25 08:46:22 +02:00
Updates the GitHub Actions workflow (`.github/workflows/docker-publish.yml`) to build and push Docker images for both `linux/amd64` and `linux/arm64` architectures. The `platforms` attribute has been added to the `docker/build-push-action` step for both the backend and frontend jobs. This ensures that you on different CPU architectures can use the published images from ghcr.io.
76 lines
2.4 KiB
YAML
76 lines
2.4 KiB
YAML
name: Docker Publish
|
|
|
|
on:
|
|
push:
|
|
branches: [ "main" ]
|
|
|
|
jobs:
|
|
build_and_push_backend:
|
|
runs-on: ubuntu-latest
|
|
permissions:
|
|
contents: read
|
|
packages: write
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v3
|
|
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v3
|
|
|
|
- name: Log in to GitHub Container Registry
|
|
uses: docker/login-action@v3
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ github.actor }}
|
|
password: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
- name: Build and push backend image
|
|
uses: docker/build-push-action@v5
|
|
with:
|
|
context: ./surfsense_backend
|
|
file: ./surfsense_backend/Dockerfile
|
|
push: true
|
|
tags: ghcr.io/${{ github.repository_owner }}/surfsense_backend:${{ github.sha }}
|
|
platforms: linux/amd64,linux/arm64
|
|
labels: |
|
|
org.opencontainers.image.source=${{ github.repositoryUrl }}
|
|
org.opencontainers.image.created=${{ fromJSON(steps.meta.outputs.json).labels['org.opencontainers.image.created'] }}
|
|
org.opencontainers.image.revision=${{ github.sha }}
|
|
|
|
build_and_push_frontend:
|
|
runs-on: ubuntu-latest
|
|
permissions:
|
|
contents: read
|
|
packages: write
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v3
|
|
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v3
|
|
|
|
- name: Log in to GitHub Container Registry
|
|
uses: docker/login-action@v3
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ github.actor }}
|
|
password: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
- name: Build and push frontend image
|
|
uses: docker/build-push-action@v5
|
|
with:
|
|
context: ./surfsense_web
|
|
file: ./surfsense_web/Dockerfile
|
|
push: true
|
|
tags: ghcr.io/${{ github.repository_owner }}/surfsense_web:${{ github.sha }}
|
|
platforms: linux/amd64,linux/arm64
|
|
labels: |
|
|
org.opencontainers.image.source=${{ github.repositoryUrl }}
|
|
org.opencontainers.image.created=${{ fromJSON(steps.meta.outputs.json).labels['org.opencontainers.image.created'] }}
|
|
org.opencontainers.image.revision=${{ github.sha }}
|