@ship.zone/ci-spec 2.0.0 → 2.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/changelog.md +33 -0
- package/conformance/compile-cases.json +822 -2
- package/conformance/runner-job-cases.json +714 -0
- package/conformance/runner-job-cases.schema.json +134 -0
- package/conformance/runner-jobs/incoherent/artifact-maximum-above-limit.json +91 -0
- package/conformance/runner-jobs/incoherent/build-secret-unknown-target.json +104 -0
- package/conformance/runner-jobs/incoherent/cache-count-above-limit.json +91 -0
- package/conformance/runner-jobs/incoherent/command-argument-above-limit.json +70 -0
- package/conformance/runner-jobs/incoherent/environment-above-limit.json +206 -0
- package/conformance/runner-jobs/incoherent/plan-digest-mismatch.json +70 -0
- package/conformance/runner-jobs/incoherent/precedence-limit-before-digest.json +70 -0
- package/conformance/runner-jobs/incoherent/reserved-prefix-environment.json +71 -0
- package/conformance/runner-jobs/incoherent/reserved-prefix-secret-target.json +72 -0
- package/conformance/runner-jobs/incoherent/reserved-variable-missing.json +69 -0
- package/conformance/runner-jobs/incoherent/reserved-variable-not-canonical.json +70 -0
- package/conformance/runner-jobs/incoherent/secret-target-environment-duplicate.json +72 -0
- package/conformance/runner-jobs/incoherent/secret-target-without-build-secret.json +101 -0
- package/conformance/runner-jobs/incoherent/secret-value-too-short.json +72 -0
- package/conformance/runner-jobs/incoherent/shared-memory-above-memory.json +71 -0
- package/conformance/runner-jobs/incoherent/source-above-limit.json +70 -0
- package/conformance/runner-jobs/invalid/artifacts-feature-missing.json +91 -0
- package/conformance/runner-jobs/invalid/artifacts-none-permission.json +91 -0
- package/conformance/runner-jobs/invalid/build-without-push-permission.json +100 -0
- package/conformance/runner-jobs/invalid/read-write-cache-read-permission.json +91 -0
- package/conformance/runner-jobs/invalid/source-feature-missing.json +70 -0
- package/conformance/runner-jobs/invalid/vm-without-platform.json +81 -0
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/constants.d.ts +42 -0
- package/dist_ts/constants.js +57 -1
- package/package.json +4 -2
- package/readme.md +13 -4
- package/spec/ci-actions.md +12 -5
- package/spec/runner-protocol.md +32 -1
- package/spec/runner.openapi.json +1 -1
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/constants.ts +65 -0
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://ship.zone/spec/ci/conformance/runner-job-cases.schema.json",
|
|
4
|
+
"title": "ship.zone compiled runner job coherence vectors",
|
|
5
|
+
"description": "Conformance vectors for compiled runner job coherence: the job failure codes in precedence order and cases that bind a compiled job, with its secret values inserted, to coherent or to the expected job failure code.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"additionalProperties": false,
|
|
8
|
+
"required": [
|
|
9
|
+
"spec",
|
|
10
|
+
"failureCodes",
|
|
11
|
+
"cases"
|
|
12
|
+
],
|
|
13
|
+
"properties": {
|
|
14
|
+
"spec": {
|
|
15
|
+
"$ref": "../schemas/runner-job.schema.json#/$defs/specVersion"
|
|
16
|
+
},
|
|
17
|
+
"failureCodes": {
|
|
18
|
+
"description": "Every job failure code in the precedence order of spec/runner-protocol.md, Job Coherence.",
|
|
19
|
+
"type": "array",
|
|
20
|
+
"minItems": 1,
|
|
21
|
+
"uniqueItems": true,
|
|
22
|
+
"items": {
|
|
23
|
+
"$ref": "#/$defs/failureCode"
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"cases": {
|
|
27
|
+
"type": "array",
|
|
28
|
+
"minItems": 1,
|
|
29
|
+
"items": {
|
|
30
|
+
"$ref": "#/$defs/jobCase"
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
"$defs": {
|
|
35
|
+
"identifier": {
|
|
36
|
+
"$ref": "../schemas/runner-job.schema.json#/$defs/identifier"
|
|
37
|
+
},
|
|
38
|
+
"failureCode": {
|
|
39
|
+
"enum": [
|
|
40
|
+
"spec_incompatible",
|
|
41
|
+
"job_schema_invalid",
|
|
42
|
+
"job_secret_incoherent",
|
|
43
|
+
"job_limit_incoherent",
|
|
44
|
+
"job_resources_incoherent",
|
|
45
|
+
"job_environment_incoherent",
|
|
46
|
+
"job_command_limit_exceeded",
|
|
47
|
+
"job_secret_inadmissible",
|
|
48
|
+
"job_digest_mismatch"
|
|
49
|
+
]
|
|
50
|
+
},
|
|
51
|
+
"jobSource": {
|
|
52
|
+
"description": "The job: a packaged runner job fixture, or an inline JSON document.",
|
|
53
|
+
"oneOf": [
|
|
54
|
+
{
|
|
55
|
+
"type": "object",
|
|
56
|
+
"additionalProperties": false,
|
|
57
|
+
"required": [
|
|
58
|
+
"fixture"
|
|
59
|
+
],
|
|
60
|
+
"properties": {
|
|
61
|
+
"fixture": {
|
|
62
|
+
"type": "string",
|
|
63
|
+
"pattern": "^conformance/runner-jobs/(?:valid|invalid|incoherent)/[a-z0-9-]+\\.json$"
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"type": "object",
|
|
69
|
+
"additionalProperties": false,
|
|
70
|
+
"required": [
|
|
71
|
+
"document"
|
|
72
|
+
],
|
|
73
|
+
"properties": {
|
|
74
|
+
"document": true
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
]
|
|
78
|
+
},
|
|
79
|
+
"jobCase": {
|
|
80
|
+
"description": "A compiled job with its secret values inserted, and the outcome of checking it: coherent, or the job failure code of the first rule it violates.",
|
|
81
|
+
"type": "object",
|
|
82
|
+
"additionalProperties": false,
|
|
83
|
+
"required": [
|
|
84
|
+
"id",
|
|
85
|
+
"job",
|
|
86
|
+
"expected"
|
|
87
|
+
],
|
|
88
|
+
"properties": {
|
|
89
|
+
"id": {
|
|
90
|
+
"$ref": "#/$defs/identifier"
|
|
91
|
+
},
|
|
92
|
+
"description": {
|
|
93
|
+
"type": "string",
|
|
94
|
+
"minLength": 1
|
|
95
|
+
},
|
|
96
|
+
"job": {
|
|
97
|
+
"$ref": "#/$defs/jobSource"
|
|
98
|
+
},
|
|
99
|
+
"expected": {
|
|
100
|
+
"oneOf": [
|
|
101
|
+
{
|
|
102
|
+
"type": "object",
|
|
103
|
+
"additionalProperties": false,
|
|
104
|
+
"required": [
|
|
105
|
+
"outcome"
|
|
106
|
+
],
|
|
107
|
+
"properties": {
|
|
108
|
+
"outcome": {
|
|
109
|
+
"const": "coherent"
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
"type": "object",
|
|
115
|
+
"additionalProperties": false,
|
|
116
|
+
"required": [
|
|
117
|
+
"outcome",
|
|
118
|
+
"code"
|
|
119
|
+
],
|
|
120
|
+
"properties": {
|
|
121
|
+
"outcome": {
|
|
122
|
+
"const": "incoherent"
|
|
123
|
+
},
|
|
124
|
+
"code": {
|
|
125
|
+
"$ref": "#/$defs/failureCode"
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
]
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
{
|
|
2
|
+
"spec": "2.0.0",
|
|
3
|
+
"sourceObjectId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
4
|
+
"workflowDigest": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
5
|
+
"compiledPlanDigest": "9a8661778a68db46c2b976334358d5917f51be15d5b4c80bc9fb934e7a366f99",
|
|
6
|
+
"requirements": {
|
|
7
|
+
"executionProfile": "oci",
|
|
8
|
+
"isolation": "container",
|
|
9
|
+
"labels": ["linux"],
|
|
10
|
+
"features": ["source.tar-gz", "artifacts", "caches"],
|
|
11
|
+
"limits": {
|
|
12
|
+
"maximumSourceArchiveBytes": 1048576,
|
|
13
|
+
"maximumSourceExtractedBytes": 4194304,
|
|
14
|
+
"maximumSourceEntries": 1000,
|
|
15
|
+
"maximumArtifactArchiveBytes": 104857600,
|
|
16
|
+
"maximumArtifactExtractedBytes": 524288000,
|
|
17
|
+
"maximumArtifactEntries": 10000,
|
|
18
|
+
"maximumArtifacts": 1,
|
|
19
|
+
"maximumCacheArchiveBytes": 1073741824,
|
|
20
|
+
"maximumCacheExtractedBytes": 4294967296,
|
|
21
|
+
"maximumCacheEntries": 100000,
|
|
22
|
+
"maximumCaches": 1,
|
|
23
|
+
"maximumLogChunkBytes": 65536,
|
|
24
|
+
"maximumTotalLogBytes": 10485760,
|
|
25
|
+
"maximumWorkspaceBytes": 8589934592,
|
|
26
|
+
"maximumWorkspaceEntries": 100000
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
"permissions": {
|
|
30
|
+
"source": "read",
|
|
31
|
+
"artifacts": "write",
|
|
32
|
+
"caches": "read-write",
|
|
33
|
+
"images": "none"
|
|
34
|
+
},
|
|
35
|
+
"network": {
|
|
36
|
+
"mode": "none"
|
|
37
|
+
},
|
|
38
|
+
"execution": {
|
|
39
|
+
"profile": "oci",
|
|
40
|
+
"image": "registry.example/ci@sha256:dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd",
|
|
41
|
+
"workingDirectory": "/workspace"
|
|
42
|
+
},
|
|
43
|
+
"steps": [
|
|
44
|
+
{
|
|
45
|
+
"name": "Test",
|
|
46
|
+
"command": ["pnpm", "test"],
|
|
47
|
+
"environment": {
|
|
48
|
+
"CI": "true",
|
|
49
|
+
"SHIPZONE_CI_INPUTS_JSON": "{}",
|
|
50
|
+
"SHIPZONE_CI_MATRIX_JSON": "{}"
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
],
|
|
54
|
+
"source": {
|
|
55
|
+
"format": "tar.gz",
|
|
56
|
+
"sha256": "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
|
|
57
|
+
"sizeBytes": 1024,
|
|
58
|
+
"extractedSizeBytes": 4096,
|
|
59
|
+
"entryCount": 4
|
|
60
|
+
},
|
|
61
|
+
"secrets": {},
|
|
62
|
+
"timeoutMs": 3600000,
|
|
63
|
+
"resources": {
|
|
64
|
+
"memoryBytes": 268435456,
|
|
65
|
+
"cpus": 1,
|
|
66
|
+
"pids": 256
|
|
67
|
+
},
|
|
68
|
+
"artifacts": [
|
|
69
|
+
{
|
|
70
|
+
"name": "test-results",
|
|
71
|
+
"path": ".nogit/testlogs",
|
|
72
|
+
"format": "tar.gz",
|
|
73
|
+
"when": "failure",
|
|
74
|
+
"required": false,
|
|
75
|
+
"maximumBytes": 209715200,
|
|
76
|
+
"maximumExtractedBytes": 524288000,
|
|
77
|
+
"maximumEntries": 10000
|
|
78
|
+
}
|
|
79
|
+
],
|
|
80
|
+
"caches": [
|
|
81
|
+
{
|
|
82
|
+
"name": "pnpm",
|
|
83
|
+
"key": "pnpm-store",
|
|
84
|
+
"paths": [".pnpm-store"],
|
|
85
|
+
"access": "read-write",
|
|
86
|
+
"maximumBytes": 1073741824,
|
|
87
|
+
"maximumExtractedBytes": 4294967296,
|
|
88
|
+
"maximumEntries": 100000
|
|
89
|
+
}
|
|
90
|
+
]
|
|
91
|
+
}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
{
|
|
2
|
+
"spec": "2.0.0",
|
|
3
|
+
"sourceObjectId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
4
|
+
"workflowDigest": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
5
|
+
"compiledPlanDigest": "fd16565c173045812935c81afa919258564b9a89aa79d10cfa6b7b3f177fe2cd",
|
|
6
|
+
"requirements": {
|
|
7
|
+
"executionProfile": "oci-image",
|
|
8
|
+
"isolation": "microvm",
|
|
9
|
+
"platform": "linux/arm64",
|
|
10
|
+
"labels": ["builder"],
|
|
11
|
+
"features": ["source.tar-gz", "caches"],
|
|
12
|
+
"limits": {
|
|
13
|
+
"maximumSourceArchiveBytes": 1048576,
|
|
14
|
+
"maximumSourceExtractedBytes": 4194304,
|
|
15
|
+
"maximumSourceEntries": 1000,
|
|
16
|
+
"maximumArtifactArchiveBytes": 0,
|
|
17
|
+
"maximumArtifactExtractedBytes": 0,
|
|
18
|
+
"maximumArtifactEntries": 0,
|
|
19
|
+
"maximumArtifacts": 0,
|
|
20
|
+
"maximumCacheArchiveBytes": 4294967296,
|
|
21
|
+
"maximumCacheExtractedBytes": 17179869184,
|
|
22
|
+
"maximumCacheEntries": 1000000,
|
|
23
|
+
"maximumCaches": 1,
|
|
24
|
+
"maximumLogChunkBytes": 65536,
|
|
25
|
+
"maximumTotalLogBytes": 10485760,
|
|
26
|
+
"maximumWorkspaceBytes": 21474836480,
|
|
27
|
+
"maximumWorkspaceEntries": 100000
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
"permissions": {
|
|
31
|
+
"source": "read",
|
|
32
|
+
"artifacts": "none",
|
|
33
|
+
"caches": "read-write",
|
|
34
|
+
"images": "push"
|
|
35
|
+
},
|
|
36
|
+
"network": {
|
|
37
|
+
"mode": "egress",
|
|
38
|
+
"allow": [
|
|
39
|
+
{
|
|
40
|
+
"host": "registry.npmjs.org",
|
|
41
|
+
"ports": [443]
|
|
42
|
+
}
|
|
43
|
+
]
|
|
44
|
+
},
|
|
45
|
+
"build": {
|
|
46
|
+
"context": ".",
|
|
47
|
+
"dockerfile": "Dockerfile",
|
|
48
|
+
"target": "production",
|
|
49
|
+
"buildArgs": {
|
|
50
|
+
"NODE_ENV": "production"
|
|
51
|
+
},
|
|
52
|
+
"secrets": [
|
|
53
|
+
{
|
|
54
|
+
"id": "npmrc",
|
|
55
|
+
"environment": "NPM_TOKEN"
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"id": "token",
|
|
59
|
+
"environment": "MISSING_TOKEN"
|
|
60
|
+
}
|
|
61
|
+
],
|
|
62
|
+
"labels": {
|
|
63
|
+
"org.opencontainers.image.revision": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
64
|
+
"org.opencontainers.image.source": "https://code.foss.global/example/app",
|
|
65
|
+
"org.opencontainers.image.title": "app"
|
|
66
|
+
},
|
|
67
|
+
"baseImages": [
|
|
68
|
+
{
|
|
69
|
+
"name": "base",
|
|
70
|
+
"image": {
|
|
71
|
+
"candidate": "base-image"
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
]
|
|
75
|
+
},
|
|
76
|
+
"source": {
|
|
77
|
+
"format": "tar.gz",
|
|
78
|
+
"sha256": "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
|
|
79
|
+
"sizeBytes": 1024,
|
|
80
|
+
"extractedSizeBytes": 4096,
|
|
81
|
+
"entryCount": 4
|
|
82
|
+
},
|
|
83
|
+
"secrets": {
|
|
84
|
+
"NPM_TOKEN": "resolved-secret-value"
|
|
85
|
+
},
|
|
86
|
+
"timeoutMs": 3600000,
|
|
87
|
+
"resources": {
|
|
88
|
+
"memoryBytes": 8589934592,
|
|
89
|
+
"cpus": 4,
|
|
90
|
+
"pids": 4096
|
|
91
|
+
},
|
|
92
|
+
"artifacts": [],
|
|
93
|
+
"caches": [
|
|
94
|
+
{
|
|
95
|
+
"name": "buildkit",
|
|
96
|
+
"key": "buildkit-linux-arm64",
|
|
97
|
+
"access": "read-write",
|
|
98
|
+
"maximumBytes": 4294967296,
|
|
99
|
+
"maximumExtractedBytes": 17179869184,
|
|
100
|
+
"maximumEntries": 1000000,
|
|
101
|
+
"retentionDays": 14
|
|
102
|
+
}
|
|
103
|
+
]
|
|
104
|
+
}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
{
|
|
2
|
+
"spec": "2.0.0",
|
|
3
|
+
"sourceObjectId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
4
|
+
"workflowDigest": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
5
|
+
"compiledPlanDigest": "44d32c309c5198f061b0778f8dae4b78723d4c8701ea85ec7f070011027745f5",
|
|
6
|
+
"requirements": {
|
|
7
|
+
"executionProfile": "oci",
|
|
8
|
+
"isolation": "container",
|
|
9
|
+
"labels": ["linux"],
|
|
10
|
+
"features": ["source.tar-gz", "artifacts", "caches"],
|
|
11
|
+
"limits": {
|
|
12
|
+
"maximumSourceArchiveBytes": 1048576,
|
|
13
|
+
"maximumSourceExtractedBytes": 4194304,
|
|
14
|
+
"maximumSourceEntries": 1000,
|
|
15
|
+
"maximumArtifactArchiveBytes": 104857600,
|
|
16
|
+
"maximumArtifactExtractedBytes": 524288000,
|
|
17
|
+
"maximumArtifactEntries": 10000,
|
|
18
|
+
"maximumArtifacts": 1,
|
|
19
|
+
"maximumCacheArchiveBytes": 1073741824,
|
|
20
|
+
"maximumCacheExtractedBytes": 4294967296,
|
|
21
|
+
"maximumCacheEntries": 100000,
|
|
22
|
+
"maximumCaches": 0,
|
|
23
|
+
"maximumLogChunkBytes": 65536,
|
|
24
|
+
"maximumTotalLogBytes": 10485760,
|
|
25
|
+
"maximumWorkspaceBytes": 8589934592,
|
|
26
|
+
"maximumWorkspaceEntries": 100000
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
"permissions": {
|
|
30
|
+
"source": "read",
|
|
31
|
+
"artifacts": "write",
|
|
32
|
+
"caches": "read-write",
|
|
33
|
+
"images": "none"
|
|
34
|
+
},
|
|
35
|
+
"network": {
|
|
36
|
+
"mode": "none"
|
|
37
|
+
},
|
|
38
|
+
"execution": {
|
|
39
|
+
"profile": "oci",
|
|
40
|
+
"image": "registry.example/ci@sha256:dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd",
|
|
41
|
+
"workingDirectory": "/workspace"
|
|
42
|
+
},
|
|
43
|
+
"steps": [
|
|
44
|
+
{
|
|
45
|
+
"name": "Test",
|
|
46
|
+
"command": ["pnpm", "test"],
|
|
47
|
+
"environment": {
|
|
48
|
+
"CI": "true",
|
|
49
|
+
"SHIPZONE_CI_INPUTS_JSON": "{}",
|
|
50
|
+
"SHIPZONE_CI_MATRIX_JSON": "{}"
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
],
|
|
54
|
+
"source": {
|
|
55
|
+
"format": "tar.gz",
|
|
56
|
+
"sha256": "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
|
|
57
|
+
"sizeBytes": 1024,
|
|
58
|
+
"extractedSizeBytes": 4096,
|
|
59
|
+
"entryCount": 4
|
|
60
|
+
},
|
|
61
|
+
"secrets": {},
|
|
62
|
+
"timeoutMs": 3600000,
|
|
63
|
+
"resources": {
|
|
64
|
+
"memoryBytes": 268435456,
|
|
65
|
+
"cpus": 1,
|
|
66
|
+
"pids": 256
|
|
67
|
+
},
|
|
68
|
+
"artifacts": [
|
|
69
|
+
{
|
|
70
|
+
"name": "test-results",
|
|
71
|
+
"path": ".nogit/testlogs",
|
|
72
|
+
"format": "tar.gz",
|
|
73
|
+
"when": "failure",
|
|
74
|
+
"required": false,
|
|
75
|
+
"maximumBytes": 104857600,
|
|
76
|
+
"maximumExtractedBytes": 524288000,
|
|
77
|
+
"maximumEntries": 10000
|
|
78
|
+
}
|
|
79
|
+
],
|
|
80
|
+
"caches": [
|
|
81
|
+
{
|
|
82
|
+
"name": "pnpm",
|
|
83
|
+
"key": "pnpm-store",
|
|
84
|
+
"paths": [".pnpm-store"],
|
|
85
|
+
"access": "read-write",
|
|
86
|
+
"maximumBytes": 1073741824,
|
|
87
|
+
"maximumExtractedBytes": 4294967296,
|
|
88
|
+
"maximumEntries": 100000
|
|
89
|
+
}
|
|
90
|
+
]
|
|
91
|
+
}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
{
|
|
2
|
+
"spec": "2.0.0",
|
|
3
|
+
"sourceObjectId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
4
|
+
"workflowDigest": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
5
|
+
"compiledPlanDigest": "71be63b5e4ddbe4aef1e4519f9c37756807a5e49b9071514050793d4945021bd",
|
|
6
|
+
"requirements": {
|
|
7
|
+
"executionProfile": "oci",
|
|
8
|
+
"isolation": "container",
|
|
9
|
+
"labels": ["linux"],
|
|
10
|
+
"features": ["source.tar-gz"],
|
|
11
|
+
"limits": {
|
|
12
|
+
"maximumSourceArchiveBytes": 1048576,
|
|
13
|
+
"maximumSourceExtractedBytes": 4194304,
|
|
14
|
+
"maximumSourceEntries": 1000,
|
|
15
|
+
"maximumArtifactArchiveBytes": 0,
|
|
16
|
+
"maximumArtifactExtractedBytes": 0,
|
|
17
|
+
"maximumArtifactEntries": 0,
|
|
18
|
+
"maximumArtifacts": 0,
|
|
19
|
+
"maximumCacheArchiveBytes": 0,
|
|
20
|
+
"maximumCacheExtractedBytes": 0,
|
|
21
|
+
"maximumCacheEntries": 0,
|
|
22
|
+
"maximumCaches": 0,
|
|
23
|
+
"maximumLogChunkBytes": 65536,
|
|
24
|
+
"maximumTotalLogBytes": 10485760,
|
|
25
|
+
"maximumWorkspaceBytes": 268435456,
|
|
26
|
+
"maximumWorkspaceEntries": 100000
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
"permissions": {
|
|
30
|
+
"source": "read",
|
|
31
|
+
"artifacts": "none",
|
|
32
|
+
"caches": "none",
|
|
33
|
+
"images": "none"
|
|
34
|
+
},
|
|
35
|
+
"network": {
|
|
36
|
+
"mode": "none"
|
|
37
|
+
},
|
|
38
|
+
"execution": {
|
|
39
|
+
"profile": "oci",
|
|
40
|
+
"image": "registry.example/ci@sha256:dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd",
|
|
41
|
+
"workingDirectory": "/workspace"
|
|
42
|
+
},
|
|
43
|
+
"steps": [
|
|
44
|
+
{
|
|
45
|
+
"name": "Test",
|
|
46
|
+
"command": ["pnpm", "ééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééa"],
|
|
47
|
+
"environment": {
|
|
48
|
+
"CI": "true",
|
|
49
|
+
"SHIPZONE_CI_INPUTS_JSON": "{}",
|
|
50
|
+
"SHIPZONE_CI_MATRIX_JSON": "{}"
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
],
|
|
54
|
+
"source": {
|
|
55
|
+
"format": "tar.gz",
|
|
56
|
+
"sha256": "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
|
|
57
|
+
"sizeBytes": 1024,
|
|
58
|
+
"extractedSizeBytes": 4096,
|
|
59
|
+
"entryCount": 4
|
|
60
|
+
},
|
|
61
|
+
"secrets": {},
|
|
62
|
+
"timeoutMs": 60000,
|
|
63
|
+
"resources": {
|
|
64
|
+
"memoryBytes": 268435456,
|
|
65
|
+
"cpus": 1,
|
|
66
|
+
"pids": 256
|
|
67
|
+
},
|
|
68
|
+
"artifacts": [],
|
|
69
|
+
"caches": []
|
|
70
|
+
}
|