bitrise
The configuration format of the Bitrise CLI. Bitrise is a collection of tools and services to help you with the development and automation of your software projects, with a main focus on mobile apps
bitrise.ymlbitrise.yamlbitrise.json
Validate
Check your file against this schema
Opens the validator with this schema already loaded. Paste your
bitrise.yml and it validates in your browser — nothing is uploaded.
Reference
Fields
Generated directly from the schema, following local
$refs, to two levels of nesting.
| Field | Type | Description |
|---|---|---|
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 |
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 | — |
app.title | string | The title of the project. |
app.summary | string | A short summary of the project. |
app.description | string | A detailed description of the project. |
app.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. |
app.envs | array<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 | array | 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 |
tool_config | object | — |
tool_config.provider | string | Tool provider to use for setup. Defaults to 'asdf' if not specified. one of: "asdf", "mise" |
tool_config.extra_plugins | object | Additional tool plugins beyond Bitrise's vetted and tested integrations for common tools. Maps tool IDs to asdf plugin repository URLs. |
include | array | 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. |
Audit
What we found in this schema
- Declared draft: draft-07
- Validates cleanly against its own meta-schema.
- Has 1 place(s) where keywords sit beside
$ref. Under draft-07 those keywords are silently ignored by every conforming validator — first at#. - 134 properties, 90% carrying a description, max nesting depth 8.
Standards
Specification sections for the keywords in this schema
| Keyword | Document | Section |
|---|---|---|
$ref | JSON Schema Core, draft 2020-12 | §8.2.3.1 — Direct References with "$ref" |
$schema | JSON Schema Core, draft 2020-12 | §8.1.1 — "$schema" |
additionalProperties | JSON Schema Core, draft 2020-12 | §10.3.2.3 — "additionalProperties" |
description | JSON Schema Validation, draft 2020-12 | §9.1 — "title" and "description" |
enum | JSON Schema Validation, draft 2020-12 | §6.1.2 — "enum" |
items | JSON Schema Core, draft 2020-12 | §10.3.1.2 — "items" |
minLength | JSON Schema Validation, draft 2020-12 | §6.3.2 — "minLength" |
oneOf | JSON Schema Core, draft 2020-12 | §10.2.1.3 — "oneOf" |
pattern | JSON Schema Validation, draft 2020-12 | §6.3.3 — "pattern" |
patternProperties | JSON Schema Core, draft 2020-12 | §10.3.2.2 — "patternProperties" |
properties | JSON Schema Core, draft 2020-12 | §10.3.2.1 — "properties" |
required | JSON Schema Validation, draft 2020-12 | §6.5.3 — "required" |
type | JSON Schema Validation, draft 2020-12 | §6.1.1 — "type" |
format: "uri" | RFC 3986 (STD 66) | §3 — Syntax Components |
Documents
- JSON Schema Core, draft 2020-12 — JSON Schema: A Media Type for Describing JSON Documents, A. Wright, H. Andrews, B. Hutton, G. Dennis, Eds., 2022. draft-bhutton-json-schema-01. An expired Internet-Draft with no formal standing in the IETF standards process; it is nonetheless the specification of record for JSON Schema 2020-12, published by json-schema.org.
- JSON Schema Validation, draft 2020-12 — JSON Schema Validation: A Vocabulary for Structural Validation of JSON, A. Wright, H. Andrews, B. Hutton, Eds., 2022.
- RFC 8259 (STD 90) — The JavaScript Object Notation (JSON) Data Interchange Format, T. Bray, Ed., 2017. The format a schema describes.
- RFC 6901 — JavaScript Object Notation (JSON) Pointer. Defines the pointer syntax used by $ref fragments and the ~0 / ~1 escapes.
Source
Attribution
This schema comes from SchemaStore, distributed under the Apache License 2.0. Copyright 2015–present Mads Kristensen and contributors. View the original file. The field table and audit on this page are generated by JSONTools.tools; the schema itself is unmodified.