Skip to content

Publish CPU Image

Publish CPU Image #7

name: Publish CPU Image
on:
workflow_dispatch:
jobs:
push_to_registry:
name: Build image
runs-on: ubuntu-22.04
if: ${{ github.repository_owner == 'nextcloud' }} # REPLACE THIS WITH YOUR ORGANIZATION NAME
permissions:
packages: write
contents: read
steps:
- name: Check out the repo
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: Available platforms
run: echo ${{ steps.buildx.outputs.platforms }}
- name: Install xmlstarlet
run: sudo apt-get update && sudo apt-get install -y xmlstarlet
- name: Extract version from XML
id: extract_version
run: |
VERSION=$(xmlstarlet sel -t -v "//image-tag" appinfo/info.xml)
echo "VERSION=$VERSION" >> $GITHUB_ENV
- name: Log version
run: |
echo "Extracted version: ${{ env.VERSION }}"
- name: Build container image
uses: docker/build-push-action@v5
with:
no-cache: true
push: true
context: .
platforms: linux/amd64,linux/arm64
file: Dockerfile
tags: ghcr.io/${{ github.repository }}:${{ env.VERSION }}-cpu
build-args: |
BUILD_TYPE=cpu