144 lines
3.9 KiB
YAML
144 lines
3.9 KiB
YAML
labels:
|
|
ci: domain-linux-native
|
|
platform: linux/amd64
|
|
|
|
clone:
|
|
- name: git
|
|
image: plugin-git
|
|
settings:
|
|
lfs: false
|
|
# 要拿到 tag 才算得出开发版本号(ci/version.sh:自最近 tag 的提交数)
|
|
tags: true
|
|
|
|
when:
|
|
- event: push
|
|
branch: main
|
|
evaluate: 'CI_COMMIT_MESSAGE contains "[CI]"'
|
|
|
|
# 先等后端测试和前端构建都通过再出镜像(提交信息写 [SKIP TESTS] 只跳过后端测试)
|
|
depends_on:
|
|
- verify
|
|
- web-build
|
|
|
|
concurrency: 1
|
|
|
|
steps:
|
|
- name: build-linux-amd64-backend
|
|
image: bash
|
|
environment:
|
|
NUGET_PACKAGES: /home/justme/.nuget/packages
|
|
ZOT_REGISTRY: registry.oeo.one
|
|
ZOT_USERNAME: justme
|
|
ZOT_SECRET:
|
|
from_secret: zot_secret
|
|
RELEASE_API_URL: https://mo.oeo.one
|
|
RELEASE_SIGNING_KEY:
|
|
from_secret: release_signing_key
|
|
commands:
|
|
- bash ci/build-dev-image.sh backend
|
|
depends_on: []
|
|
|
|
- name: build-linux-amd64-agent
|
|
image: bash
|
|
environment:
|
|
ZOT_REGISTRY: registry.oeo.one
|
|
ZOT_USERNAME: justme
|
|
ZOT_SECRET:
|
|
from_secret: zot_secret
|
|
RELEASE_API_URL: https://mo.oeo.one
|
|
RELEASE_SIGNING_KEY:
|
|
from_secret: release_signing_key
|
|
commands:
|
|
- bash ci/build-dev-image.sh agent
|
|
depends_on: []
|
|
|
|
- name: build-linux-amd64-probe
|
|
image: bash
|
|
environment:
|
|
ZOT_REGISTRY: registry.oeo.one
|
|
ZOT_USERNAME: justme
|
|
ZOT_SECRET:
|
|
from_secret: zot_secret
|
|
RELEASE_API_URL: https://mo.oeo.one
|
|
RELEASE_SIGNING_KEY:
|
|
from_secret: release_signing_key
|
|
commands:
|
|
- bash ci/build-dev-image.sh probe
|
|
depends_on: []
|
|
|
|
# Build both node architectures in parallel; each multi-architecture index waits for both of its images.
|
|
- name: build-linux-arm64-agent
|
|
image: bash
|
|
environment:
|
|
ZOT_REGISTRY: registry.oeo.one
|
|
ZOT_USERNAME: justme
|
|
ZOT_SECRET:
|
|
from_secret: zot_secret
|
|
RELEASE_API_URL: https://mo.oeo.one
|
|
RELEASE_SIGNING_KEY:
|
|
from_secret: release_signing_key
|
|
commands:
|
|
- bash ci/build-dev-image.sh agent arm64
|
|
depends_on: []
|
|
|
|
- name: build-linux-arm64-probe
|
|
image: bash
|
|
environment:
|
|
ZOT_REGISTRY: registry.oeo.one
|
|
ZOT_USERNAME: justme
|
|
ZOT_SECRET:
|
|
from_secret: zot_secret
|
|
RELEASE_API_URL: https://mo.oeo.one
|
|
RELEASE_SIGNING_KEY:
|
|
from_secret: release_signing_key
|
|
commands:
|
|
- bash ci/build-dev-image.sh probe arm64
|
|
depends_on: []
|
|
|
|
- name: publish-linux-agent-multiarch
|
|
image: bash
|
|
environment:
|
|
ZOT_REGISTRY: registry.oeo.one
|
|
ZOT_USERNAME: justme
|
|
ZOT_SECRET:
|
|
from_secret: zot_secret
|
|
RELEASE_API_URL: https://mo.oeo.one
|
|
RELEASE_SIGNING_KEY:
|
|
from_secret: release_signing_key
|
|
commands:
|
|
- bash ci/publish-dev-node-index.sh agent
|
|
depends_on:
|
|
- build-linux-amd64-agent
|
|
- build-linux-arm64-agent
|
|
|
|
- name: publish-linux-probe-multiarch
|
|
image: bash
|
|
environment:
|
|
ZOT_REGISTRY: registry.oeo.one
|
|
ZOT_USERNAME: justme
|
|
ZOT_SECRET:
|
|
from_secret: zot_secret
|
|
RELEASE_API_URL: https://mo.oeo.one
|
|
RELEASE_SIGNING_KEY:
|
|
from_secret: release_signing_key
|
|
commands:
|
|
- bash ci/publish-dev-node-index.sh probe
|
|
depends_on:
|
|
- build-linux-amd64-probe
|
|
- build-linux-arm64-probe
|
|
|
|
# 慢的端到端测试:等 Backend 和两个节点多架构索引都推送完再跑,不和 NativeAOT 编译抢内存。
|
|
# 它失败不影响已经推出去的镜像,只让流水线变红。没带 [CI] 的推送由 e2e.yml 跑。
|
|
- name: backend-e2e-tests
|
|
image: bash
|
|
when:
|
|
- evaluate: 'not (CI_COMMIT_MESSAGE contains "[SKIP TESTS]")'
|
|
environment:
|
|
NUGET_PACKAGES: /home/justme/.nuget/packages
|
|
commands:
|
|
- bash ci/verify-backend.sh slow
|
|
depends_on:
|
|
- build-linux-amd64-backend
|
|
- publish-linux-agent-multiarch
|
|
- publish-linux-probe-multiarch
|