Files
runner/src/Sdk/DTPipelines/workflow-v1.0.json
T

572 lines
11 KiB
JSON
Raw Normal View History

2019-10-10 00:52:42 -04:00
{
"version": "workflow-v1.0",
"definitions": {
"workflow-root": {
"description": "Workflow file",
"mapping": {
"properties": {
"on": "any",
"name": "string",
2020-03-17 23:40:37 -04:00
"defaults": "workflow-defaults",
2019-10-10 00:52:42 -04:00
"env": "workflow-env",
"jobs": "jobs"
}
}
},
2020-03-17 23:40:37 -04:00
"workflow-defaults": {
"mapping": {
"properties": {
"run": "workflow-defaults-run"
}
}
},
"workflow-defaults-run": {
"mapping": {
"properties": {
"shell": "non-empty-string",
"working-directory": "non-empty-string"
}
}
},
2019-10-10 00:52:42 -04:00
"workflow-env": {
"context": [
"github",
"secrets",
"vars"
2019-10-10 00:52:42 -04:00
],
"mapping": {
"loose-key-type": "non-empty-string",
"loose-value-type": "string"
}
},
"jobs": {
"mapping": {
"loose-key-type": "non-empty-string",
"loose-value-type": "job"
}
},
"job": {
"mapping": {
"properties": {
"needs": "needs",
2020-03-14 17:54:58 -04:00
"if": "job-if",
2019-10-10 00:52:42 -04:00
"strategy": "strategy",
"name": "string-strategy-context",
2020-03-14 17:54:58 -04:00
"runs-on": {
"type": "runs-on",
"required": true
},
2019-10-10 00:52:42 -04:00
"timeout-minutes": "number-strategy-context",
"cancel-timeout-minutes": "number-strategy-context",
2020-03-14 17:54:58 -04:00
"continue-on-error": "boolean-strategy-context",
2019-10-10 00:52:42 -04:00
"container": "container",
"services": "services",
"env": "job-env",
2020-03-14 17:54:58 -04:00
"outputs": "job-outputs",
2020-03-17 23:40:37 -04:00
"defaults": "job-defaults",
2019-10-10 00:52:42 -04:00
"steps": "steps"
}
}
},
"needs": {
"one-of": [
"sequence-of-non-empty-string",
"non-empty-string"
]
},
2020-03-14 17:54:58 -04:00
"job-if": {
"context": [
"github",
"needs",
"vars",
2020-03-14 17:54:58 -04:00
"always(0,0)",
"failure(0,MAX)",
"cancelled(0,0)",
"success(0,MAX)"
],
"string": {}
},
"job-if-result": {
"context": [
"github",
"needs",
"vars",
"always(0,0)",
"failure(0,MAX)",
"cancelled(0,0)",
"success(0,MAX)"
],
"one-of": [
"null",
"boolean",
"number",
"string",
"sequence",
"mapping"
]
},
2019-10-10 00:52:42 -04:00
"strategy": {
"context": [
2020-03-14 17:54:58 -04:00
"github",
"needs",
"vars"
2019-10-10 00:52:42 -04:00
],
"mapping": {
"properties": {
"fail-fast": "boolean",
"max-parallel": "number",
"matrix": "matrix"
}
}
},
"matrix": {
"mapping": {
"properties": {
"include": "matrix-filter",
"exclude": "matrix-filter"
2019-10-10 00:52:42 -04:00
},
"loose-key-type": "non-empty-string",
"loose-value-type": "sequence"
}
},
"matrix-filter": {
2019-10-10 00:52:42 -04:00
"sequence": {
"item-type": "matrix-filter-item"
2019-10-10 00:52:42 -04:00
}
},
"matrix-filter-item": {
2019-10-10 00:52:42 -04:00
"mapping": {
"loose-key-type": "non-empty-string",
"loose-value-type": "any"
}
},
"runs-on": {
"context": [
"github",
"needs",
2019-10-10 00:52:42 -04:00
"strategy",
"matrix",
"vars"
2019-10-10 00:52:42 -04:00
],
"one-of": [
2020-03-14 17:54:58 -04:00
"non-empty-string",
"sequence-of-non-empty-string",
2019-10-10 00:52:42 -04:00
"runs-on-mapping"
]
},
"runs-on-mapping": {
"mapping": {
"properties": {
2020-03-14 17:54:58 -04:00
"pool": {
"type": "non-empty-string",
"required": true
}
2019-10-10 00:52:42 -04:00
}
}
},
"job-env": {
"context": [
"github",
"needs",
2019-10-10 00:52:42 -04:00
"strategy",
2020-03-14 17:54:58 -04:00
"matrix",
"secrets",
"vars"
2019-10-10 00:52:42 -04:00
],
"mapping": {
"loose-key-type": "non-empty-string",
"loose-value-type": "string"
}
},
2020-03-17 23:40:37 -04:00
"job-defaults": {
"mapping": {
"properties": {
"run": "job-defaults-run"
}
}
},
"job-defaults-run": {
"context": [
"github",
"strategy",
"matrix",
"needs",
"env",
"vars"
2020-03-17 23:40:37 -04:00
],
"mapping": {
"properties": {
"shell": "non-empty-string",
"working-directory": "non-empty-string"
}
}
},
2020-03-14 17:54:58 -04:00
"job-outputs": {
"mapping": {
"loose-key-type": "non-empty-string",
"loose-value-type": "string-runner-context"
}
},
2019-10-10 00:52:42 -04:00
"steps": {
"sequence": {
"item-type": "steps-item"
}
},
"steps-item": {
"one-of": [
"run-step",
"regular-step"
2019-10-10 00:52:42 -04:00
]
},
"run-step": {
"mapping": {
"properties": {
"name": "string-steps-context",
"id": "non-empty-string",
2020-03-14 17:54:58 -04:00
"if": "step-if",
2019-10-10 00:52:42 -04:00
"timeout-minutes": "number-steps-context",
2020-03-14 17:54:58 -04:00
"run": {
"type": "string-steps-context",
"required": true
},
2019-10-10 00:52:42 -04:00
"continue-on-error": "boolean-steps-context",
"env": "step-env",
"working-directory": "string-steps-context",
"shell": "non-empty-string"
}
}
},
"regular-step": {
"mapping": {
"properties": {
"name": "string-steps-context",
"id": "non-empty-string",
2020-03-14 17:54:58 -04:00
"if": "step-if",
2019-10-10 00:52:42 -04:00
"continue-on-error": "boolean-steps-context",
"timeout-minutes": "number-steps-context",
2020-03-14 17:54:58 -04:00
"uses": {
"type": "non-empty-string",
"required": true
},
2019-10-10 00:52:42 -04:00
"with": "step-with",
"env": "step-env"
}
}
},
2020-03-14 17:54:58 -04:00
"step-if": {
"context": [
"github",
"needs",
2020-03-14 17:54:58 -04:00
"strategy",
"matrix",
"steps",
"job",
"runner",
"env",
"vars",
2020-03-14 17:54:58 -04:00
"always(0,0)",
"failure(0,0)",
"cancelled(0,0)",
"success(0,0)",
"hashFiles(1,255)"
2020-03-14 17:54:58 -04:00
],
"string": {}
},
"step-if-result": {
"context": [
"github",
"strategy",
"matrix",
"steps",
"job",
"runner",
"env",
"vars",
"always(0,0)",
"failure(0,0)",
"cancelled(0,0)",
"success(0,0)",
"hashFiles(1,255)"
],
"one-of": [
"null",
"boolean",
"number",
"string",
"sequence",
"mapping"
]
},
2019-10-10 00:52:42 -04:00
"step-env": {
"context": [
"github",
"needs",
2019-10-10 00:52:42 -04:00
"strategy",
"matrix",
"secrets",
"steps",
"job",
"runner",
"env",
"vars",
"hashFiles(1,255)"
2019-10-10 00:52:42 -04:00
],
"mapping": {
"loose-key-type": "non-empty-string",
"loose-value-type": "string"
}
},
"step-with": {
"context": [
"github",
"needs",
2019-10-10 00:52:42 -04:00
"strategy",
"matrix",
"secrets",
"steps",
"job",
"runner",
"env",
"vars",
"hashFiles(1,255)"
],
"mapping": {
"loose-key-type": "non-empty-string",
"loose-value-type": "string"
}
},
2019-10-10 00:52:42 -04:00
"container": {
"context": [
"github",
"needs",
2019-10-10 00:52:42 -04:00
"strategy",
"matrix",
"vars"
2019-10-10 00:52:42 -04:00
],
"one-of": [
2020-01-12 23:02:36 -05:00
"string",
2019-10-10 00:52:42 -04:00
"container-mapping"
]
},
"container-mapping": {
"mapping": {
"properties": {
"image": "non-empty-string",
"options": "non-empty-string",
"env": "container-env",
"ports": "sequence-of-non-empty-string",
"volumes": "sequence-of-non-empty-string",
"credentials": "container-registry-credentials"
2019-10-10 00:52:42 -04:00
}
}
},
"services": {
"context": [
"github",
"needs",
2019-10-10 00:52:42 -04:00
"strategy",
"matrix",
"vars"
2019-10-10 00:52:42 -04:00
],
"mapping": {
"loose-key-type": "non-empty-string",
2020-01-12 23:02:36 -05:00
"loose-value-type": "services-container"
2019-10-10 00:52:42 -04:00
}
},
2020-01-12 23:02:36 -05:00
"services-container": {
"context": [
"github",
"needs",
2020-01-12 23:02:36 -05:00
"strategy",
"matrix",
"vars"
2020-01-12 23:02:36 -05:00
],
"one-of": [
"non-empty-string",
"container-mapping"
]
},
"container-registry-credentials": {
"context": [
"secrets",
"env",
"github",
"vars"
],
"mapping": {
"properties": {
"username": "non-empty-string",
"password": "non-empty-string"
}
}
},
2019-10-10 00:52:42 -04:00
"container-env": {
"mapping": {
"loose-key-type": "non-empty-string",
2020-03-26 23:01:17 -04:00
"loose-value-type": "string-runner-context"
2019-10-10 00:52:42 -04:00
}
},
"non-empty-string": {
"string": {
"require-non-empty": true
}
},
"sequence-of-non-empty-string": {
"sequence": {
"item-type": "non-empty-string"
}
},
2020-03-14 17:54:58 -04:00
"boolean-strategy-context": {
"context": [
"github",
"needs",
2020-03-14 17:54:58 -04:00
"strategy",
"matrix",
"vars"
2020-03-14 17:54:58 -04:00
],
"boolean": {}
},
2019-10-10 00:52:42 -04:00
"number-strategy-context": {
"context": [
"github",
"needs",
2019-10-10 00:52:42 -04:00
"strategy",
"matrix",
"vars"
2019-10-10 00:52:42 -04:00
],
"number": {}
},
"string-strategy-context": {
"context": [
"github",
"needs",
2019-10-10 00:52:42 -04:00
"strategy",
"matrix",
"vars"
2019-10-10 00:52:42 -04:00
],
"string": {}
},
"boolean-steps-context": {
"context": [
"github",
"needs",
2019-10-10 00:52:42 -04:00
"strategy",
"matrix",
"secrets",
"steps",
"job",
"runner",
"env",
"vars",
"hashFiles(1,255)"
2019-10-10 00:52:42 -04:00
],
"boolean": {}
},
"number-steps-context": {
"context": [
"github",
"needs",
2019-10-10 00:52:42 -04:00
"strategy",
"matrix",
"secrets",
"steps",
"job",
"runner",
"env",
"vars",
"hashFiles(1,255)"
2019-10-10 00:52:42 -04:00
],
"number": {}
},
2020-03-14 17:54:58 -04:00
"string-runner-context": {
"context": [
"github",
"needs",
2020-03-14 17:54:58 -04:00
"strategy",
"matrix",
"secrets",
"steps",
"job",
"runner",
"env",
"vars"
2020-03-14 17:54:58 -04:00
],
"string": {}
},
2020-10-21 12:14:21 -04:00
"string-runner-context-no-secrets": {
"context": [
"github",
"needs",
"strategy",
"matrix",
"steps",
"job",
"runner",
"env",
"vars"
2020-10-21 12:14:21 -04:00
],
"string": {}
},
2019-10-10 00:52:42 -04:00
"string-steps-context": {
"context": [
"github",
"needs",
2019-10-10 00:52:42 -04:00
"strategy",
"matrix",
"secrets",
"steps",
"job",
"runner",
"env",
"vars",
"hashFiles(1,255)"
2019-10-10 00:52:42 -04:00
],
"string": {}
}
}
2020-10-21 12:14:21 -04:00
}