Type BitriseDataModel
File match bitrise.yml bitrise.yaml bitrise.json
Schema URL https://catalog.lintel.tools/schemas/schemastore/bitrise/latest.json
Source https://www.schemastore.org/bitrise.json

Validate with Lintel

npx @lintel/lintel check
Type: BitriseDataModel

Definitions

AppModel object
title string

The title of the project.

summary string

A short summary of the project.

description string

A detailed description of the project.

status_report_name string

The name that will appear on the status report sent to connected services (like GitHub, GitLab, Bitbucket, etc.) after the build is finished.

minLength=1maxLength=100pattern=^[a-zA-Z0-9,./():\-_ <>\[\]\|]*$
envs object[]

A list of Environment Variables.

BitriseDataModel object
format_version string

The version of the Bitrise configuration format. The Bitrise CLI checks it to ensure compatibility between the configuration file and the CLI version. This is relevant for locally run builds: on the Bitrise website, the CLI is always up to date, so the format_version property doesn't have an effect on builds triggered.

default_step_lib_source string

The default Step library for the Steps used in your configuration. Bitrise uses this source if no specific source is provided for a given Step.

project_type string

The type of your Bitrise project, such as ios, android, flutter, and so on.

title string

The title of the Bitrise configuration.

summary string

A short summary of the Bitrise configuration.

description string

A detailed description of the Bitrise configuration.

services object

Docker container definitions used by Steps as service containers.

containers object

Docker container definitions used by Steps as execution containers.

app object
5 nested properties
title string

The title of the project.

summary string

A short summary of the project.

description string

A detailed description of the project.

status_report_name string

The name that will appear on the status report sent to connected services (like GitHub, GitLab, Bitbucket, etc.) after the build is finished.

minLength=1maxLength=100pattern=^[a-zA-Z0-9,./():\-_ <>\[\]\|]*$
envs object[]

A list of Environment Variables.

meta object

Stores project metadata key-value pairs related to the Bitrise configuration. Most importantly, it defines the default stack and the build machine type for the project.

trigger_map TriggerMapItemModel[]

Defines the build triggers on a project level. This is the legacy method of configuring triggers: we recommend using target-based triggers defined as part of a Pipeline or a Workflow instead.

pipelines object

Define Pipelines in your project's configuration. Pipelines can be used to organize the entire CI/CD process and to set up advanced configurations with multiple different tasks running parallel and/or sequentially.

stages object

Defines Stages in your configuration. A Stage is a collection of Workflows that are executed sequentially as part of a Pipeline.

workflows object

The Workflows included in your configuration. A Workflow is a collection of Steps: reusable, configurable units of work. Steps are executed sequentially within a Workflow.

step_bundles object

Step bundles allow you to group multiple Steps into a single unit. With Step bundles, you can reuse Steps and sequences of Steps.

tools object

Mapping of tool IDs to versions to set up. Version syntax supports exact versions (e.g. '1.2.3'), partial matches to the latest release (e.g. '22:latest'), partial matches to installed versions (e.g. '1.2:installed'), as well as the special aliases 'latest' and 'installed' to select the highest respective version.

tool_config object
2 nested properties
provider string

Tool provider to use for setup. Defaults to 'asdf' if not specified.

Values: "asdf" "mise"
extra_plugins object

Additional tool plugins beyond Bitrise's vetted and tested integrations for common tools. Maps tool IDs to asdf plugin repository URLs.

The include property allows you to use other configuration YAML files in your Bitrise configuration, to break down large, complex YAML files into smaller, modular components.

ContainerModel object
image string required

The Docker image for the container, in [REPOSITORY[:TAG]] format.

type string

The type of the container. Use execution for containers that execute Steps, and service for background service containers.

Values: "execution" "service"
credentials object
3 nested properties
username string required

The username used for the docker login command.

password string required

The password used for the docker login command. Use a Secret environment variable to avoid exposing the value in the configuration.

server string

The server used for the docker login command. Optional if the server is already part of the image reference.

ports string[]

Port mappings that expose container ports to the host or to other containers.

envs object[]

A list of Environment Variables.

options string

Additional options passed to the docker create command. Note: --network, --volume (-v), and --entrypoint are not supported.

