"description":"Schema of a Woodpecker pipeline file. Read more: https://woodpecker-ci.github.io/docs/usage/pipeline-syntax",
"type":"object",
"required":["pipeline"],
"additionalProperties":false,
"properties":{
"$schema":{
"type":"string",
"format":"uri"
},
"clone":{"$ref":"#/definitions/clone"},
"branches":{"$ref":"#/definitions/branches"},
"pipeline":{"$ref":"#/definitions/pipeline"},
"services":{"$ref":"#/definitions/services"},
"workspace":{"$ref":"#/definitions/workspace"},
"matrix":{"$ref":"#/definitions/matrix"},
"skip_clone":{"type":"boolean"},
"depends_on":{
"type":"array",
"minLength":1,
"items":{"type":"string"}
},
"run_on":{
"type":"array",
"minLength":1,
"items":{"type":"string"}
}
},
"definitions":{
"clone":{
"description":"Configures the clone step. Read more: https://woodpecker-ci.github.io/docs/usage/pipeline-syntax#clone",
"type":"object",
"additionalProperties":false,
"properties":{
"git":{
"type":"object",
"properties":{
"image":{
"type":"string"
}
}
}
}
},
"branches":{
"description":"Only include commits based on their target branch. Read more: https://woodpecker-ci.github.io/docs/usage/pipeline-syntax#branches",
"oneOf":[
{
"type":"array",
"items":{
"type":"string"
},
"minProperties":1
},
{
"type":"string"
},
{
"type":"object",
"additionalProperties":false,
"properties":{
"exclude":{
"oneOf":[
{
"type":"array",
"items":{"type":"string"},
"minLength":1
},
{"type":"string"}
]
},
"include":{
"oneOf":[
{
"type":"array",
"items":{"type":"string"},
"minLength":1
},
{"type":"string"}
]
}
}
}
]
},
"pipeline":{
"description":"The pipeline section defines a list of steps which will be executed serially, in the order in which they are defined. Read more: https://woodpecker-ci.github.io/docs/usage/pipeline-syntax",
"type":"object",
"additionalProperties":{
"$ref":"#/definitions/step"
},
"minProperties":1
},
"step":{
"description":"Every step of your pipeline executes arbitrary commands inside a specified docker container. Read more: https://woodpecker-ci.github.io/docs/usage/pipeline-syntax#steps",
"description":"Always pull the latest image on pipeline execution Read more: https://woodpecker-ci.github.io/docs/usage/pipeline-syntax#step-image",
"type":"boolean"
},
"commands":{
"description":"Commands of every pipeline step are executed serially as if you would enter them into your local shell. Read more: https://woodpecker-ci.github.io/docs/usage/pipeline-syntax#step-commands",
"oneOf":[
{
"type":"array",
"items":{"type":"string"},
"minLength":1
},
{"type":"string"}
]
},
"environment":{
"description":"Pass environment variables to a pipeline step. Read more: https://woodpecker-ci.github.io/docs/usage/environment",
"type":"array",
"items":{"type":"string"},
"minLength":1
},
"secrets":{
"description":"Pass secrets to a pipeline step at runtime. Read more: https://woodpecker-ci.github.io/docs/usage/secrets",
"type":"array",
"items":{
"oneOf":[
{"type":"string"},
{
"type":"object",
"required":["source","target"],
"properties":{
"source":{"type":"string"},
"target":{"type":"string"}
}
}
]
},
"minLength":1
},
"when":{
"$ref":"#/definitions/step_when"
},
"group":{
"description":"Execute multiple steps with the same group key in parallel. Read more: https://woodpecker-ci.github.io/docs/usage/pipeline-syntax#step-group---parallel-execution",
"type":"string"
},
"volumes":{
"description":"Mount files or folders from the host machine into your step container. Read more: https://woodpecker-ci.github.io/docs/usage/volumes",
"description":"Steps can be skipped based on conditions. Read more: https://woodpecker-ci.github.io/docs/usage/pipeline-syntax#step-when---conditional-execution",
"description":"Execute a step only on commit with certain files added/removed/modified. Read more: https://woodpecker-ci.github.io/docs/usage/pipeline-syntax#environment",