bbf81d6ac5
A single-workflow with steps spanning amd64 and arm64 shares one PVC. The clone step binds the PV to whichever arch ran first, and the other arch's pod is then permanently Unschedulable (node affinity mismatch on the PV). Splitting into separate workflow files gives each arch its own clone, its own PVC, and its own node binding.
38 lines
970 B
YAML
38 lines
970 B
YAML
# Build flake-hub packages for aarch64-linux and push to attic.
|
|
# Separate workflow per arch — see amd64.yaml for rationale.
|
|
|
|
when:
|
|
- event: push
|
|
branch: main
|
|
|
|
clone:
|
|
- name: clone
|
|
image: woodpeckerci/plugin-git
|
|
environment:
|
|
CI_NETRC_MACHINE: git.oleks.space
|
|
CI_NETRC_USERNAME: oleks
|
|
CI_NETRC_PASSWORD:
|
|
from_secret: gitea_clone_token
|
|
PLUGIN_TAGS: "false"
|
|
PLUGIN_DEPTH: "1"
|
|
|
|
steps:
|
|
- name: build-arm64
|
|
image: git.oleks.space/oleks/nix-ci:latest
|
|
environment:
|
|
ATTIC_TOKEN:
|
|
from_secret: attic_token
|
|
GITEA_CLONE_TOKEN:
|
|
from_secret: gitea_clone_token
|
|
backend_options:
|
|
kubernetes:
|
|
nodeSelector:
|
|
kubernetes.io/arch: arm64
|
|
labels:
|
|
commit-tag: "${CI_COMMIT_TAG}"
|
|
commit-branch: "${CI_COMMIT_BRANCH}"
|
|
pipeline-number: "${CI_PIPELINE_NUMBER}"
|
|
commands:
|
|
- sh ci/setup.sh
|
|
- python3 ci/build.py aarch64-linux
|