Files
telegram-shop/.gitea/workflows/release.yaml
NW 9eca348d57
Some checks failed
Release: ARM64 Docker Image / build-arm64 (push) Failing after 3s
ci: ARM64 release workflow (Gitea Actions, native arm64 runner on Orange Pi)
- Runs on tag push (v*) on arm64 runner (orange-pi-arm64, label: arm64)
- Native ARM64 docker build (no QEMU), consistent with prod Orange Pi Zero 2
- Best-effort push to Gitea Container Registry (git.softuniq.eu/telegram-market/telegram-shop)
- Falls back to saving image tarball if registry auth unavailable
2026-08-04 18:04:05 +01:00

53 lines
1.7 KiB
YAML

name: "Release: ARM64 Docker Image"
on:
push:
tags:
- "v*"
jobs:
build-arm64:
# Нативный ARM64 runner на Orange Pi Zero 2 (aarch64)
# Сборка без QEMU-эмуляции — быстрее и стабильнее для npm install / node-gyp
runs-on: arm64
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Extract tag
id: meta
run: |
TAG=${GITHUB_REF_NAME#v}
echo "version=$TAG" >> "$GITHUB_OUTPUT"
echo "image=git.softuniq.eu/telegram-market/telegram-shop" >> "$GITHUB_OUTPUT"
- name: Build ARM64 image
run: |
docker build \
--file ./Dockerfile \
--tag ${{ steps.meta.outputs.image }}:${{ steps.meta.outputs.version }} \
--tag ${{ steps.meta.outputs.image }}:latest \
.
- name: Log in to Gitea Container Registry (best effort)
id: login
continue-on-error: true
uses: docker/login-action@v3
with:
registry: git.softuniq.eu
username: ${{ github.actor }}
password: ${{ secrets.REGISTRY_TOKEN }}
- name: Push image to Gitea Container Registry
if: steps.login.outcome == 'success'
run: |
docker push ${{ steps.meta.outputs.image }}:${{ steps.meta.outputs.version }}
docker push ${{ steps.meta.outputs.image }}:latest
- name: Save image tarball
run: |
mkdir -p /tmp/release-artifacts
docker save ${{ steps.meta.outputs.image }}:${{ steps.meta.outputs.version }} \
-o /tmp/release-artifacts/telegram-shop-arm64-${{ steps.meta.outputs.version }}.tar
ls -la /tmp/release-artifacts/