168 lines
7.4 KiB
JSON
168 lines
7.4 KiB
JSON
{
|
|
"schemaVersion": 1,
|
|
"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.",
|
|
"summaryContract": {
|
|
"requiredOnSuccess": [
|
|
"serviceId",
|
|
"sourceCommit",
|
|
"sourceRepo",
|
|
"dockerfile",
|
|
"imageRef",
|
|
"tag",
|
|
"digest",
|
|
"digestRef"
|
|
],
|
|
"fieldSemantics": {
|
|
"serviceId": "Stable UniDesk service id for the artifact.",
|
|
"sourceCommit": "Full 40-character Git commit used as the source and tag.",
|
|
"sourceRepo": "Git repository URL used to materialize the source.",
|
|
"dockerfile": "Repo-relative Dockerfile path used by CI.",
|
|
"imageRef": "Commit-tagged image reference pushed by CI.",
|
|
"tag": "Commit-pinned image tag; mutable tags such as latest are not valid.",
|
|
"digest": "Registry manifest digest for the pushed image.",
|
|
"digestRef": "Immutable image reference in repository@digest form."
|
|
}
|
|
},
|
|
"defaults": {
|
|
"producer": "D601 Tekton CI",
|
|
"registry": "127.0.0.1:5000",
|
|
"tag": "{{sourceCommit}}",
|
|
"mutableTagsAllowed": false,
|
|
"runtimeFieldsForbidden": [
|
|
"providerId",
|
|
"namespace",
|
|
"ports",
|
|
"composeService",
|
|
"kubernetesService",
|
|
"healthPath",
|
|
"replicas",
|
|
"env",
|
|
"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": "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}}"
|
|
},
|
|
{
|
|
"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>"
|
|
},
|
|
{
|
|
"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>"
|
|
},
|
|
{
|
|
"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>"
|
|
},
|
|
{
|
|
"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>"
|
|
}
|
|
]
|
|
}
|