feat: expand ci artifact catalog

This commit is contained in:
Codex
2026-05-20 01:20:03 +00:00
parent e0d38d7172
commit 5bb44c9a30
11 changed files with 810 additions and 216 deletions
+217 -108
View File
@@ -1,7 +1,7 @@
{
"schemaVersion": 1,
"schemaVersion": 2,
"kind": "ci-artifact-catalog",
"purpose": "CI artifact catalog only. This file describes build inputs and image artifact naming; it does not describe runtime topology and does not replace deploy.json.",
"purpose": "CI artifact catalog only. This file describes build inputs and image artifact naming; it does not describe runtime topology and does not replace deploy.json, config.json, or runtime manifests.",
"summaryContract": {
"requiredOnSuccess": [
"serviceId",
@@ -27,7 +27,7 @@
"defaults": {
"producer": "D601 Tekton CI",
"registry": "127.0.0.1:5000",
"tag": "{{sourceCommit}}",
"tagTemplate": "{{sourceCommit}}",
"mutableTagsAllowed": false,
"runtimeFieldsForbidden": [
"providerId",
@@ -41,127 +41,236 @@
"volumes"
]
},
"upstreamImageConsumers": [
{
"serviceId": "filebrowser",
"source": "upstream-image",
"upstreamImageRef": "docker.io/filebrowser/filebrowser:v2.63.3",
"upstreamSourceRepo": "https://github.com/filebrowser/filebrowser",
"upstreamSourceRevision": "ca5e249e3c0c94159c2136a0cd431a424eb18472",
"digestPin": {
"required": true,
"status": "pending-network-verification",
"expectedRefShape": "docker.io/filebrowser/filebrowser@sha256:<manifest-digest>"
},
"mirrorStrategy": {
"mode": "mirror-after-digest-verification",
"targetRepository": "127.0.0.1:5000/upstream/filebrowser/filebrowser",
"targetDigestRefShape": "127.0.0.1:5000/upstream/filebrowser/filebrowser@sha256:<manifest-digest>"
},
"ciBuild": {
"dockerfileBuild": false,
"publishCommand": null,
"reason": "third-party upstream image; CD may only pull a verified digest or mirror digest"
},
"pullOnlyCdValidation": [
"resolve tag to upstream manifest digest before mirroring or rollout",
"pull by digest or from the digest-verified local mirror",
"verify container image id/digest and OCI labels report filebrowser 2.63.3 / ca5e249e3c0c94159c2136a0cd431a424eb18472",
"verify provider-private File Browser health through the UniDesk microservice proxy",
"do not run docker build, docker compose up --build, or a CI Dockerfile producer"
]
},
{
"serviceId": "filebrowser-d601",
"source": "upstream-image",
"upstreamImageRef": "docker.io/filebrowser/filebrowser:v2.63.3",
"upstreamSourceRepo": "https://github.com/filebrowser/filebrowser",
"upstreamSourceRevision": "ca5e249e3c0c94159c2136a0cd431a424eb18472",
"digestPin": {
"required": true,
"status": "pending-network-verification",
"expectedRefShape": "docker.io/filebrowser/filebrowser@sha256:<manifest-digest>"
},
"mirrorStrategy": {
"mode": "mirror-after-digest-verification",
"targetRepository": "127.0.0.1:5000/upstream/filebrowser/filebrowser",
"targetDigestRefShape": "127.0.0.1:5000/upstream/filebrowser/filebrowser@sha256:<manifest-digest>"
},
"ciBuild": {
"dockerfileBuild": false,
"publishCommand": null,
"reason": "third-party upstream image; CD may only pull a verified digest or mirror digest"
},
"pullOnlyCdValidation": [
"resolve tag to upstream manifest digest before mirroring or rollout",
"pull by digest or from the digest-verified local mirror",
"verify container image id/digest and OCI labels report filebrowser 2.63.3 / ca5e249e3c0c94159c2136a0cd431a424eb18472",
"verify provider-private File Browser health through the UniDesk microservice proxy",
"do not run docker build, docker compose up --build, or a CI Dockerfile producer"
]
}
],
"artifacts": [
{
"serviceId": "baidu-netdisk",
"sourceRepo": "https://github.com/pikasTech/unidesk",
"dockerfile": "src/components/microservices/baidu-netdisk/Dockerfile",
"imageRepository": "unidesk/baidu-netdisk",
"imageRef": "127.0.0.1:5000/unidesk/baidu-netdisk:{{sourceCommit}}",
"digestRef": "127.0.0.1:5000/unidesk/baidu-netdisk@{{digest}}"
},
{
"serviceId": "decision-center",
"sourceRepo": "https://github.com/pikasTech/unidesk",
"dockerfile": "src/components/microservices/decision-center/Dockerfile",
"imageRepository": "unidesk/decision-center",
"imageRef": "127.0.0.1:5000/unidesk/decision-center:{{sourceCommit}}",
"digestRef": "127.0.0.1:5000/unidesk/decision-center@{{digest}}",
"publishCommand": "bun scripts/cli.ts ci publish-user-service --service decision-center --commit <full-sha>"
"serviceId": "backend-core",
"kind": "source-build",
"status": "supported",
"producer": "ci publish-backend-core",
"source": {
"repo": "https://github.com/pikasTech/unidesk",
"dockerfile": "src/components/backend-core/Dockerfile"
},
"image": {
"repository": "unidesk/backend-core"
},
"notes": "Rust backend-core image creation is CI producer only. It is limited to dev image validation and artifact publication; this catalog does not authorize prod deployment verification."
},
{
"serviceId": "frontend",
"sourceRepo": "https://github.com/pikasTech/unidesk",
"dockerfile": "src/components/frontend/Dockerfile",
"imageRepository": "unidesk/frontend",
"imageRef": "127.0.0.1:5000/unidesk/frontend:{{sourceCommit}}",
"digestRef": "127.0.0.1:5000/unidesk/frontend@{{digest}}"
"kind": "source-build",
"status": "supported",
"producer": "ci publish-user-service",
"source": {
"repo": "https://github.com/pikasTech/unidesk",
"dockerfile": "src/components/frontend/Dockerfile"
},
"image": {
"repository": "unidesk/frontend"
}
},
{
"serviceId": "baidu-netdisk",
"kind": "source-build",
"status": "supported",
"producer": "ci publish-user-service",
"source": {
"repo": "https://github.com/pikasTech/unidesk",
"dockerfile": "src/components/microservices/baidu-netdisk/Dockerfile"
},
"image": {
"repository": "unidesk/baidu-netdisk"
}
},
{
"serviceId": "decision-center",
"kind": "source-build",
"status": "supported",
"producer": "ci publish-user-service",
"source": {
"repo": "https://github.com/pikasTech/unidesk",
"dockerfile": "src/components/microservices/decision-center/Dockerfile"
},
"image": {
"repository": "unidesk/decision-center"
}
},
{
"serviceId": "project-manager",
"sourceRepo": "https://github.com/pikasTech/unidesk",
"dockerfile": "src/components/microservices/project-manager/Dockerfile",
"imageRepository": "unidesk/project-manager",
"imageRef": "127.0.0.1:5000/unidesk/project-manager:{{sourceCommit}}",
"digestRef": "127.0.0.1:5000/unidesk/project-manager@{{digest}}",
"publishCommand": "bun scripts/cli.ts ci publish-user-service --service project-manager --commit <full-sha>"
"kind": "source-build",
"status": "supported",
"producer": "ci publish-user-service",
"source": {
"repo": "https://github.com/pikasTech/unidesk",
"dockerfile": "src/components/microservices/project-manager/Dockerfile"
},
"image": {
"repository": "unidesk/project-manager"
}
},
{
"serviceId": "oa-event-flow",
"sourceRepo": "https://github.com/pikasTech/unidesk",
"dockerfile": "src/components/microservices/oa-event-flow/Dockerfile",
"imageRepository": "unidesk/oa-event-flow",
"imageRef": "127.0.0.1:5000/unidesk/oa-event-flow:{{sourceCommit}}",
"digestRef": "127.0.0.1:5000/unidesk/oa-event-flow@{{digest}}",
"publishCommand": "bun scripts/cli.ts ci publish-user-service --service oa-event-flow --commit <full-sha>"
"kind": "source-build",
"status": "supported",
"producer": "ci publish-user-service",
"source": {
"repo": "https://github.com/pikasTech/unidesk",
"dockerfile": "src/components/microservices/oa-event-flow/Dockerfile"
},
"image": {
"repository": "unidesk/oa-event-flow"
}
},
{
"serviceId": "todo-note",
"kind": "source-build",
"status": "supported",
"producer": "ci publish-user-service",
"source": {
"repo": "https://gitee.com/Lyon1998/todo_note",
"dockerfile": "Dockerfile"
},
"image": {
"repository": "unidesk/todo-note"
}
},
{
"serviceId": "code-queue-mgr",
"sourceRepo": "https://github.com/pikasTech/unidesk",
"dockerfile": "src/components/microservices/code-queue-mgr/Dockerfile",
"imageRepository": "unidesk/code-queue-mgr",
"imageRef": "127.0.0.1:5000/unidesk/code-queue-mgr:{{sourceCommit}}",
"digestRef": "127.0.0.1:5000/unidesk/code-queue-mgr@{{digest}}",
"publishCommand": "bun scripts/cli.ts ci publish-user-service --service code-queue-mgr --commit <full-sha>"
"kind": "source-build",
"status": "supported",
"producer": "ci publish-user-service",
"source": {
"repo": "https://github.com/pikasTech/unidesk",
"dockerfile": "src/components/microservices/code-queue-mgr/Dockerfile"
},
"image": {
"repository": "unidesk/code-queue-mgr"
},
"notes": "Main-server internal sidecar artifact producer. Dev artifact consumer validation is supported; prod live apply is supervisor-gated by the deploy/artifact-registry consumer."
},
{
"serviceId": "backend-core",
"sourceRepo": "https://github.com/pikasTech/unidesk",
"dockerfile": "src/components/backend-core/Dockerfile",
"imageRepository": "unidesk/backend-core",
"imageRef": "127.0.0.1:5000/unidesk/backend-core:{{sourceCommit}}",
"digestRef": "127.0.0.1:5000/unidesk/backend-core@{{digest}}",
"publishCommand": "bun scripts/cli.ts ci publish-backend-core --commit <full-sha>"
"serviceId": "findjob",
"kind": "source-build",
"status": "supported",
"producer": "ci publish-user-service",
"source": {
"repo": "https://gitee.com/Lyon1998/findjob",
"dockerfile": "Dockerfile"
},
"image": {
"repository": "unidesk/findjob"
}
},
{
"serviceId": "pipeline",
"kind": "source-build",
"status": "supported",
"producer": "ci publish-user-service",
"source": {
"repo": "https://github.com/pikasTech/pipeline",
"dockerfile": "Dockerfile"
},
"image": {
"repository": "unidesk/pipeline"
}
},
{
"serviceId": "met-nonlinear",
"kind": "source-build",
"status": "supported",
"producer": "ci publish-user-service",
"source": {
"repo": "https://github.com/pikasTech/met_nonlinear",
"dockerfile": "docker/unidesk/Dockerfile.ml"
},
"image": {
"repository": "unidesk/met-nonlinear"
}
},
{
"serviceId": "k3sctl-adapter",
"kind": "source-build",
"status": "supported",
"producer": "ci publish-user-service",
"source": {
"repo": "https://github.com/pikasTech/unidesk",
"dockerfile": "src/components/microservices/k3sctl-adapter/Dockerfile"
},
"image": {
"repository": "unidesk/k3sctl-adapter"
}
},
{
"serviceId": "mdtodo",
"kind": "source-build",
"status": "supported",
"producer": "ci publish-user-service",
"source": {
"repo": "https://github.com/pikasTech/unidesk",
"dockerfile": "src/components/microservices/mdtodo/Dockerfile"
},
"image": {
"repository": "unidesk/mdtodo"
}
},
{
"serviceId": "claudeqq",
"kind": "source-build",
"status": "supported",
"producer": "ci publish-user-service",
"source": {
"repo": "https://gitee.com/lyon1998/agent_skills",
"dockerfile": "claudeqq/Dockerfile"
},
"image": {
"repository": "unidesk/claudeqq"
}
},
{
"serviceId": "code-queue",
"kind": "source-build",
"status": "blocked",
"producer": "ci publish-user-service",
"source": {
"repo": "https://github.com/pikasTech/unidesk",
"dockerfile": "src/components/microservices/code-queue/Dockerfile"
},
"image": {
"repository": "unidesk/code-queue"
},
"blockedReason": "D601 code-queue is limited to dev image validation in this phase. The catalog records its producer input, but publish-user-service must not run prod-oriented artifact publication for it yet."
},
{
"serviceId": "filebrowser",
"kind": "upstream-image",
"status": "blocked",
"producer": "ci publish-user-service",
"upstream": {
"imageRef": "docker.io/filebrowser/filebrowser:v2.63.3",
"digestRef": "docker.io/filebrowser/filebrowser@sha256:289c5dd677c56662440f26eeb44266ed9746fe563d2e9100f546bff558534d70",
"sourceRepo": "https://github.com/filebrowser/filebrowser",
"sourceRevision": "ca5e249e3c0c94159c2136a0cd431a424eb18472",
"mirrorRepository": "upstream/filebrowser/filebrowser",
"mirrorTag": "upstream-v2.63.3",
"mirrorDigestRef": "127.0.0.1:5000/upstream/filebrowser/filebrowser@{{digest}}"
},
"blockedReason": "File Browser uses an upstream image and must not be modeled as a UniDesk Dockerfile source build. Add a future upstream mirror producer before publishing it through CI."
},
{
"serviceId": "filebrowser-d601",
"kind": "upstream-image",
"status": "blocked",
"producer": "ci publish-user-service",
"upstream": {
"imageRef": "docker.io/filebrowser/filebrowser:v2.63.3",
"digestRef": "docker.io/filebrowser/filebrowser@sha256:289c5dd677c56662440f26eeb44266ed9746fe563d2e9100f546bff558534d70",
"sourceRepo": "https://github.com/filebrowser/filebrowser",
"sourceRevision": "ca5e249e3c0c94159c2136a0cd431a424eb18472",
"mirrorRepository": "upstream/filebrowser/filebrowser",
"mirrorTag": "upstream-v2.63.3",
"mirrorDigestRef": "127.0.0.1:5000/upstream/filebrowser/filebrowser@{{digest}}"
},
"blockedReason": "File Browser D601 uses the same pinned upstream image as filebrowser and must not be modeled as a UniDesk Dockerfile source build. Add a future upstream mirror producer before publishing it through CI."
}
]
}