ContainerReferenceConfigModel object

Additional configuration for a container reference.

recreate boolean

If true, the current container instance is discarded and a fresh one is started for this Step.

ContainerReferenceModel string | object

A reference to a container. Can be specified as a container ID string or as an object with the container ID as the key and optional configuration as the value.

DockerCredentialModel object
username string required

The username used for the docker login command.

password string required

The password used for the docker login command. Use a Secret environment variable to avoid exposing the value in the configuration.

server string

The server used for the docker login command. Optional if the server is already part of the image reference.

EnvModel object[]

A list of Environment Variables.

PipelineModel object
title string

The title of the Pipeline.

summary string

A short summary of the Pipeline.

description string

A detailed description of the Pipeline.

triggers object
4 nested properties
enabled boolean

The property determines whether a defined trigger is active. The default value is true. If you want to disable the trigger, set it to false.

Code push triggers: they define the conditions for triggering a Bitrise build when code is pushed to the project's repository.

Pull request triggers: they define the conditions for triggering a Bitrise build when a pull request is opened in the project's repository.

Git tag triggers: they define the conditions for triggering a Bitrise build when a Git tag is pushed to the project's repository.

status_report_name string

The name that will appear on the status report sent to connected services (like GitHub, GitLab, Bitbucket, etc.) after the build is finished.

minLength=1maxLength=100pattern=^[a-zA-Z0-9,./():\-_ <>\[\]\|]*$
stages object[]

The list of Stages that are part of the Pipeline configuration.

workflows object

The Workflows that are part of the Pipeline configuration. You can create dependencies between Workflows with the depends_on property.

priority integer

Build priority determines a build's position in the build queue. A build with a higher priority is executed sooner than a build with a lower priority. You can set priorities for Pipelines, Workflows, build triggers, and when manually starting a new build.

min=-100max=100
GraphPipelineWorkflowModel object
depends_on string[]

This property defines the Workflows that this Workflow depends on. If any of the Workflows in the list fails, this Workflow won't run.

abort_on_fail boolean

When this property is true, the Pipeline and any other running Workflows are aborted if this Workflow fails.

should_always_run string

This property defines whether a Workflow should run if a previous Workflow failed. Set to workflow if you want this Workflow to always run regardless of failures. The default value is none.

Values: "none" "workflow"
run_if object

The conditions defined for running a Workflow.

1 nested properties
expression string required

A Go template expression that defines the conditions for running the Workflow.

parallel integer | string

The parallel property allows you to run copies of the same Workflow in parallel, in a single instruction. This is particularly useful for test sharding. It takes an integer or an Environment Variable.

uses string
inputs object[]

A list of Environment Variables.

GraphPipelineWorkflowRunIfModel object

The conditions defined for running a Workflow.

expression string required

A Go template expression that defines the conditions for running the Workflow.

StageModel object
title string

The title of the Stage.

summary string

A short summary of the Stage.

description string

A detailed description of the Stage.

abort_on_fail boolean

When this property is true, the Pipeline and any other running Stages are aborted if this Stage fails.

should_always_run boolean

When this property is true, the Stage will always run, even if a previous Stage in the Pipeline failed.

workflows object[]

The list of Workflows that are part of the Stage configuration.

StatusReportNameModel string

The name that will appear on the status report sent to connected services (like GitHub, GitLab, Bitbucket, etc.) after the build is finished.

ToolsModel object

Mapping of tool IDs to versions to set up. Version syntax supports exact versions (e.g. '1.2.3'), partial matches to the latest release (e.g. '22:latest'), partial matches to installed versions (e.g. '1.2:installed'), as well as the special aliases 'latest' and 'installed' to select the highest respective version.

ToolConfigModel object
provider string

Tool provider to use for setup. Defaults to 'asdf' if not specified.

Values: "asdf" "mise"
extra_plugins object

Additional tool plugins beyond Bitrise's vetted and tested integrations for common tools. Maps tool IDs to asdf plugin repository URLs.

TriggersModel object
enabled boolean

The property determines whether a defined trigger is active. The default value is true. If you want to disable the trigger, set it to false.

