diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 9566701d4..21a845dbe 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -10,6 +10,9 @@ Unreleased .. vendor-insert-here +- Update vendored schemas: bitbucket-pipelines, buildkite, changie, github-workflows, + gitlab-ci, mergify, renovate, snapcraft, travis, woodpecker-ci (2026-06-29) + 0.37.3 ------ diff --git a/src/check_jsonschema/builtin_schemas/vendor/bitbucket-pipelines.json b/src/check_jsonschema/builtin_schemas/vendor/bitbucket-pipelines.json index aacb9deaf..78f9ec9ea 100644 --- a/src/check_jsonschema/builtin_schemas/vendor/bitbucket-pipelines.json +++ b/src/check_jsonschema/builtin_schemas/vendor/bitbucket-pipelines.json @@ -1 +1 @@ -{"$id": "https://bitbucket.org/product/features/pipelines", "$ref": "#/components/schemas/pipelines_configuration", "$schema": "http://json-schema.org/draft-07/schema#", "components": {"schemas": {"agent_config": {"description": "Optional agent config path and inline overrides.", "properties": {"overrides": {"additionalProperties": true, "description": "Inline config overrides for the agent.", "title": "Agent Config Overrides", "type": "object"}, "path": {"description": "Path to a config file used by the agent.", "title": "Agent Config Path", "type": "string"}}, "title": "Agent Config", "type": "object"}, "agent_definition": {"description": "Defines an agent that can be referenced by agent tasks.", "properties": {"config": {"$ref": "#/components/schemas/agent_config"}, "permissions": {"$ref": "#/components/schemas/agent_permissions"}, "prompt": {"description": "Prompt used by the agent definition.", "title": "Agent Prompt", "type": "string"}, "provider": {"$ref": "#/components/schemas/agent_provider"}}, "required": ["prompt"], "title": "Agent Definition", "type": "object"}, "agent_permissions": {"description": "Optional permissions configuration for the agent.", "properties": {"on-ask": {"$ref": "#/components/schemas/agent_permissions_on_ask"}}, "title": "Agent Permissions", "type": "object"}, "agent_permissions_on_ask": {"description": "How to respond when the agent asks for permissions.", "enum": ["allow", "deny"], "title": "On Ask Permission Mode", "type": "string"}, "agent_provider": {"description": "Agent provider used to run the task.", "enum": ["rovodev", "claude"], "title": "Agent Provider", "type": "string"}, "agent_task": {"description": "The agentic task to execute.", "properties": {"agent": {"description": "Name of the agent definition referenced by this task.", "title": "Agent Name", "type": "string"}, "config": {"$ref": "#/components/schemas/agent_config"}, "permissions": {"$ref": "#/components/schemas/agent_permissions"}, "prompt": {"description": "Optional prompt override for the agent task.", "title": "Agent Prompt Override", "type": "string"}, "provider": {"$ref": "#/components/schemas/agent_provider"}}, "required": ["agent"], "title": "Agent Task", "type": "object"}, "artifacts": {"oneOf": [{"$ref": "#/components/schemas/artifacts_paths"}, {"$ref": "#/components/schemas/artifacts_expanded"}]}, "artifacts_expanded": {"properties": {"download": {"oneOf": [{"default": true, "description": "Enables downloading of all available artifacts at the end of a step.", "type": "boolean"}, {"description": "Define the list of filtered artifacts to be downloaded by the step.", "items": {"type": "string"}, "minItems": 1, "type": "array"}]}, "paths": {"$ref": "#/components/schemas/artifacts_paths"}, "upload": {"oneOf": [{"items": {"$ref": "#/components/schemas/artifacts_upload"}, "minItems": 1, "type": "array"}, {"items": {"type": "string"}, "minItems": 1, "type": "array"}]}}, "type": "object"}, "artifacts_paths": {"items": {"description": "Glob pattern for the path to the artifacts.", "title": "Artifact Path Pattern", "type": "string"}, "minItems": 1, "type": "array"}, "artifacts_upload": {"description": "The artifact to be uploaded.", "properties": {"capture-on": {"description": "The capture on field for the artifact.", "enum": ["success", "failed", "always"], "title": "Artifact Capture On", "type": "string"}, "depth": {"description": "The depth to search for the artifact files.", "minimum": 1, "title": "Artifact Depth", "type": "integer"}, "ignore-paths": {"description": "The ignore paths for the artifact.", "items": {"description": "Glob pattern for paths to ignore when capturing artifacts.", "title": "Ignore Path Pattern", "type": "string"}, "title": "Artifact Ignore Paths", "type": "array"}, "name": {"description": "The name of the artifact.", "title": "Artifact Name", "type": "string"}, "paths": {"$ref": "#/components/schemas/artifacts_paths"}, "type": {"default": "shared", "description": "The type of the artifact.", "enum": ["shared", "scoped", "test-reports"], "title": "Artifact Type", "type": "string"}}, "required": ["name", "paths"], "title": "Artifact Upload object", "type": "object"}, "cache": {"oneOf": [{"$ref": "#/components/schemas/cache_path"}, {"$ref": "#/components/schemas/cache_expanded"}]}, "cache_expanded": {"properties": {"key": {"properties": {"files": {"description": "Checksum of these file paths will be used to generate the cache key.", "items": {"description": "Path to a file or glob pattern of files in the repository which form the cache key.", "type": "string"}, "minItems": 1, "type": "array"}}, "required": ["files"], "title": "Cache Key", "type": "object"}, "path": {"$ref": "#/components/schemas/cache_path"}}, "required": ["path"], "title": "Cache", "type": "object"}, "cache_path": {"description": "Path to the directory to be cached, can be absolute or relative to the clone directory.", "title": "Cache Path", "type": "string"}, "clone": {"description": "Settings for cloning a repository into a container.", "properties": {"depth": {"default": 50, "description": "The depth argument of Git clone operation. It can be either number or \"full\" value", "example": "full", "oneOf": [{"minimum": 1, "type": "integer"}, {"enum": ["full"], "type": "string"}], "title": "Git Clone Depth"}, "enabled": {"default": true, "description": "Enables cloning of the repository.", "type": "boolean"}, "lfs": {"default": false, "description": "Enables the download of files from LFS storage when cloning.", "type": "boolean"}, "skip-ssl-verify": {"default": false, "description": "Disables SSL verification during Git clone operation, allowing the use of self-signed certificates.", "type": "boolean"}}, "title": "Clone Repository Settings", "type": "object"}, "cloud": {"description": "Custom cloud step runtime", "properties": {"arch": {"default": "x86", "description": "Architecture type used to run the step.", "enum": ["x86", "arm"], "type": "string"}, "atlassian-ip-ranges": {"default": false, "description": "Whether it uses Atlassian ip ranges.", "type": "boolean"}, "instance-type": {"description": "Instance type for the cloud runtime.", "type": "string"}, "platform": {"default": "linux", "description": "Platform type used to run the step.", "enum": ["linux", "windows"], "type": "string"}, "version": {"description": "Cloud Runtime version.", "type": "string"}}, "title": "Cloud step runtime", "type": "object"}, "condition": {"properties": {"changesets": {"additionalProperties": false, "description": "Condition on the changesets involved in the pipeline.", "maxProperties": 1, "properties": {"excludePaths": {"description": "Condition which holds only if all of the modified files match any of the specified patterns.", "items": {"description": "Glob pattern to match the file path.", "title": "File Path Pattern", "type": "string"}, "minItems": 1, "title": "Exclude Paths", "type": "array"}, "includePaths": {"description": "Condition which holds only if any of the modified files match any of the specified patterns.", "items": {"description": "Glob pattern to match the file path.", "title": "File Path Pattern", "type": "string"}, "minItems": 1, "title": "Include Paths", "type": "array"}}, "title": "Changeset Condition", "type": "object"}, "state": {"description": "Only execute a step or stage when a boolean expression evaluates to true.", "example": "PROD_DEPLOYMENT_ENABLED == true", "maxLength": 1000, "minLength": 1, "title": "Boolean expression condition", "type": "string"}}, "type": "object"}, "custom_pipeline": {"oneOf": [{"$ref": "#/components/schemas/items_with_variables"}, {"$ref": "#/components/schemas/import_pipeline"}]}, "fail_fast": {"default": false, "title": "Fail Fast", "type": "boolean"}, "final_item": {"additionalProperties": false, "properties": {"final": {"$ref": "#/components/schemas/final_step"}}, "type": "object"}, "final_step": {"allOf": [{"$ref": "#/components/schemas/step_base"}, {"description": "A special step that always runs at the end of a pipeline, even if earlier steps fail or the pipeline is stopped. Only one final step is allowed per pipeline and it must be the last item.", "properties": {"deployment": {"not": {}}, "fail-fast": {"not": {}}, "trigger": {"description": "The final step always runs automatically. Manual trigger is not supported.", "enum": ["automatic"], "type": "string"}}, "title": "Final Pipeline Step", "type": "object"}]}, "image": {"oneOf": [{"$ref": "#/components/schemas/image_no_auth"}, {"$ref": "#/components/schemas/image_basic_auth"}, {"$ref": "#/components/schemas/image_aws_auth"}, {"$ref": "#/components/schemas/image_name"}]}, "image_aws_auth": {"allOf": [{"$ref": "#/components/schemas/image_base"}, {"properties": {"aws": {"oneOf": [{"properties": {"access-key": {"description": "The access key for Amazon Elastic Container Registry (AWS ECR).", "title": "AWS Access Key", "type": "string"}, "secret-key": {"description": "The secret key for Amazon Elastic Container Registry (AWS ECR).", "title": "AWS Secret Key", "type": "string"}}, "required": ["access-key", "secret-key"], "type": "object"}, {"properties": {"oidc-role": {"description": "OIDC role with access to private Docker images hosted in Amazon Elastic Container Registry (AWS ECR).", "title": "OpenID Connect Role", "type": "string"}}, "required": ["oidc-role"], "type": "object"}]}}, "required": ["aws"], "type": "object"}]}, "image_base": {"description": "The parameters of the Docker image to use when running a step.", "properties": {"name": {"$ref": "#/components/schemas/image_name"}, "run-as-user": {"default": 0, "description": "The UID of a user in the docker image to run as. Overrides image's default user, specified user UID must be an existing user in the image with a valid home directory.", "title": "User ID", "type": "integer"}}, "required": ["name"], "title": "Docker Image Configuration", "type": "object"}, "image_basic_auth": {"allOf": [{"$ref": "#/components/schemas/image_base"}, {"properties": {"password": {"description": "The password to use when fetching the Docker image.", "title": "Docker Registry Password", "type": "string"}, "username": {"description": "The username to use when fetching the Docker image.", "title": "Docker Registry Username", "type": "string"}}, "required": ["username", "password"], "type": "object"}]}, "image_name": {"default": "atlassian/default-image:latest", "description": "The name of the Docker image which may or may not include registry URL, tag, and digest value.", "title": "Docker Image Name", "type": "string"}, "image_no_auth": {"allOf": [{"$ref": "#/components/schemas/image_base"}, {"properties": {"aws": {"not": {}}, "password": {"not": {}}, "username": {"not": {}}}, "type": "object"}]}, "import_inline_pipeline": {"additionalProperties": false, "properties": {"import": {"description": "The import needs to match the following format: {repo-slug|repo-uuid}:{tag-name|branch-name}:{pipeline-name}.", "pattern": "^[^:]+:[^:]+:[^:]+$", "title": "Identifier of the pipeline configuration to import", "type": "string"}, "variables": {"$ref": "#/components/schemas/pipeline_variables"}}, "required": ["import"], "type": "object"}, "import_pipeline": {"oneOf": [{"$ref": "#/components/schemas/import_inline_pipeline"}, {"$ref": "#/components/schemas/import_source_pipeline"}]}, "import_source": {"additionalProperties": false, "properties": {"import": {"description": "The import needs to match one of the following formats: {file-path} or {repo-slug|repo-uuid}:{tag-name|branch-name} or {repo-slug|repo-uuid}:{tag-name|branch-name}:{file-path}.", "pattern": "^[^:]+(:[^:]+)?(:[^:]+)?$", "title": "Location of pipeline configuration to import pipelines from", "type": "string"}}, "required": ["import"], "type": "object"}, "import_source_pipeline": {"additionalProperties": false, "properties": {"import": {"description": "The import needs to match the following format: {pipeline-name}@{import-source-name}.", "pattern": "^[^@]+@[^@]+$", "title": "Identifier of the pipeline configuration to import", "type": "string"}, "variables": {"$ref": "#/components/schemas/pipeline_variables"}}, "required": ["import"], "type": "object"}, "items": {"description": "List of steps, stages and parallel groups of the pipeline.", "items": {"oneOf": [{"$ref": "#/components/schemas/step_item"}, {"$ref": "#/components/schemas/parallel_item"}, {"$ref": "#/components/schemas/stage_item"}, {"$ref": "#/components/schemas/final_item"}]}, "minItems": 1, "title": "Pipeline Items", "type": "array"}, "items_with_variables": {"description": "List of variables, steps, stages and parallel groups of the custom pipeline.", "items": {"oneOf": [{"$ref": "#/components/schemas/variables_item"}, {"$ref": "#/components/schemas/step_item"}, {"$ref": "#/components/schemas/parallel_item"}, {"$ref": "#/components/schemas/stage_item"}]}, "minItems": 1, "title": "Custom Pipeline Items", "type": "array"}, "max_time": {"default": 120, "description": "The maximum time a step can execute for in minutes.", "example": 60, "exclusiveMinimum": 0, "type": "integer"}, "parallel": {"oneOf": [{"$ref": "#/components/schemas/parallel_steps"}, {"$ref": "#/components/schemas/parallel_expanded"}]}, "parallel_expanded": {"properties": {"fail-fast": {"$ref": "#/components/schemas/fail_fast", "description": "Stop the whole parallel group in case one of its steps fails."}, "steps": {"$ref": "#/components/schemas/parallel_steps"}}, "required": ["steps"], "type": "object"}, "parallel_item": {"additionalProperties": false, "properties": {"parallel": {"$ref": "#/components/schemas/parallel"}}, "type": "object"}, "parallel_steps": {"description": "List of steps in the parallel group to run concurrently.", "items": {"$ref": "#/components/schemas/step_item"}, "minItems": 1, "title": "Parallel Group Steps", "type": "array"}, "pipe": {"description": "The pipe to execute.", "example": {"pipe": "atlassian/test-pipe:2.2.0", "variables": {"BAZ": ["QUX", "QUZ"], "FOO": "BAR"}}, "properties": {"pipe": {"description": "The full pipe identifier.", "title": "Pipe Identifier", "type": "string"}, "variables": {"additionalProperties": {"description": "Environment variable value", "oneOf": [{"type": "string"}, {"items": {"type": "string"}, "type": "array"}]}, "description": "Environment variables passed to the pipe container.", "title": "Pipe Variables", "type": "object"}}, "required": ["pipe"], "title": "Pipe", "type": "object"}, "pipeline": {"oneOf": [{"$ref": "#/components/schemas/items"}, {"$ref": "#/components/schemas/import_pipeline"}]}, "pipeline_variables": {"description": "List of variables for the custom pipeline.", "items": {"description": "Settings for the custom variable.", "properties": {"allowed-values": {"description": "A list of values that are allowed for the variable.", "items": {"title": "Allowed Variable Value", "type": "string"}, "minItems": 1, "title": "Allowed Variable Values", "type": "array"}, "default": {"title": "Default Variable Value", "type": "string"}, "description": {"title": "Variable Description", "type": "string"}, "name": {"title": "Variable Name", "type": "string"}}, "required": ["name"], "title": "Custom Pipeline Variable", "type": "object"}, "minItems": 1, "title": "Custom Pipeline Variables", "type": "array"}, "pipelines_configuration": {"properties": {"clone": {"$ref": "#/components/schemas/clone"}, "definitions": {"description": "The definitions of caches and services used in the declared pipelines.", "properties": {"agents": {"additionalProperties": {"$ref": "#/components/schemas/agent_definition"}, "title": "Agent definitions", "type": "object"}, "caches": {"additionalProperties": {"$ref": "#/components/schemas/cache"}, "title": "Custom cache definitions", "type": "object"}, "imports": {"pipelines": {"additionalProperties": {"$ref": "#/components/schemas/import_source"}, "description": "Definitions of the pipelines imports that can be used in this file.", "title": "Import source definitions", "type": "object"}}, "pipelines": {"additionalProperties": {"$ref": "#/components/schemas/custom_pipeline"}, "description": "Definitions of the pipelines which can be used in other repositories of the same Bitbucket workspace.", "title": "Shared pipeline definitions", "type": "object"}, "services": {"additionalProperties": {"$ref": "#/components/schemas/service"}, "title": "Service definitions", "type": "object"}}, "title": "Global Definitions", "type": "object"}, "export": {"default": false, "description": "Allows other Bitbucket repositories to import pipeline definitions from this file. A shared pipeline definition can't contain another `import` property.", "title": "Enables shared pipelines definitions.", "type": "boolean"}, "image": {"$ref": "#/components/schemas/image"}, "labels": {"description": "Additional key value data supplied in the configuration YAML.", "example": {"buildTool": "maven", "jvm": "jdk17"}, "title": "Pipeline Labels", "type": "object"}, "options": {"description": "Global options allow to override the default values applied to all steps in all declared pipelines.", "properties": {"docker": {"default": false, "description": "Enables Docker service for every step.", "type": "boolean"}, "max-time": {"$ref": "#/components/schemas/max_time"}, "runs-on": {"$ref": "#/components/schemas/runs_on"}, "runtime": {"$ref": "#/components/schemas/runtime"}, "size": {"$ref": "#/components/schemas/size"}}, "title": "Global Options", "type": "object"}, "pipelines": {"properties": {"branches": {"additionalProperties": {"$ref": "#/components/schemas/pipeline"}, "description": "Branch-specific build pipelines.", "title": "Branch Pipelines", "type": "object"}, "custom": {"additionalProperties": {"$ref": "#/components/schemas/custom_pipeline"}, "description": "Pipelines that can only be triggered manually or be scheduled.", "title": "Custom Pipelines", "type": "object"}, "default": {"$ref": "#/components/schemas/pipeline", "description": "Default pipeline runs on every push except for tags unless a branch-specific pipeline is defined.", "title": "Default Pipeline"}, "pull-requests": {"additionalProperties": {"$ref": "#/components/schemas/pull_requests_pipeline"}, "description": "Pull-request-specific build pipelines.", "title": "Pull Request Pipelines", "type": "object"}, "tags": {"additionalProperties": {"$ref": "#/components/schemas/pipeline"}, "description": "Tag-specific build pipelines.", "title": "Tag Pipelines", "type": "object"}}, "title": "Pipelines", "type": "object"}, "triggers": {"additionalProperties": {"$ref": "#/components/schemas/trigger_configuration_list"}, "description": "Event-based triggers that automatically run pipelines when specific events occur. The property names represent trigger types (e.g., repository-push, pullrequest-push, pipeline-completed, deployment-completed, pullrequest-created).", "example": {"deployment-completed": [{"condition": "BITBUCKET_TRIGGER_DEPLOYMENT_STATUS == \"FAILED\"", "pipelines": ["pipeline2"]}], "pipeline-completed": [{"condition": "BITBUCKET_TRIGGER_PIPELINE_STATUS == \"FAILED\"", "pipelines": ["pipeline1"]}], "pullrequest-created": [{"condition": "glob(BITBUCKET_BRANCH, \"feature/*\")", "pipelines": ["pipeline1"]}], "pullrequest-fulfilled": [{"condition": "glob(BITBUCKET_BRANCH, \"feature/*\")", "pipelines": ["pipeline2"]}], "pullrequest-push": [{"condition": "BITBUCKET_PR_DESTINATION_BRANCH == \"main\"", "pipelines": ["pipeline2"]}], "pullrequest-rejected": [{"condition": "glob(BITBUCKET_BRANCH, \"feature/*\")", "pipelines": ["pipeline1"]}], "pullrequest-reviewer-status-updated": [{"condition": "glob(BITBUCKET_BRANCH, \"feature/*\")", "pipelines": ["pipeline1"]}], "pullrequest-updated": [{"condition": "glob(BITBUCKET_BRANCH, \"feature/*\")", "pipelines": ["pipeline2"]}], "repository-push": [{"condition": "BITBUCKET_BRANCH == \"main\"", "pipelines": ["pipeline1"]}]}, "title": "Pipeline Triggers", "type": "object"}}, "type": "object"}, "pull_requests_pipeline": {"$ref": "#/components/schemas/items"}, "runs_on": {"oneOf": [{"$ref": "#/components/schemas/runs_on_item"}, {"$ref": "#/components/schemas/runs_on_expanded"}]}, "runs_on_expanded": {"description": "Required labels of a runner to run the step.", "example": ["self.hosted", "linux"], "items": {"$ref": "#/components/schemas/runs_on_item"}, "maxItems": 10, "minItems": 1, "title": "Step Runner Labels", "type": "array"}, "runs_on_item": {"description": "Label of a runner.", "maxLength": 50, "title": "Step Runner Label", "type": "string"}, "runtime": {"description": "Custom step runtime", "properties": {"cloud": {"$ref": "#/components/schemas/cloud"}, "self-hosted": {"$ref": "#/components/schemas/self-hosted"}}, "title": "Step Runtime", "type": "object"}, "script": {"items": {"oneOf": [{"description": "The command to execute.", "example": "echo \"hello world\"", "title": "Script Command", "type": "string"}, {"$ref": "#/components/schemas/pipe"}, {"$ref": "#/components/schemas/agent_task"}]}, "minItems": 1, "type": "array"}, "self-hosted": {"description": "Custom self-hosted step runtime", "properties": {"cpu": {"description": "Cpu available to runner.", "title": "Cpu", "type": "integer"}, "memory": {"description": "Memory (mb) available to runner.", "title": "Memory", "type": "integer"}, "storage": {"oneOf": [{"properties": {"gcp": {"$ref": "#/components/schemas/storage_gcp_auth"}}, "required": ["gcp"], "type": "object"}, {"properties": {"aws": {"$ref": "#/components/schemas/storage_aws_auth"}}, "required": ["aws"], "type": "object"}]}, "volumes": {"default": [], "description": "Volumes to be mounted into the build container.", "items": {"description": "The volume to be mounted into the build container", "example": "/host-directory:/workdir/path", "title": "Volume mount", "type": "string"}, "type": "array"}}, "title": "Self-hosted step runtime", "type": "object"}, "service": {"description": "Custom service properties", "properties": {"image": {"$ref": "#/components/schemas/image"}, "memory": {"default": 1024, "description": "Memory limit for the service container, in megabytes.", "minimum": 128, "title": "Service Memory", "type": "integer"}, "type": {"description": "Specifies Docker service container (to run Docker-in-Docker).", "enum": ["docker"], "type": "string"}, "variables": {"additionalProperties": {"description": "Environment variable value", "title": "Service Variable", "type": "string"}, "description": "Environment variables passed to the service container.", "minProperties": 1, "title": "Service Variables", "type": "object"}}, "title": "Service definition", "type": "object"}, "size": {"default": "1x", "description": "The size of the step, sets the amount of resources allocated.", "enum": ["1x", "2x", "4x", "8x", "16x", "32x"], "title": "Step Size", "type": "string"}, "stage": {"properties": {"condition": {"$ref": "#/components/schemas/condition", "description": "The condition to execute the stage.", "title": "Stage Condition"}, "deployment": {"description": "The deployment environment for the stage.", "title": "Stage Deployment Environment", "type": "string"}, "environment": {"description": "The environment for the stage.", "title": "Stage Environment", "type": "string"}, "name": {"description": "The name of the stage.", "title": "Stage Name", "type": "string"}, "steps": {"description": "List of steps in the stage.", "items": {"properties": {"step": {"allOf": [{"$ref": "#/components/schemas/step_base"}, {"properties": {"condition": {"not": {}}}, "type": "object"}]}}, "type": "object"}, "minItems": 1, "title": "Stage Steps", "type": "array"}, "trigger": {"$ref": "#/components/schemas/trigger", "description": "The trigger used for the pipeline stage.", "title": "Stage Trigger"}}, "required": ["steps"], "type": "object"}, "stage_item": {"additionalProperties": false, "properties": {"stage": {"$ref": "#/components/schemas/stage"}}, "type": "object"}, "step": {"allOf": [{"$ref": "#/components/schemas/step_base"}, {"properties": {"condition": {"$ref": "#/components/schemas/condition", "description": "The condition to execute the step.", "title": "Step Condition"}}, "type": "object"}]}, "step_auth": {"description": "Optional auth configuration for a step.", "properties": {"system": {"properties": {"scopes": {"description": "Additional system scopes for the step.", "items": {"type": "string"}, "title": "System Scopes", "type": "array", "uniqueItems": true}}, "title": "System Auth", "type": "object"}}, "title": "Step Auth", "type": "object"}, "step_base": {"properties": {"after-script": {"$ref": "#/components/schemas/script", "description": "List of commands to execute after the step succeeds or fails.", "title": "Step Post Script"}, "artifacts": {"$ref": "#/components/schemas/artifacts"}, "auth": {"$ref": "#/components/schemas/step_auth", "description": "Optional auth configuration for the step.", "title": "Step Auth"}, "caches": {"description": "Caches enabled for the step.", "items": {"description": "Reference to a cache defined under global definitions.", "title": "Cache Name", "type": "string"}, "minItems": 1, "title": "Step Caches", "type": "array"}, "clone": {"$ref": "#/components/schemas/clone"}, "concurrency-group": {"description": "The concurrency group for the step.", "maxLength": 50, "title": "Concurrency group", "type": "string"}, "custom": {"description": "The name of the custom pipeline to run, if the step type is pipeline.", "title": "Custom", "type": "string"}, "deployment": {"description": "The deployment environment for the step.", "title": "Step Deployment Environment", "type": "string"}, "environment": {"description": "The environment for the step.", "title": "Step Environment", "type": "string"}, "fail-fast": {"$ref": "#/components/schemas/fail_fast", "description": "Stop the parent parallel group in case this step fails."}, "image": {"$ref": "#/components/schemas/image"}, "input-variables": {"additionalProperties": {"description": "input variable value", "oneOf": [{"type": "string"}]}, "description": "Variables from the parent step that are provided to the child pipeline.", "example": {"VAR_1": "VALUE_1", "VAR_2": "${BITBUCKET_BRANCH}"}, "maxProperties": 20, "minProperties": 1, "title": "Input Variables", "type": "object"}, "max-time": {"$ref": "#/components/schemas/max_time", "title": "Step Maximum Time"}, "name": {"description": "The name of the step.", "example": "Build and test", "title": "Step Name", "type": "string"}, "oidc": {"description": "Enables the use of OpenID Connect to connect a pipeline step to a resource server.", "type": "boolean"}, "runs-on": {"$ref": "#/components/schemas/runs_on"}, "runtime": {"$ref": "#/components/schemas/runtime"}, "script": {"$ref": "#/components/schemas/script", "description": "List of commands that are executed in sequence.", "title": "Step Script"}, "services": {"description": "Services enabled for the step.", "items": {"description": "Reference to a service defined under global definitions.", "title": "Service Name", "type": "string"}, "maxItems": 5, "minItems": 1, "title": "Step Services", "type": "array"}, "size": {"$ref": "#/components/schemas/size"}, "trigger": {"$ref": "#/components/schemas/trigger", "description": "The trigger used for the pipeline step.", "title": "Step Trigger"}, "type": {"default": "shared", "description": "The type of the step.", "enum": ["inline", "pipeline"], "title": "Step Type", "type": "string"}}, "title": "Pipeline Step", "type": "object"}, "step_item": {"additionalProperties": false, "properties": {"step": {"$ref": "#/components/schemas/step"}}, "type": "object"}, "storage_aws_auth": {"description": "Amazon web services self hosted storage", "oneOf": [{"required": ["access-key", "secret-key"]}, {"required": ["oidc-role"]}], "properties": {"access-key": {"description": "The AWS access key", "type": "string"}, "bucket": {"description": "The name of the S3 bucket", "type": "string"}, "oidc-role": {"description": "The OIDC role to assume", "type": "string"}, "region": {"description": "The AWS region", "type": "string"}, "secret-key": {"description": "The AWS secret key", "type": "string"}}, "required": ["bucket", "region"], "title": "Custom aws self hosted storage", "type": "object"}, "storage_gcp_auth": {"description": "Google Cloud Platform self hosted storage", "properties": {"bucket": {"description": "The name of the GCP bucket", "type": "string"}, "key-file": {"description": "The GCP key file contents encoded in Base64 format", "type": "string"}}, "required": ["bucket", "key-file"], "title": "Custom GCP self hosted storage", "type": "object"}, "trigger": {"default": "automatic", "enum": ["automatic", "manual"], "type": "string"}, "trigger_configuration": {"description": "Configuration that defines when and which pipelines to trigger.", "properties": {"condition": {"description": "Boolean expression that determines whether the trigger should execute.", "example": "BITBUCKET_BRANCH == \"main\"", "title": "Trigger Condition", "type": "string"}, "pipelines": {"description": "List of pipeline names to trigger when the condition is met. Can reference pipelines from the custom section.", "items": {"description": "Name of a pipeline defined in the custom pipelines section.", "title": "Pipeline Name", "type": "string"}, "minItems": 1, "title": "Pipeline Names", "type": "array"}}, "required": ["condition", "pipelines"], "title": "Trigger Configuration", "type": "object"}, "trigger_configuration_list": {"description": "List of trigger configurations for a specific trigger type.", "items": {"$ref": "#/components/schemas/trigger_configuration"}, "minItems": 1, "title": "Trigger Configuration List", "type": "array"}, "trigger_context": {"description": "Context of the trigger that started the pipeline. Only returned for pipelines triggered by a parent step.", "properties": {"parent_pipeline_run_uuid": {"description": "The UUID of the pipeline run that contains the parent step that triggered this pipeline.", "example": "{00000000-0000-0000-0000-000000000000}", "title": "Parent Pipeline Run UUID", "type": "string"}, "parent_pipeline_uuid": {"description": "The UUID of the pipeline that contains the parent step that triggered this pipeline.", "example": "{00000000-0000-0000-0000-000000000000}", "title": "Parent Pipeline UUID", "type": "string"}, "parent_step_uuid": {"description": "The UUID of the parent step that triggered this pipeline.", "example": "{00000000-0000-0000-0000-000000000000}", "title": "Parent Step UUID", "type": "string"}, "type": {"description": "The type of trigger that started the pipeline.", "enum": ["parent_step"], "title": "Pipeline Trigger", "type": "string"}}, "type": "object"}, "variables_item": {"additionalProperties": false, "properties": {"variables": {"description": "List of variables for the custom pipeline.", "items": {"description": "Settings for the custom variable.", "properties": {"allowed-values": {"description": "A list of values that are allowed for the variable.", "items": {"title": "Allowed Variable Value", "type": "string"}, "minItems": 1, "title": "Allowed Variable Values", "type": "array"}, "default": {"title": "Default Variable Value", "type": "string"}, "description": {"title": "Variable Description", "type": "string"}, "name": {"title": "Variable Name", "type": "string"}}, "required": ["name"], "title": "Custom Pipeline Variable", "type": "object"}, "minItems": 1, "title": "Custom Pipeline Variables", "type": "array"}}, "type": "object"}}}} \ No newline at end of file +{"$id": "https://bitbucket.org/product/features/pipelines", "$ref": "#/components/schemas/pipelines_configuration", "$schema": "http://json-schema.org/draft-07/schema#", "components": {"schemas": {"agent_config": {"description": "Optional agent config path and inline overrides.", "properties": {"overrides": {"additionalProperties": true, "description": "Inline config overrides for the agent.", "title": "Agent Config Overrides", "type": "object"}, "path": {"description": "Path to a config file used by the agent.", "title": "Agent Config Path", "type": "string"}}, "title": "Agent Config", "type": "object"}, "agent_definition": {"description": "Defines an agent that can be referenced by agent tasks.", "properties": {"config": {"$ref": "#/components/schemas/agent_config"}, "permissions": {"$ref": "#/components/schemas/agent_permissions"}, "prompt": {"description": "Prompt used by the agent definition.", "title": "Agent Prompt", "type": "string"}, "provider": {"$ref": "#/components/schemas/agent_provider"}}, "required": ["prompt"], "title": "Agent Definition", "type": "object"}, "agent_permissions": {"description": "Optional permissions configuration for the agent.", "properties": {"on-ask": {"$ref": "#/components/schemas/agent_permissions_on_ask"}}, "title": "Agent Permissions", "type": "object"}, "agent_permissions_on_ask": {"description": "How to respond when the agent asks for permissions.", "enum": ["allow", "deny"], "title": "On Ask Permission Mode", "type": "string"}, "agent_provider": {"description": "Agent provider used to run the task.", "enum": ["rovodev", "claude"], "title": "Agent Provider", "type": "string"}, "agent_task": {"description": "The agentic task to execute.", "properties": {"agent": {"description": "Name of the agent definition referenced by this task.", "title": "Agent Name", "type": "string"}, "config": {"$ref": "#/components/schemas/agent_config"}, "permissions": {"$ref": "#/components/schemas/agent_permissions"}, "prompt": {"description": "Optional prompt override for the agent task.", "title": "Agent Prompt Override", "type": "string"}, "provider": {"$ref": "#/components/schemas/agent_provider"}}, "required": ["agent"], "title": "Agent Task", "type": "object"}, "artifacts": {"oneOf": [{"$ref": "#/components/schemas/artifacts_paths"}, {"$ref": "#/components/schemas/artifacts_expanded"}]}, "artifacts_expanded": {"properties": {"download": {"oneOf": [{"default": true, "description": "Enables downloading of all available artifacts at the end of a step.", "type": "boolean"}, {"description": "Define the list of filtered artifacts to be downloaded by the step.", "items": {"type": "string"}, "minItems": 1, "type": "array"}]}, "paths": {"$ref": "#/components/schemas/artifacts_paths"}, "upload": {"oneOf": [{"items": {"$ref": "#/components/schemas/artifacts_upload"}, "minItems": 1, "type": "array"}, {"items": {"type": "string"}, "minItems": 1, "type": "array"}]}}, "type": "object"}, "artifacts_paths": {"items": {"description": "Glob pattern for the path to the artifacts.", "title": "Artifact Path Pattern", "type": "string"}, "minItems": 1, "type": "array"}, "artifacts_upload": {"description": "The artifact to be uploaded.", "properties": {"capture-on": {"description": "The capture on field for the artifact.", "enum": ["success", "failed", "always"], "title": "Artifact Capture On", "type": "string"}, "depth": {"description": "The depth to search for the artifact files.", "minimum": 1, "title": "Artifact Depth", "type": "integer"}, "ignore-paths": {"description": "The ignore paths for the artifact.", "items": {"description": "Glob pattern for paths to ignore when capturing artifacts.", "title": "Ignore Path Pattern", "type": "string"}, "title": "Artifact Ignore Paths", "type": "array"}, "name": {"description": "The name of the artifact.", "title": "Artifact Name", "type": "string"}, "paths": {"$ref": "#/components/schemas/artifacts_paths"}, "type": {"default": "shared", "description": "The type of the artifact.", "enum": ["shared", "scoped", "test-reports"], "title": "Artifact Type", "type": "string"}}, "required": ["name", "paths"], "title": "Artifact Upload object", "type": "object"}, "cache": {"oneOf": [{"$ref": "#/components/schemas/cache_path"}, {"$ref": "#/components/schemas/cache_expanded"}]}, "cache_expanded": {"properties": {"key": {"properties": {"files": {"description": "Checksum of these file paths will be used to generate the cache key.", "items": {"description": "Path to a file or glob pattern of files in the repository which form the cache key.", "type": "string"}, "minItems": 1, "type": "array"}}, "required": ["files"], "title": "Cache Key", "type": "object"}, "path": {"$ref": "#/components/schemas/cache_path"}}, "required": ["path"], "title": "Cache", "type": "object"}, "cache_path": {"description": "Path to the directory to be cached, can be absolute or relative to the clone directory.", "title": "Cache Path", "type": "string"}, "clone": {"description": "Settings for cloning a repository into a container.", "properties": {"depth": {"default": 50, "description": "The depth argument of Git clone operation. It can be either number or \"full\" value", "example": "full", "oneOf": [{"minimum": 1, "type": "integer"}, {"enum": ["full"], "type": "string"}], "title": "Git Clone Depth"}, "enabled": {"default": true, "description": "Enables cloning of the repository.", "type": "boolean"}, "lfs": {"default": false, "description": "Enables the download of files from LFS storage when cloning.", "type": "boolean"}, "skip-ssl-verify": {"default": false, "description": "Disables SSL verification during Git clone operation, allowing the use of self-signed certificates.", "type": "boolean"}}, "title": "Clone Repository Settings", "type": "object"}, "cloud": {"description": "Custom cloud step runtime", "properties": {"arch": {"default": "x86", "description": "Architecture type used to run the step.", "enum": ["x86", "arm"], "type": "string"}, "atlassian-ip-ranges": {"default": false, "description": "Whether it uses Atlassian ip ranges.", "type": "boolean"}, "instance-type": {"description": "Instance type for the cloud runtime.", "type": "string"}, "platform": {"default": "linux", "description": "Platform type used to run the step.", "enum": ["linux", "windows"], "type": "string"}, "version": {"description": "Cloud Runtime version.", "type": "string"}}, "title": "Cloud step runtime", "type": "object"}, "condition": {"properties": {"changesets": {"additionalProperties": false, "description": "Condition on the changesets involved in the pipeline.", "maxProperties": 1, "properties": {"excludePaths": {"description": "Condition which holds only if all of the modified files match any of the specified patterns.", "items": {"description": "Glob pattern to match the file path.", "title": "File Path Pattern", "type": "string"}, "minItems": 1, "title": "Exclude Paths", "type": "array"}, "includePaths": {"description": "Condition which holds only if any of the modified files match any of the specified patterns.", "items": {"description": "Glob pattern to match the file path.", "title": "File Path Pattern", "type": "string"}, "minItems": 1, "title": "Include Paths", "type": "array"}}, "title": "Changeset Condition", "type": "object"}, "state": {"description": "Only execute a step or stage when a boolean expression evaluates to true.", "example": "PROD_DEPLOYMENT_ENABLED == true", "maxLength": 1000, "minLength": 1, "title": "Boolean expression condition", "type": "string"}}, "type": "object"}, "custom_pipeline": {"oneOf": [{"$ref": "#/components/schemas/items_with_variables"}, {"$ref": "#/components/schemas/import_pipeline"}]}, "fail_fast": {"default": false, "title": "Fail Fast", "type": "boolean"}, "final_item": {"additionalProperties": false, "properties": {"final": {"$ref": "#/components/schemas/final_step"}}, "type": "object"}, "final_step": {"allOf": [{"$ref": "#/components/schemas/step_base"}, {"description": "A special step that always runs at the end of a pipeline, even if earlier steps fail or the pipeline is stopped. Only one final step is allowed per pipeline and it must be the last item.", "properties": {"deployment": {"not": {}}, "fail-fast": {"not": {}}, "trigger": {"description": "The final step always runs automatically. Manual trigger is not supported.", "enum": ["automatic"], "type": "string"}}, "title": "Final Pipeline Step", "type": "object"}]}, "image": {"oneOf": [{"$ref": "#/components/schemas/image_no_auth"}, {"$ref": "#/components/schemas/image_basic_auth"}, {"$ref": "#/components/schemas/image_aws_auth"}, {"$ref": "#/components/schemas/image_name"}]}, "image_aws_auth": {"allOf": [{"$ref": "#/components/schemas/image_base"}, {"properties": {"aws": {"oneOf": [{"properties": {"access-key": {"description": "The access key for Amazon Elastic Container Registry (AWS ECR).", "title": "AWS Access Key", "type": "string"}, "secret-key": {"description": "The secret key for Amazon Elastic Container Registry (AWS ECR).", "title": "AWS Secret Key", "type": "string"}}, "required": ["access-key", "secret-key"], "type": "object"}, {"properties": {"oidc-role": {"description": "OIDC role with access to private Docker images hosted in Amazon Elastic Container Registry (AWS ECR).", "title": "OpenID Connect Role", "type": "string"}}, "required": ["oidc-role"], "type": "object"}]}}, "required": ["aws"], "type": "object"}]}, "image_base": {"description": "The parameters of the Docker image to use when running a step.", "properties": {"name": {"$ref": "#/components/schemas/image_name"}, "run-as-user": {"default": 0, "description": "The UID of a user in the docker image to run as. Overrides image's default user, specified user UID must be an existing user in the image with a valid home directory.", "title": "User ID", "type": "integer"}}, "required": ["name"], "title": "Docker Image Configuration", "type": "object"}, "image_basic_auth": {"allOf": [{"$ref": "#/components/schemas/image_base"}, {"properties": {"password": {"description": "The password to use when fetching the Docker image.", "title": "Docker Registry Password", "type": "string"}, "username": {"description": "The username to use when fetching the Docker image.", "title": "Docker Registry Username", "type": "string"}}, "required": ["username", "password"], "type": "object"}]}, "image_name": {"default": "atlassian/default-image:latest", "description": "The name of the Docker image which may or may not include registry URL, tag, and digest value.", "title": "Docker Image Name", "type": "string"}, "image_no_auth": {"allOf": [{"$ref": "#/components/schemas/image_base"}, {"properties": {"aws": {"not": {}}, "password": {"not": {}}, "username": {"not": {}}}, "type": "object"}]}, "import_inline_pipeline": {"additionalProperties": false, "properties": {"import": {"description": "The import needs to match the following format: {repo-slug|repo-uuid}:{tag-name|branch-name}:{pipeline-name}.", "pattern": "^[^:]+:[^:]+:[^:]+$", "title": "Identifier of the pipeline configuration to import", "type": "string"}, "variables": {"$ref": "#/components/schemas/pipeline_variables"}}, "required": ["import"], "type": "object"}, "import_pipeline": {"oneOf": [{"$ref": "#/components/schemas/import_inline_pipeline"}, {"$ref": "#/components/schemas/import_source_pipeline"}]}, "import_source": {"additionalProperties": false, "properties": {"import": {"description": "The import needs to match one of the following formats: {file-path} or {repo-slug|repo-uuid}:{tag-name|branch-name} or {repo-slug|repo-uuid}:{tag-name|branch-name}:{file-path}.", "pattern": "^[^:]+(:[^:]+)?(:[^:]+)?$", "title": "Location of pipeline configuration to import pipelines from", "type": "string"}}, "required": ["import"], "type": "object"}, "import_source_pipeline": {"additionalProperties": false, "properties": {"import": {"description": "The import needs to match the following format: {pipeline-name}@{import-source-name}.", "pattern": "^[^@]+@[^@]+$", "title": "Identifier of the pipeline configuration to import", "type": "string"}, "variables": {"$ref": "#/components/schemas/pipeline_variables"}}, "required": ["import"], "type": "object"}, "items": {"description": "List of steps, stages and parallel groups of the pipeline.", "items": {"oneOf": [{"$ref": "#/components/schemas/step_item"}, {"$ref": "#/components/schemas/parallel_item"}, {"$ref": "#/components/schemas/stage_item"}, {"$ref": "#/components/schemas/final_item"}]}, "minItems": 1, "title": "Pipeline Items", "type": "array"}, "items_with_variables": {"description": "List of variables, steps, stages and parallel groups of the custom pipeline.", "items": {"oneOf": [{"$ref": "#/components/schemas/variables_item"}, {"$ref": "#/components/schemas/step_item"}, {"$ref": "#/components/schemas/parallel_item"}, {"$ref": "#/components/schemas/stage_item"}]}, "minItems": 1, "title": "Custom Pipeline Items", "type": "array"}, "max_time": {"default": 120, "description": "The maximum time a step can execute for in minutes.", "example": 60, "exclusiveMinimum": 0, "type": "integer"}, "parallel": {"oneOf": [{"$ref": "#/components/schemas/parallel_steps"}, {"$ref": "#/components/schemas/parallel_expanded"}]}, "parallel_expanded": {"properties": {"fail-fast": {"$ref": "#/components/schemas/fail_fast", "description": "Stop the whole parallel group in case one of its steps fails."}, "steps": {"$ref": "#/components/schemas/parallel_steps"}}, "required": ["steps"], "type": "object"}, "parallel_item": {"additionalProperties": false, "properties": {"parallel": {"$ref": "#/components/schemas/parallel"}}, "type": "object"}, "parallel_steps": {"description": "List of steps in the parallel group to run concurrently.", "items": {"$ref": "#/components/schemas/step_item"}, "minItems": 1, "title": "Parallel Group Steps", "type": "array"}, "pipe": {"description": "The pipe to execute.", "example": {"pipe": "atlassian/test-pipe:2.2.0", "variables": {"BAZ": ["QUX", "QUZ"], "FOO": "BAR"}}, "properties": {"pipe": {"description": "The full pipe identifier.", "title": "Pipe Identifier", "type": "string"}, "variables": {"additionalProperties": {"description": "Environment variable value", "oneOf": [{"type": "string"}, {"items": {"type": "string"}, "type": "array"}]}, "description": "Environment variables passed to the pipe container.", "title": "Pipe Variables", "type": "object"}}, "required": ["pipe"], "title": "Pipe", "type": "object"}, "pipeline": {"oneOf": [{"$ref": "#/components/schemas/items"}, {"$ref": "#/components/schemas/import_pipeline"}]}, "pipeline_variables": {"description": "List of variables for the custom pipeline.", "items": {"description": "Settings for the custom variable.", "properties": {"allowed-values": {"description": "A list of values that are allowed for the variable.", "items": {"title": "Allowed Variable Value", "type": "string"}, "minItems": 1, "title": "Allowed Variable Values", "type": "array"}, "default": {"title": "Default Variable Value", "type": "string"}, "description": {"title": "Variable Description", "type": "string"}, "name": {"title": "Variable Name", "type": "string"}}, "required": ["name"], "title": "Custom Pipeline Variable", "type": "object"}, "minItems": 1, "title": "Custom Pipeline Variables", "type": "array"}, "pipelines_configuration": {"properties": {"clone": {"$ref": "#/components/schemas/clone"}, "definitions": {"description": "The definitions of caches and services used in the declared pipelines.", "properties": {"agents": {"additionalProperties": {"$ref": "#/components/schemas/agent_definition"}, "title": "Agent definitions", "type": "object"}, "caches": {"additionalProperties": {"$ref": "#/components/schemas/cache"}, "title": "Custom cache definitions", "type": "object"}, "imports": {"pipelines": {"additionalProperties": {"$ref": "#/components/schemas/import_source"}, "description": "Definitions of the pipelines imports that can be used in this file.", "title": "Import source definitions", "type": "object"}}, "pipelines": {"additionalProperties": {"$ref": "#/components/schemas/custom_pipeline"}, "description": "Definitions of the pipelines which can be used in other repositories of the same Bitbucket workspace.", "title": "Shared pipeline definitions", "type": "object"}, "services": {"additionalProperties": {"$ref": "#/components/schemas/service"}, "title": "Service definitions", "type": "object"}}, "title": "Global Definitions", "type": "object"}, "export": {"default": false, "description": "Allows other Bitbucket repositories to import pipeline definitions from this file. A shared pipeline definition can't contain another `import` property.", "title": "Enables shared pipelines definitions.", "type": "boolean"}, "image": {"$ref": "#/components/schemas/image"}, "labels": {"description": "Additional key value data supplied in the configuration YAML.", "example": {"buildTool": "maven", "jvm": "jdk17"}, "title": "Pipeline Labels", "type": "object"}, "options": {"description": "Global options allow to override the default values applied to all steps in all declared pipelines.", "properties": {"docker": {"default": false, "description": "Enables Docker service for every step.", "type": "boolean"}, "max-time": {"$ref": "#/components/schemas/max_time"}, "runs-on": {"$ref": "#/components/schemas/runs_on"}, "runtime": {"$ref": "#/components/schemas/runtime"}, "size": {"$ref": "#/components/schemas/size"}}, "title": "Global Options", "type": "object"}, "pipelines": {"properties": {"branches": {"additionalProperties": {"$ref": "#/components/schemas/pipeline"}, "description": "Branch-specific build pipelines.", "title": "Branch Pipelines", "type": "object"}, "custom": {"additionalProperties": {"$ref": "#/components/schemas/custom_pipeline"}, "description": "Pipelines that can only be triggered manually or be scheduled.", "title": "Custom Pipelines", "type": "object"}, "default": {"$ref": "#/components/schemas/pipeline", "description": "Default pipeline runs on every push except for tags unless a branch-specific pipeline is defined.", "title": "Default Pipeline"}, "pull-requests": {"additionalProperties": {"$ref": "#/components/schemas/pipeline"}, "description": "Pull-request-specific build pipelines.", "title": "Pull Request Pipelines", "type": "object"}, "tags": {"additionalProperties": {"$ref": "#/components/schemas/pipeline"}, "description": "Tag-specific build pipelines.", "title": "Tag Pipelines", "type": "object"}}, "title": "Pipelines", "type": "object"}, "triggers": {"additionalProperties": {"$ref": "#/components/schemas/trigger_configuration_list"}, "description": "Event-based triggers that automatically run pipelines when specific events occur. The property names represent trigger types (e.g., repository-push, pullrequest-push, pipeline-completed, deployment-completed, pullrequest-created).", "example": {"deployment-completed": [{"condition": "BITBUCKET_TRIGGER_DEPLOYMENT_STATUS == \"FAILED\"", "pipelines": ["pipeline2"]}], "pipeline-completed": [{"condition": "BITBUCKET_TRIGGER_PIPELINE_STATUS == \"FAILED\"", "pipelines": ["pipeline1"]}], "pullrequest-created": [{"condition": "glob(BITBUCKET_BRANCH, \"feature/*\")", "pipelines": ["pipeline1"]}], "pullrequest-fulfilled": [{"condition": "glob(BITBUCKET_BRANCH, \"feature/*\")", "pipelines": ["pipeline2"]}], "pullrequest-push": [{"condition": "BITBUCKET_PR_DESTINATION_BRANCH == \"main\"", "pipelines": ["pipeline2"]}], "pullrequest-rejected": [{"condition": "glob(BITBUCKET_BRANCH, \"feature/*\")", "pipelines": ["pipeline1"]}], "pullrequest-reviewer-status-updated": [{"condition": "glob(BITBUCKET_BRANCH, \"feature/*\")", "pipelines": ["pipeline1"]}], "pullrequest-updated": [{"condition": "glob(BITBUCKET_BRANCH, \"feature/*\")", "pipelines": ["pipeline2"]}], "repository-push": [{"condition": "BITBUCKET_BRANCH == \"main\"", "pipelines": ["pipeline1"]}]}, "title": "Pipeline Triggers", "type": "object"}}, "type": "object"}, "runs_on": {"oneOf": [{"$ref": "#/components/schemas/runs_on_item"}, {"$ref": "#/components/schemas/runs_on_expanded"}]}, "runs_on_expanded": {"description": "Required labels of a runner to run the step.", "example": ["self.hosted", "linux"], "items": {"$ref": "#/components/schemas/runs_on_item"}, "maxItems": 10, "minItems": 1, "title": "Step Runner Labels", "type": "array"}, "runs_on_item": {"description": "Label of a runner.", "maxLength": 50, "title": "Step Runner Label", "type": "string"}, "runtime": {"description": "Custom step runtime", "properties": {"cloud": {"$ref": "#/components/schemas/cloud"}, "self-hosted": {"$ref": "#/components/schemas/self-hosted"}}, "title": "Step Runtime", "type": "object"}, "script": {"items": {"oneOf": [{"description": "The command to execute.", "example": "echo \"hello world\"", "title": "Script Command", "type": "string"}, {"$ref": "#/components/schemas/pipe"}, {"$ref": "#/components/schemas/agent_task"}]}, "minItems": 1, "type": "array"}, "self-hosted": {"description": "Custom self-hosted step runtime", "properties": {"cpu": {"description": "Cpu available to runner.", "title": "Cpu", "type": "integer"}, "memory": {"description": "Memory (mb) available to runner.", "title": "Memory", "type": "integer"}, "storage": {"oneOf": [{"properties": {"gcp": {"$ref": "#/components/schemas/storage_gcp_auth"}}, "required": ["gcp"], "type": "object"}, {"properties": {"aws": {"$ref": "#/components/schemas/storage_aws_auth"}}, "required": ["aws"], "type": "object"}]}, "volumes": {"default": [], "description": "Volumes to be mounted into the build container.", "items": {"description": "The volume to be mounted into the build container", "example": "/host-directory:/workdir/path", "title": "Volume mount", "type": "string"}, "type": "array"}}, "title": "Self-hosted step runtime", "type": "object"}, "service": {"description": "Custom service properties", "properties": {"image": {"$ref": "#/components/schemas/image"}, "memory": {"default": 1024, "description": "Memory limit for the service container, in megabytes.", "minimum": 128, "title": "Service Memory", "type": "integer"}, "type": {"description": "Specifies Docker service container (to run Docker-in-Docker).", "enum": ["docker"], "type": "string"}, "variables": {"additionalProperties": {"description": "Environment variable value", "title": "Service Variable", "type": "string"}, "description": "Environment variables passed to the service container.", "minProperties": 1, "title": "Service Variables", "type": "object"}}, "title": "Service definition", "type": "object"}, "size": {"default": "1x", "description": "The size of the step, sets the amount of resources allocated.", "enum": ["1x", "2x", "4x", "8x", "16x", "32x"], "title": "Step Size", "type": "string"}, "stage": {"properties": {"condition": {"$ref": "#/components/schemas/condition", "description": "The condition to execute the stage.", "title": "Stage Condition"}, "deployment": {"description": "The deployment environment for the stage.", "title": "Stage Deployment Environment", "type": "string"}, "environment": {"description": "The environment for the stage.", "title": "Stage Environment", "type": "string"}, "name": {"description": "The name of the stage.", "title": "Stage Name", "type": "string"}, "steps": {"description": "List of steps in the stage.", "items": {"properties": {"step": {"allOf": [{"$ref": "#/components/schemas/step_base"}, {"properties": {"condition": {"not": {}}}, "type": "object"}]}}, "type": "object"}, "minItems": 1, "title": "Stage Steps", "type": "array"}, "trigger": {"$ref": "#/components/schemas/trigger", "description": "The trigger used for the pipeline stage.", "title": "Stage Trigger"}}, "required": ["steps"], "type": "object"}, "stage_item": {"additionalProperties": false, "properties": {"stage": {"$ref": "#/components/schemas/stage"}}, "type": "object"}, "step": {"allOf": [{"$ref": "#/components/schemas/step_base"}, {"properties": {"condition": {"$ref": "#/components/schemas/condition", "description": "The condition to execute the step.", "title": "Step Condition"}}, "type": "object"}]}, "step_auth": {"description": "Optional auth configuration for a step.", "properties": {"system": {"properties": {"scopes": {"description": "Additional system scopes for the step.", "items": {"type": "string"}, "title": "System Scopes", "type": "array", "uniqueItems": true}}, "title": "System Auth", "type": "object"}}, "title": "Step Auth", "type": "object"}, "step_base": {"properties": {"after-script": {"$ref": "#/components/schemas/script", "description": "List of commands to execute after the step succeeds or fails.", "title": "Step Post Script"}, "artifacts": {"$ref": "#/components/schemas/artifacts"}, "auth": {"$ref": "#/components/schemas/step_auth", "description": "Optional auth configuration for the step.", "title": "Step Auth"}, "caches": {"description": "Caches enabled for the step.", "items": {"description": "Reference to a cache defined under global definitions.", "title": "Cache Name", "type": "string"}, "minItems": 1, "title": "Step Caches", "type": "array"}, "clone": {"$ref": "#/components/schemas/clone"}, "concurrency-group": {"description": "The concurrency group for the step.", "maxLength": 50, "title": "Concurrency group", "type": "string"}, "custom": {"description": "The name of the custom pipeline to run, if the step type is pipeline.", "title": "Custom", "type": "string"}, "deployment": {"description": "The deployment environment for the step.", "title": "Step Deployment Environment", "type": "string"}, "environment": {"description": "The environment for the step.", "title": "Step Environment", "type": "string"}, "fail-fast": {"$ref": "#/components/schemas/fail_fast", "description": "Stop the parent parallel group in case this step fails."}, "image": {"$ref": "#/components/schemas/image"}, "input-variables": {"additionalProperties": {"description": "input variable value", "oneOf": [{"type": "string"}]}, "description": "Variables from the parent step that are provided to the child pipeline.", "example": {"VAR_1": "VALUE_1", "VAR_2": "${BITBUCKET_BRANCH}"}, "maxProperties": 20, "minProperties": 1, "title": "Input Variables", "type": "object"}, "max-time": {"$ref": "#/components/schemas/max_time", "title": "Step Maximum Time"}, "name": {"description": "The name of the step.", "example": "Build and test", "title": "Step Name", "type": "string"}, "oidc": {"description": "Enables the use of OpenID Connect to connect a pipeline step to a resource server.", "type": "boolean"}, "runs-on": {"$ref": "#/components/schemas/runs_on"}, "runtime": {"$ref": "#/components/schemas/runtime"}, "script": {"$ref": "#/components/schemas/script", "description": "List of commands that are executed in sequence.", "title": "Step Script"}, "services": {"description": "Services enabled for the step.", "items": {"description": "Reference to a service defined under global definitions.", "title": "Service Name", "type": "string"}, "maxItems": 5, "minItems": 1, "title": "Step Services", "type": "array"}, "size": {"$ref": "#/components/schemas/size"}, "trigger": {"$ref": "#/components/schemas/trigger", "description": "The trigger used for the pipeline step.", "title": "Step Trigger"}, "type": {"default": "shared", "description": "The type of the step.", "enum": ["inline", "pipeline"], "title": "Step Type", "type": "string"}}, "title": "Pipeline Step", "type": "object"}, "step_item": {"additionalProperties": false, "properties": {"step": {"$ref": "#/components/schemas/step"}}, "type": "object"}, "storage_aws_auth": {"description": "Amazon web services self hosted storage", "oneOf": [{"required": ["access-key", "secret-key"]}, {"required": ["oidc-role"]}], "properties": {"access-key": {"description": "The AWS access key", "type": "string"}, "bucket": {"description": "The name of the S3 bucket", "type": "string"}, "oidc-role": {"description": "The OIDC role to assume", "type": "string"}, "region": {"description": "The AWS region", "type": "string"}, "secret-key": {"description": "The AWS secret key", "type": "string"}}, "required": ["bucket", "region"], "title": "Custom aws self hosted storage", "type": "object"}, "storage_gcp_auth": {"description": "Google Cloud Platform self hosted storage", "properties": {"bucket": {"description": "The name of the GCP bucket", "type": "string"}, "key-file": {"description": "The GCP key file contents encoded in Base64 format", "type": "string"}}, "required": ["bucket", "key-file"], "title": "Custom GCP self hosted storage", "type": "object"}, "trigger": {"default": "automatic", "enum": ["automatic", "manual"], "type": "string"}, "trigger_configuration": {"description": "Configuration that defines when and which pipelines to trigger.", "properties": {"condition": {"description": "Boolean expression that determines whether the trigger should execute.", "example": "BITBUCKET_BRANCH == \"main\"", "title": "Trigger Condition", "type": "string"}, "pipelines": {"description": "List of pipeline names to trigger when the condition is met. Can reference pipelines from the custom section.", "items": {"description": "Name of a pipeline defined in the custom pipelines section.", "title": "Pipeline Name", "type": "string"}, "minItems": 1, "title": "Pipeline Names", "type": "array"}}, "required": ["condition", "pipelines"], "title": "Trigger Configuration", "type": "object"}, "trigger_configuration_list": {"description": "List of trigger configurations for a specific trigger type.", "items": {"$ref": "#/components/schemas/trigger_configuration"}, "minItems": 1, "title": "Trigger Configuration List", "type": "array"}, "trigger_context": {"description": "Context of the trigger that started the pipeline. Only returned for pipelines triggered by a parent step.", "properties": {"parent_pipeline_run_uuid": {"description": "The UUID of the pipeline run that contains the parent step that triggered this pipeline.", "example": "{00000000-0000-0000-0000-000000000000}", "title": "Parent Pipeline Run UUID", "type": "string"}, "parent_pipeline_uuid": {"description": "The UUID of the pipeline that contains the parent step that triggered this pipeline.", "example": "{00000000-0000-0000-0000-000000000000}", "title": "Parent Pipeline UUID", "type": "string"}, "parent_step_uuid": {"description": "The UUID of the parent step that triggered this pipeline.", "example": "{00000000-0000-0000-0000-000000000000}", "title": "Parent Step UUID", "type": "string"}, "type": {"description": "The type of trigger that started the pipeline.", "enum": ["parent_step"], "title": "Pipeline Trigger", "type": "string"}}, "type": "object"}, "variables_item": {"additionalProperties": false, "properties": {"variables": {"description": "List of variables for the custom pipeline.", "items": {"description": "Settings for the custom variable.", "properties": {"allowed-values": {"description": "A list of values that are allowed for the variable.", "items": {"title": "Allowed Variable Value", "type": "string"}, "minItems": 1, "title": "Allowed Variable Values", "type": "array"}, "default": {"title": "Default Variable Value", "type": "string"}, "description": {"title": "Variable Description", "type": "string"}, "name": {"title": "Variable Name", "type": "string"}}, "required": ["name"], "title": "Custom Pipeline Variable", "type": "object"}, "minItems": 1, "title": "Custom Pipeline Variables", "type": "array"}}, "type": "object"}}}} \ No newline at end of file diff --git a/src/check_jsonschema/builtin_schemas/vendor/buildkite.json b/src/check_jsonschema/builtin_schemas/vendor/buildkite.json index 6e73f918c..3524aa63b 100644 --- a/src/check_jsonschema/builtin_schemas/vendor/buildkite.json +++ b/src/check_jsonschema/builtin_schemas/vendor/buildkite.json @@ -257,14 +257,18 @@ "properties": { "channels": { "type": "array", + "minItems": 1, "items": { - "type": "string" + "description": "A Slack channel as `#channel`, `team#channel`, `@user`, `team@user`, or a Slack ID. Must not be empty or contain whitespace.", + "type": "string", + "pattern": "^\\S+$" } }, "message": { "type": "string" } - } + }, + "required": ["channels"] }, "notifySlack": { "type": "object", @@ -272,7 +276,9 @@ "slack": { "oneOf": [ { - "type": "string" + "description": "A Slack channel as `#channel`, `team#channel`, `@user`, `team@user`, or a Slack ID. Must not be empty or contain whitespace.", + "type": "string", + "pattern": "^\\S+$" }, { "$ref": "#/definitions/notifySlackObject" @@ -332,7 +338,88 @@ "type": "object", "properties": { "github_check": { - "type": "object" + "type": "object", + "properties": { + "name": { + "description": "The name of the GitHub check", + "type": "string" + }, + "output": { + "type": "object", + "properties": { + "title": { + "description": "The title of the GitHub check's output", + "type": "string" + }, + "summary": { + "description": "The summary of the GitHub check's output", + "type": "string" + }, + "text": { + "description": "The details of the GitHub check's output. Supports Markdown", + "type": "string" + }, + "annotations": { + "type": "array", + "items": { + "type": "object", + "properties": { + "path": { + "description": "The path of the file to add an annotation to, relative to the repository root", + "type": "string" + }, + "start_line": { + "description": "The start line of the annotation", + "type": "integer" + }, + "end_line": { + "description": "The end line of the annotation", + "type": "integer" + }, + "start_column": { + "description": "The start column of the annotation. Only valid when start_line and end_line are equal", + "type": "integer" + }, + "end_column": { + "description": "The end column of the annotation. Only valid when start_line and end_line are equal", + "type": "integer" + }, + "annotation_level": { + "type": "string", + "description": "The level of the annotation", + "enum": ["notice", "warning", "failure"] + }, + "message": { + "description": "The message for the annotation", + "type": "string" + }, + "title": { + "description": "The title for the annotation", + "type": "string" + }, + "raw_details": { + "description": "Additional details for the annotation, displayed alongside the message", + "type": "string" + } + }, + "required": [ + "path", + "start_line", + "end_line", + "annotation_level", + "message" + ], + "additionalProperties": false + } + } + }, + "additionalProperties": false + } + }, + "additionalProperties": false + }, + "if": { + "$ref": "#/definitions/if" } }, "additionalProperties": false diff --git a/src/check_jsonschema/builtin_schemas/vendor/changie.json b/src/check_jsonschema/builtin_schemas/vendor/changie.json index 6e8ff756e..5b5bc4ce0 100644 --- a/src/check_jsonschema/builtin_schemas/vendor/changie.json +++ b/src/check_jsonschema/builtin_schemas/vendor/changie.json @@ -117,7 +117,7 @@ }, "auto": { "type": "string", - "description": "Auto determines what value to bump when using `batch auto` or `next auto`.\nPossible values are major, minor, patch or none and the highest one is used if\nmultiple changes are found. none will not bump the version.\nOnly none changes is not a valid bump and will fail to batch.\nexample: yaml\nauto: minor" + "description": "Auto determines what value to bump when using `batch auto` or `next auto`.\nPossible values are major, minor, patch or none and the highest one is used if\nmultiple changes are found. none will not bump the version.\nOnly none changes is not a valid bump and will fail to batch.\nAuto also supports go templates using the change as the template data, so the\nlevel can be calculated from custom values. The rendered value must be one of\nthe possible values listed above.\nexample: yaml\nauto: '{{if eq .Custom.Breaking \"Yes\"}}major{{else}}patch{{end}}'" } }, "additionalProperties": false, @@ -420,8 +420,6 @@ "required": [ "changesDir", "unreleasedDir", - "headerPath", - "changelogPath", "versionExt", "changeFormat" ], diff --git a/src/check_jsonschema/builtin_schemas/vendor/github-workflows.json b/src/check_jsonschema/builtin_schemas/vendor/github-workflows.json index 6e23f2b0d..a36b0b036 100644 --- a/src/check_jsonschema/builtin_schemas/vendor/github-workflows.json +++ b/src/check_jsonschema/builtin_schemas/vendor/github-workflows.json @@ -488,6 +488,18 @@ }, { "required": ["run"] + }, + { + "required": ["wait"] + }, + { + "required": ["wait-all"] + }, + { + "required": ["cancel"] + }, + { + "required": ["parallel"] } ], "properties": { @@ -566,6 +578,46 @@ "$ref": "#/definitions/expressionSyntax" } ] + }, + "background": { + "$comment": "https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsbackground", + "description": "Runs a step asynchronously so the job continues to the next step without waiting for it to finish. You can use background on steps that use run or uses. To reference a background step from wait or cancel, give it an id. A maximum of 10 background steps can run concurrently in a single job.", + "type": "boolean" + }, + "wait": { + "$comment": "https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions#jobsjob_idstepswait", + "description": "Pauses the job until one or more background steps complete. Provide a single step id as a string, or multiple step ids as an array. After a wait step completes, the outputs of the referenced background steps become available to subsequent steps.", + "oneOf": [ + { + "type": "string" + }, + { + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1 + } + ] + }, + "wait-all": { + "$comment": "https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions#jobsjob_idstepswait-all", + "description": "Pauses the job until all active background steps complete. The wait-all keyword takes no arguments.", + "type": ["boolean", "null"] + }, + "cancel": { + "$comment": "https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions#jobsjob_idstepscancel", + "description": "Gracefully terminates a running background step. The runner sends the step's process a termination signal (SIGTERM) so it can clean up. The cancel keyword targets a single background step by its id.", + "type": "string" + }, + "parallel": { + "$comment": "https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsparallel", + "description": "Runs a group of steps concurrently, then waits for all of them to finish before continuing. Every step in the group runs as a background step, with an implicit wait at the end of the group.", + "type": "array", + "items": { + "$ref": "#/definitions/step" + }, + "minItems": 1 } } }, @@ -1087,11 +1139,19 @@ "properties": { "branch_protection_rule": { "$comment": "https://docs.github.com/en/actions/learn-github-actions/events-that-trigger-workflows#branch_protection_rule", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime the branch_protection_rule event occurs. More than one activity type triggers this event.", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": ["created", "edited", "deleted"] @@ -1102,11 +1162,19 @@ }, "check_run": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#check-run-event-check_run", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime the check_run event occurs. More than one activity type triggers this event. For information about the REST API, see https://developer.github.com/v3/checks/runs.", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": [ @@ -1127,11 +1195,19 @@ }, "check_suite": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#check-suite-event-check_suite", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime the check_suite event occurs. More than one activity type triggers this event. For information about the REST API, see https://developer.github.com/v3/checks/suites/.", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": ["completed", "requested", "rerequested"] @@ -1142,31 +1218,55 @@ }, "create": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#create-event-create", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime someone creates a branch or tag, which triggers the create event. For information about the REST API, see https://developer.github.com/v3/git/refs/#create-a-reference." }, "delete": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#delete-event-delete", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime someone deletes a branch or tag, which triggers the delete event. For information about the REST API, see https://developer.github.com/v3/git/refs/#delete-a-reference." }, "deployment": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#deployment-event-deployment", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime someone creates a deployment, which triggers the deployment event. Deployments created with a commit SHA may not have a Git ref. For information about the REST API, see https://developer.github.com/v3/repos/deployments/." }, "deployment_status": { "$comment": "https://docs.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime a third party provides a deployment status, which triggers the deployment_status event. Deployments created with a commit SHA may not have a Git ref. For information about the REST API, see https://developer.github.com/v3/repos/deployments/#create-a-deployment-status." }, "discussion": { "$comment": "https://docs.github.com/en/actions/reference/events-that-trigger-workflows#discussion", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime the discussion event occurs. More than one activity type triggers this event. For information about the GraphQL API, see https://docs.github.com/en/graphql/guides/using-the-graphql-api-for-discussions", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": [ @@ -1205,11 +1305,19 @@ }, "discussion_comment": { "$comment": "https://docs.github.com/en/actions/reference/events-that-trigger-workflows#discussion_comment", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime the discussion_comment event occurs. More than one activity type triggers this event. For information about the GraphQL API, see https://docs.github.com/en/graphql/guides/using-the-graphql-api-for-discussions", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": ["created", "edited", "deleted"] @@ -1220,21 +1328,37 @@ }, "fork": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#fork-event-fork", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime when someone forks a repository, which triggers the fork event. For information about the REST API, see https://developer.github.com/v3/repos/forks/#create-a-fork." }, "gollum": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#gollum-event-gollum", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow when someone creates or updates a Wiki page, which triggers the gollum event." }, "issue_comment": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#issue-comment-event-issue_comment", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime the issue_comment event occurs. More than one activity type triggers this event. For information about the REST API, see https://developer.github.com/v3/issues/comments/.", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": ["created", "edited", "deleted"] @@ -1245,11 +1369,19 @@ }, "issues": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#issues-event-issues", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime the issues event occurs. More than one activity type triggers this event. For information about the REST API, see https://developer.github.com/v3/issues.", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": [ @@ -1294,11 +1426,19 @@ }, "label": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#label-event-label", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime the label event occurs. More than one activity type triggers this event. For information about the REST API, see https://developer.github.com/v3/issues/labels/.", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": ["created", "edited", "deleted"] @@ -1309,11 +1449,19 @@ }, "merge_group": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#merge_group", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow when a pull request is added to a merge queue, which adds the pull request to a merge group. For information about the merge queue, see https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request-with-a-merge-queue .", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": ["checks_requested"] @@ -1324,11 +1472,19 @@ }, "milestone": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#milestone-event-milestone", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime the milestone event occurs. More than one activity type triggers this event. For information about the REST API, see https://developer.github.com/v3/issues/milestones/.", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": ["created", "closed", "opened", "edited", "deleted"] @@ -1345,16 +1501,28 @@ }, "page_build": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#page-build-event-page_build", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime someone pushes to a GitHub Pages-enabled branch, which triggers the page_build event. For information about the REST API, see https://developer.github.com/v3/repos/pages/." }, "project": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#project-event-project", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime the project event occurs. More than one activity type triggers this event. For information about the REST API, see https://developer.github.com/v3/projects/.", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": [ @@ -1379,11 +1547,19 @@ }, "project_card": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#project-card-event-project_card", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime the project_card event occurs. More than one activity type triggers this event. For information about the REST API, see https://developer.github.com/v3/projects/cards.", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": [ @@ -1406,11 +1582,19 @@ }, "project_column": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#project-column-event-project_column", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime the project_column event occurs. More than one activity type triggers this event. For information about the REST API, see https://developer.github.com/v3/projects/columns.", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": ["created", "updated", "moved", "deleted"] @@ -1421,21 +1605,31 @@ }, "public": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#public-event-public", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime someone makes a private repository public, which triggers the public event. For information about the REST API, see https://developer.github.com/v3/repos/#edit." }, "pull_request": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#pull-request-event-pull_request", "description": "Runs your workflow anytime the pull_request event occurs. More than one activity type triggers this event. For information about the REST API, see https://developer.github.com/v3/pulls.\nNote: Workflows do not run on private base repositories when you open a pull request from a forked repository.\nWhen you create a pull request from a forked repository to the base repository, GitHub sends the pull_request event to the base repository and no pull request events occur on the forked repository.\nWorkflows don't run on forked repositories by default. You must enable GitHub Actions in the Actions tab of the forked repository.\nThe permissions for the GITHUB_TOKEN in forked repositories is read-only. For more information about the GITHUB_TOKEN, see https://help.github.com/en/articles/virtual-environments-for-github-actions.", "oneOf": [ - { "type": "null" }, + { + "type": "null" + }, { "allOf": [ { "type": "object", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": [ @@ -1506,11 +1700,19 @@ }, "pull_request_review": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#pull-request-review-event-pull_request_review", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime the pull_request_review event occurs. More than one activity type triggers this event. For information about the REST API, see https://developer.github.com/v3/pulls/reviews.\nNote: Workflows do not run on private base repositories when you open a pull request from a forked repository.\nWhen you create a pull request from a forked repository to the base repository, GitHub sends the pull_request event to the base repository and no pull request events occur on the forked repository.\nWorkflows don't run on forked repositories by default. You must enable GitHub Actions in the Actions tab of the forked repository.\nThe permissions for the GITHUB_TOKEN in forked repositories is read-only. For more information about the GITHUB_TOKEN, see https://help.github.com/en/articles/virtual-environments-for-github-actions.", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": ["submitted", "edited", "dismissed"] @@ -1521,11 +1723,19 @@ }, "pull_request_review_comment": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#pull-request-review-comment-event-pull_request_review_comment", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime a comment on a pull request's unified diff is modified, which triggers the pull_request_review_comment event. More than one activity type triggers this event. For information about the REST API, see https://developer.github.com/v3/pulls/comments.\nNote: Workflows do not run on private base repositories when you open a pull request from a forked repository.\nWhen you create a pull request from a forked repository to the base repository, GitHub sends the pull_request event to the base repository and no pull request events occur on the forked repository.\nWorkflows don't run on forked repositories by default. You must enable GitHub Actions in the Actions tab of the forked repository.\nThe permissions for the GITHUB_TOKEN in forked repositories is read-only. For more information about the GITHUB_TOKEN, see https://help.github.com/en/articles/virtual-environments-for-github-actions.", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": ["created", "edited", "deleted"] @@ -1538,14 +1748,20 @@ "$comment": "https://docs.github.com/en/actions/reference/events-that-trigger-workflows#pull_request_target", "description": "This event is similar to pull_request, except that it runs in the context of the base repository of the pull request, rather than in the merge commit. This means that you can more safely make your secrets available to the workflows triggered by the pull request, because only workflows defined in the commit on the base repository are run. For example, this event allows you to create workflows that label and comment on pull requests, based on the contents of the event payload.", "oneOf": [ - { "type": "null" }, + { + "type": "null" + }, { "allOf": [ { "type": "object", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": [ @@ -1614,7 +1830,9 @@ "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#push-event-push", "description": "Runs your workflow when someone pushes to a repository branch, which triggers the push event.\nNote: The webhook payload available to GitHub Actions does not include the added, removed, and modified attributes in the commit object. You can retrieve the full commit object using the REST API. For more information, see https://developer.github.com/v3/repos/commits/#get-a-single-commit.", "oneOf": [ - { "type": "null" }, + { + "type": "null" + }, { "allOf": [ { @@ -1662,11 +1880,19 @@ }, "registry_package": { "$comment": "https://help.github.com/en/actions/reference/events-that-trigger-workflows#registry-package-event-registry_package", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime a package is published or updated. For more information, see https://help.github.com/en/github/managing-packages-with-github-packages.", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": ["published", "updated"] @@ -1677,11 +1903,19 @@ }, "release": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#release-event-release", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime the release event occurs. More than one activity type triggers this event. For information about the REST API, see https://developer.github.com/v3/repos/releases/ in the GitHub Developer documentation.", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": [ @@ -1708,12 +1942,20 @@ }, "status": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#status-event-status", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime the status of a Git commit changes, which triggers the status event. For information about the REST API, see https://developer.github.com/v3/repos/statuses/." }, "watch": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#watch-event-watch", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "Runs your workflow anytime the watch event occurs. More than one activity type triggers this event. For information about the REST API, see https://developer.github.com/v3/activity/starring/." }, "workflow_call": { @@ -1830,11 +2072,19 @@ }, "workflow_run": { "$comment": "https://docs.github.com/en/actions/reference/events-that-trigger-workflows#workflow_run", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "This event occurs when a workflow run is requested or completed, and allows you to execute a workflow based on the finished result of another workflow. For example, if your pull_request workflow generates build artifacts, you can create a new workflow that uses workflow_run to analyze the results and add a comment to the original pull request.", "properties": { "types": { - "$ref": "#/definitions/types", + "allOf": [ + { + "$ref": "#/definitions/types" + } + ], "items": { "type": "string", "enum": ["requested", "completed", "in_progress"] @@ -1855,7 +2105,11 @@ }, "repository_dispatch": { "$comment": "https://help.github.com/en/github/automating-your-workflow-with-github-actions/events-that-trigger-workflows#external-events-repository_dispatch", - "$ref": "#/definitions/eventObject", + "allOf": [ + { + "$ref": "#/definitions/eventObject" + } + ], "description": "You can use the GitHub API to trigger a webhook event called repository_dispatch when you want to trigger a workflow for activity that happens outside of GitHub. For more information, see https://developer.github.com/v3/repos/#create-a-repository-dispatch-event.\nTo trigger the custom repository_dispatch webhook event, you must send a POST request to a GitHub API endpoint and provide an event_type name to describe the activity type. To trigger a workflow run, you must also configure your workflow to use the repository_dispatch event." }, "schedule": { diff --git a/src/check_jsonschema/builtin_schemas/vendor/gitlab-ci.json b/src/check_jsonschema/builtin_schemas/vendor/gitlab-ci.json index 11faee6fb..f6a7d81bd 100644 --- a/src/check_jsonschema/builtin_schemas/vendor/gitlab-ci.json +++ b/src/check_jsonschema/builtin_schemas/vendor/gitlab-ci.json @@ -1618,8 +1618,17 @@ { "type": "object", "additionalProperties": false, - "required": [ - "paths" + "oneOf": [ + { + "required": [ + "paths" + ] + }, + { + "required": [ + "regexp" + ] + } ], "properties": { "paths": { @@ -1632,6 +1641,11 @@ "compare_to": { "type": "string", "description": "Ref for comparing changes." + }, + "regexp": { + "type": "string", + "description": "Regular expression to match against changed file paths.", + "maxLength": 255 } } }, @@ -1655,8 +1669,17 @@ { "type": "object", "additionalProperties": false, - "required": [ - "paths" + "oneOf": [ + { + "required": [ + "paths" + ] + }, + { + "required": [ + "regexp" + ] + } ], "properties": { "paths": { @@ -1669,6 +1692,11 @@ "project": { "type": "string", "description": "Path of the project to search in." + }, + "regexp": { + "type": "string", + "description": "Regular expression to match against file paths in the repository.", + "maxLength": 255 } } }, @@ -1676,9 +1704,20 @@ "type": "object", "additionalProperties": false, "required": [ - "paths", "project" ], + "oneOf": [ + { + "required": [ + "paths" + ] + }, + { + "required": [ + "regexp" + ] + } + ], "properties": { "paths": { "type": "array", @@ -1694,6 +1733,11 @@ "ref": { "type": "string", "description": "Ref of the project to search in." + }, + "regexp": { + "type": "string", + "description": "Regular expression to match against file paths in the repository.", + "maxLength": 255 } } } @@ -2146,6 +2190,22 @@ "const": "stuck_or_timeout_failure", "description": "Retry when the job got stuck or timed out." }, + { + "const": "stuck_pending_with_matching_runners", + "description": "Retry when the job is stuck pending with matching runners." + }, + { + "const": "stuck_pending_no_matching_runners", + "description": "Retry when the job is stuck pending with no matching runners." + }, + { + "const": "no_updates_running", + "description": "Retry when the running job stopped sending status updates to the server." + }, + { + "const": "no_updates_canceling", + "description": "Retry when the canceling job stopped sending status updates to the server." + }, { "const": "runner_system_failure", "description": "Retry if there is a runner system failure (for example, job setup failed)." @@ -2174,6 +2234,14 @@ "const": "job_execution_timeout", "description": "Retry if the script exceeded the maximum execution time set for the job." }, + { + "const": "server_timeout_running", + "description": "Retry if the running job timed out on the server." + }, + { + "const": "server_timeout_canceling", + "description": "Retry if the canceling job timed out on the server." + }, { "const": "archived_failure", "description": "Retry if the job is archived and can’t be run." diff --git a/src/check_jsonschema/builtin_schemas/vendor/mergify.json b/src/check_jsonschema/builtin_schemas/vendor/mergify.json index 6383856b2..a0354a378 100644 --- a/src/check_jsonschema/builtin_schemas/vendor/mergify.json +++ b/src/check_jsonschema/builtin_schemas/vendor/mergify.json @@ -225,10 +225,16 @@ "properties": { "users": { "items": { - "description": "A string template using the Jinja2 syntax.", - "format": "template", - "title": "Template", - "type": "string" + "description": "A string with `{{ variable }}` placeholders. Allowed variables: `author`.", + "format": "simple-template", + "title": "User", + "type": "string", + "x-mergify-template-variables": [ + { + "description": "The pull request author's login.", + "name": "author" + } + ] }, "maxItems": 10, "title": "Users", @@ -236,10 +242,16 @@ }, "add_users": { "items": { - "description": "A string template using the Jinja2 syntax.", - "format": "template", - "title": "Template", - "type": "string" + "description": "A string with `{{ variable }}` placeholders. Allowed variables: `author`.", + "format": "simple-template", + "title": "User", + "type": "string", + "x-mergify-template-variables": [ + { + "description": "The pull request author's login.", + "name": "author" + } + ] }, "maxItems": 10, "title": "Add Users", @@ -247,10 +259,16 @@ }, "remove_users": { "items": { - "description": "A string template using the Jinja2 syntax.", - "format": "template", - "title": "Template", - "type": "string" + "description": "A string with `{{ variable }}` placeholders. Allowed variables: `author`.", + "format": "simple-template", + "title": "User", + "type": "string", + "x-mergify-template-variables": [ + { + "description": "The pull request author's login.", + "name": "author" + } + ] }, "maxItems": 40, "title": "Remove Users", @@ -294,11 +312,16 @@ "bot_account": { "anyOf": [ { - "const": "{{ author }}", - "title": "Pull request author" - }, - { - "type": "string" + "description": "A string with `{{ variable }}` placeholders. Allowed variables: `author`.", + "format": "simple-template", + "title": "Bot account", + "type": "string", + "x-mergify-template-variables": [ + { + "description": "The pull request author's login.", + "name": "author" + } + ] }, { "type": "null" @@ -334,12 +357,22 @@ "type": "boolean" }, "assignees": { - "description": "Users to assign the newly created pull request to. As the type is a data type template, you could use, e.g., `{{author}}` to assign the pull request to its original author.", + "description": "Users to assign the newly created pull request to. Accepts a GitHub login, or `{{ author }}` (the original pull request author) or `{{ merged_by }}` (the user who merged it).", "items": { - "description": "A string template using the Jinja2 syntax.", - "format": "template", - "title": "Template", - "type": "string" + "description": "A string with `{{ variable }}` placeholders. Allowed variables: `author`, `merged_by`.", + "format": "simple-template", + "title": "Assignee", + "type": "string", + "x-mergify-template-variables": [ + { + "description": "The pull request author's login.", + "name": "author" + }, + { + "description": "The login of the user who merged the pull request.", + "name": "merged_by" + } + ] }, "maxItems": 10, "title": "Assignees", @@ -363,16 +396,72 @@ "title": { "default": "{{ title }} (backport #{{ number }})", "description": "The pull request's title.", - "format": "template", - "title": "Template", - "type": "string" + "format": "simple-template", + "title": "Title template", + "type": "string", + "x-mergify-template-variables": [ + { + "description": "The pull request title.", + "name": "title" + }, + { + "description": "The pull request number.", + "name": "number" + }, + { + "description": "The branch the pull request is copied to.", + "name": "destination_branch" + }, + { + "description": "The base branch name.", + "name": "base" + }, + { + "description": "The pull request author's login.", + "name": "author" + } + ] }, "body": { "default": "{{ body }}