Code push triggers: they define the conditions for triggering a Bitrise build when code is pushed to the project's repository.

Pull request triggers: they define the conditions for triggering a Bitrise build when a pull request is opened in the project's repository.

Git tag triggers: they define the conditions for triggering a Bitrise build when a Git tag is pushed to the project's repository.

PushTriggerMapItemCommitsConditionModel object
pattern string

A glob pattern used to match against the condition.

regex string

A regular expression pattern used to match against the condition.

last_commit boolean

Defines whether Bitrise should evaluate every commit message or changed file in a code push or only those belonging to the most recent commit. Its default value is false.

PushTriggerModel object
enabled boolean

If this property is true, the push trigger is active and can trigger Bitrise builds.

priority integer

Build priority determines a build's position in the build queue. A build with a higher priority is executed sooner than a build with a lower priority. You can set priorities for Pipelines, Workflows, build triggers, and when manually starting a new build.

min=-100max=100

A branch of the project's repository. Bitrise triggers a build if code is pushed to the branch defined in this property.

commit_message PushTriggerMapItemCommitsConditionModel | string

Define a Git commit message that should trigger a Bitrise build.

Set a filepath or a folder. If any file or files change in that location, Bitrise triggers a build.

PullrequestTriggerModel object
enabled boolean

If this property is true, the pull request trigger is active and can trigger Bitrise builds.

priority integer

Build priority determines a build's position in the build queue. A build with a higher priority is executed sooner than a build with a lower priority. You can set priorities for Pipelines, Workflows, build triggers, and when manually starting a new build.

min=-100max=100
draft_enabled boolean

If this property is true, draft pull requests can trigger builds, too.

source_branch TriggerMapItemRegexConditionModel | string

Bitrise triggers a build if the branch name in this property matches the source branch of a pull request opened in the project's repository.

target_branch TriggerMapItemRegexConditionModel | string

Bitrise triggers a build if the branch name in the property matches the target branch of a pull request opened in the project's repository.

If a pull request's label matches the label in this property, Bitrise triggers a build.

This property looks for comments on pull requests to trigger Bitrise builds.

commit_message TriggerMapItemRegexConditionModel | string

Define a Git commit message that should trigger a Bitrise build.

changed_files TriggerMapItemRegexConditionModel | string

Set a filepath or a folder. If any file or files change in that location in a pull request, Bitrise triggers a build.

TagTriggerModel object
enabled boolean

If this property is true, the tag trigger is active and can trigger Bitrise builds.

priority integer

Build priority determines a build's position in the build queue. A build with a higher priority is executed sooner than a build with a lower priority. You can set priorities for Pipelines, Workflows, build triggers, and when manually starting a new build.

min=-100max=100

This property looks for the name of a Git tag to trigger a Bitrise build.

TriggerMapItemRegexConditionModel object
pattern string

A glob pattern used to match against the condition.

regex string

A regular expression pattern used to match against the condition.

TriggerMapItemModel object
type string

The type of the code event the trigger looks for.

Values: "push" "pull_request" "tag"
enabled boolean

If this property is true, the trigger is active and can trigger Bitrise builds.

pipeline string

The name of the Pipeline that will be triggered if the code event matches the trigger condition.

workflow string

The name of the Workflow that will be triggered if the code event matches the trigger condition.

push_branch TriggerMapItemRegexConditionModel | string

A branch of the project's repository. Bitrise triggers a build if code is pushed to the branch defined in this property.

commit_message TriggerMapItemRegexConditionModel | string

Define a Git commit message that should trigger a Bitrise build.

changed_files TriggerMapItemRegexConditionModel | string

Set a filepath or a folder. If any file or files change in that location, Bitrise triggers a build.

pull_request_source_branch TriggerMapItemRegexConditionModel | string

Bitrise triggers a build if the branch name in this property matches the source branch of a pull request opened in the project's repository.

pull_request_target_branch TriggerMapItemRegexConditionModel | string

Bitrise triggers a build if the branch name in the property matches the target branch of a pull request opened in the project's repository.

draft_pull_request_enabled boolean

If this property is true, draft pull requests can trigger builds, too.

pull_request_label TriggerMapItemRegexConditionModel | string

You can mark pull requests with labels. If a pull request's label matches the label in this property, Bitrise triggers a build.

pull_request_comment TriggerMapItemRegexConditionModel | string

This property looks for comments on pull requests to trigger Bitrise builds.

Bitrise triggers a build when a Git tag matching the tag defined in this property is pushed to the project's repository.

pattern string

A pattern used to match against specific code event attributes.

is_pull_request_allowed boolean

If this property is true, pull requests are allowed to trigger Bitrise builds.

WithModel object
steps object[] required

The list of Steps to be executed within the specified container environment.

container string

The name of the container that will be used as the execution environment.

services string[]

The name of the service container that will be used to run services.

WorkflowStageConfigModel object
run_if string

A Go template expression that defines the conditions for running the Workflow within the Stage.

WorkflowModel object
title string

The title of the Workflow.

summary string

A short summary of the Workflow.

description string

A detailed description of the Workflow.

triggers object
4 nested properties
enabled boolean

The property determines whether a defined trigger is active. The default value is true. If you want to disable the trigger, set it to false.

Code push triggers: they define the conditions for triggering a Bitrise build when code is pushed to the project's repository.

Pull request triggers: they define the conditions for triggering a Bitrise build when a pull request is opened in the project's repository.

Git tag triggers: they define the conditions for triggering a Bitrise build when a Git tag is pushed to the project's repository.

status_report_name string

The name that will appear on the status report sent to connected services (like GitHub, GitLab, Bitbucket, etc.) after the build is finished.

minLength=1maxLength=100pattern=^[a-zA-Z0-9,./():\-_ <>\[\]\|]*$
before_run string[]

The Workflows that will run before this Workflow starts.

after_run string[]

The Workflows that will run after this Workflow is successfully finished.

envs object[]

A list of Environment Variables.

steps object[]

The list of Steps in the Workflow.

priority integer

Build priority determines a build's position in the build queue. A build with a higher priority is executed sooner than a build with a lower priority. You can set priorities for Pipelines, Workflows, build triggers, and when manually starting a new build.

min=-100max=100
tools object

Mapping of tool IDs to versions to set up. Version syntax supports exact versions (e.g. '1.2.3'), partial matches to the latest release (e.g. '22:latest'), partial matches to installed versions (e.g. '1.2:installed'), as well as the special aliases 'latest' and 'installed' to select the highest respective version.

meta object

Stores project metadata key-value pairs. Most importantly, it defines the stack and the machine type for the Workflow.

StepBundleModel object
title string

The title of the Step bundle.

summary string

A short summary of the Step bundle.

description string

A detailed description of the Step bundle.

envs object[]

A list of Environment Variables.

inputs object[]

A list of Environment Variables.

execution_container string | object

A reference to a container. Can be specified as a container ID string or as an object with the container ID as the key and optional configuration as the value.

service_containers ContainerReferenceModel[]

The default service containers for Steps in this bundle. Service containers accumulate additively through the hierarchy.

steps object[]

The Steps included in the Step bundle.

StepBundleOverrideModel object
title string
summary string
description string
envs object[]

A list of Environment Variables.

inputs object[]

A list of Environment Variables.

execution_container string | object

A reference to a container. Can be specified as a container ID string or as an object with the container ID as the key and optional configuration as the value.

service_containers ContainerReferenceModel[]

Overrides the service containers for this bundle invocation.

IncludeItemModel object
path string required

The file path of the included configuration file. This path is relative to the root of the repository.

minLength=1
repository string

The name of the repository that contains the included configuration file. You do not need the URL, just the name. Leave it empty if the file is in the same repository as your current configuration file.

branch string

The repository branch that contains the included configuration file. It has a lower priority than tag and commit.

commit string

The commit hash of the commit that contains the included configuration file. It takes priority over branch and tag if they are all specified.

tag string

The Git tag of the commit that contains the included configuration file. It has a higher priority than branch but a lower priority than commit.

PriorityModel integer

Build priority determines a build's position in the build queue. A build with a higher priority is executed sooner than a build with a lower priority. You can set priorities for Pipelines, Workflows, build triggers, and when manually starting a new build.