Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
9602 lines (9602 sloc) 243 KB
{
"$schema": "http://json-schema.org/draft-04/schema#",
"$id": "root",
"title": "JSON schema for Travis CI configuration files",
"description": "The root node of your build config.",
"allOf": [
{
"type": "object",
"properties": {
"language": {
"$ref": "#/definitions/type/language"
},
"os": {
"$ref": "#/definitions/type/oss",
"flags": [
"expand"
]
},
"dist": {
"$ref": "#/definitions/type/dist"
},
"arch": {
"$ref": "#/definitions/type/archs",
"flags": [
"expand"
]
},
"stack": {
"$ref": "#/definitions/type/stack"
},
"sudo": {
"$ref": "#/definitions/type/sudo"
},
"import": {
"$ref": "#/definitions/type/imports"
},
"env": {
"$ref": "#/definitions/type/env"
},
"compiler": {
"$ref": "#/definitions/type/compilers",
"flags": [
"expand"
]
},
"osx_image": {
"$ref": "#/definitions/type/osx_images",
"flags": [
"expand"
]
},
"stages": {
"$ref": "#/definitions/type/stages"
},
"jobs": {
"$ref": "#/definitions/type/jobs",
"aliases": [
"matrix"
]
},
"notifications": {
"$ref": "#/definitions/type/notifications"
},
"version": {
"$ref": "#/definitions/type/version"
},
"conditions": {
"$ref": "#/definitions/type/conditions"
},
"filter_secrets": {
"type": "boolean",
"flags": [
"internal"
],
"summary": "Whether to filter secrets from the log output"
},
"trace": {
"type": "boolean",
"flags": [
"internal"
],
"summary": "Whether to trace the build script"
}
},
"see": {
"Job lifecycle": "https://docs.travis-ci.com/user/job-lifecycle/"
},
"required": [
"language",
"os"
]
},
{
"$ref": "#/definitions/type/languages"
},
{
"$ref": "#/definitions/type/job"
}
],
"see": {
"Job lifecycle": "https://docs.travis-ci.com/user/job-lifecycle/"
},
"definitions": {
"type": {
"addons": {
"$id": "addons",
"title": "Addons",
"description": "Build addons enable additional built-in functionality, such as\ninstalling build dependencies, system setup tasks, and integrations\nwith external services.",
"type": "object",
"properties": {
"apt": {
"$ref": "#/definitions/addon/apt"
},
"apt_packages": {
"$ref": "#/definitions/type/strs",
"summary": "APT package names to install"
},
"artifacts": {
"$ref": "#/definitions/addon/artifacts"
},
"browserstack": {
"$ref": "#/definitions/addon/browserstack"
},
"chrome": {
"type": "string",
"enum": [
"stable",
"beta"
],
"downcase": true,
"summary": "Chrome version to use"
},
"code_climate": {
"$ref": "#/definitions/addon/code_climate"
},
"coverity_scan": {
"$ref": "#/definitions/addon/coverity_scan"
},
"homebrew": {
"$ref": "#/definitions/addon/homebrew"
},
"hostname": {
"type": "string",
"summary": "Hostname to set on the build environment"
},
"hosts": {
"$ref": "#/definitions/type/strs",
"summary": "Hosts to add to /etc/hosts"
},
"jwt": {
"$ref": "#/definitions/addon/jwts"
},
"sauce_connect": {
"$ref": "#/definitions/addon/sauce_connect"
},
"srcclr": {
"anyOf": [
{
"type": "object",
"normal": true
},
{
"type": "boolean",
"normal": true
}
],
"summary": "SourceClear settings"
},
"snaps": {
"$ref": "#/definitions/addon/snaps"
},
"sonarcloud": {
"$ref": "#/definitions/addon/sonarcloud"
},
"ssh_known_hosts": {
"$ref": "#/definitions/type/secures",
"strict": false,
"summary": "Hosts to add to ~/.ssh/known_hosts",
"see": {
"Adding to SSH Known Hosts": "https://docs.travis-ci.com/user/ssh-known-hosts/"
}
},
"firefox": {
"anyOf": [
{
"type": "number"
},
{
"type": "string"
}
],
"example": "68.0b1",
"summary": "Firefox version to use"
},
"mariadb": {
"type": "string",
"summary": "MariaDB version to use"
},
"postgresql": {
"type": "string",
"aliases": [
"postgres"
],
"summary": "Postgres version to use"
},
"rethinkdb": {
"type": "string",
"summary": "RethinkDB version to use"
},
"deploy": {
"$ref": "#/definitions/type/deploys",
"flags": [
"internal"
]
}
},
"additionalProperties": false,
"summary": "Build addons to activate"
},
"arch": {
"$id": "arch",
"title": "Architecture",
"description": "The architecture that will be selected for the build environment.",
"type": "string",
"summary": "Build environment architecture",
"downcase": true,
"only": {
"os": [
"linux"
]
},
"enum": [
"amd64",
"arm64",
"ppc64le"
],
"values": {
"amd64": {
"aliases": [
"x86_64"
]
},
"ppc64le": {
"aliases": [
"power",
"ppc",
"ppc64"
]
}
}
},
"archs": {
"$id": "archs",
"title": "Architectures",
"description": "The architectures that will be selected for the build environments.",
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/type/arch"
},
"normal": true
},
{
"$ref": "#/definitions/type/arch"
}
],
"summary": "Build environment architectures"
},
"branches": {
"$id": "branches",
"title": "Branches",
"description": "Include or exclude branches for your build to be run on.\n\nThis is a legacy setting, use the more powerful condition (`if`) to define branches for your build to be run on.",
"anyOf": [
{
"type": "object",
"properties": {
"only": {
"$ref": "#/definitions/type/strs",
"summary": "Branches to include",
"example": "master"
},
"except": {
"$ref": "#/definitions/type/strs",
"aliases": [
"exclude"
],
"summary": "Branches to exclude",
"example": "develop"
}
},
"additionalProperties": false,
"normal": true,
"prefix": {
"key": "only"
},
"aliases": [
"branch"
]
},
{
"$ref": "#/definitions/type/strs",
"example": "master"
}
],
"summary": "Include or exclude branches from being built",
"normal": true
},
"cache": {
"$id": "cache",
"title": "Cache",
"description": "Activates caching content that does not often change in order to speed up the build process.\n\nThere are built-in caching strategies for `apt`, `bundler`, `cargo`, `ccache`, `cocoapods`, `npm`, `packages`, `pip`, `yarn`.\nFor other scenarios the generic `directory` option can be used.",
"anyOf": [
{
"type": "object",
"properties": {
"directories": {
"$ref": "#/definitions/type/strs",
"summary": "Generic directory caching strategy",
"example": "./path"
},
"apt": {
"type": "boolean",
"summary": "Use the apt caching strategy"
},
"bundler": {
"type": "boolean",
"summary": "Use the bundler caching strategy"
},
"cargo": {
"type": "boolean",
"summary": "Use the cargo caching strategy"
},
"ccache": {
"type": "boolean",
"summary": "Use the ccache caching strategy"
},
"cocoapods": {
"type": "boolean",
"summary": "Use the cocoapods caching strategy"
},
"npm": {
"type": "boolean",
"summary": "Use the npm caching strategy"
},
"packages": {
"type": "boolean",
"summary": "Use the packages caching strategy"
},
"pip": {
"type": "boolean",
"summary": "Use the pip caching strategy"
},
"yarn": {
"type": "boolean",
"summary": "Use the yarn caching strategy"
},
"timeout": {
"type": "number",
"summary": "Timeout for the cache tooling",
"defaults": [
{
"value": 3
}
]
},
"edge": {
"type": "boolean",
"summary": "Use an edge version of the cache tooling"
},
"branch": {
"type": "string"
}
},
"additionalProperties": false,
"normal": true,
"changes": [
{
"change": "cache"
}
]
},
{
"type": "boolean",
"enum": [
false
],
"normal": true
}
],
"summary": "Cache settings to speed up the build",
"see": {
"Caching Dependencies and Directories": "https://docs.travis-ci.com/user/caching/"
}
},
"compilers": {
"$id": "compilers",
"title": "Compilers",
"anyOf": [
{
"type": "array",
"items": {
"type": "string",
"example": "gcc",
"only": {
"language": [
"c",
"cpp"
]
}
},
"normal": true
},
{
"type": "string",
"example": "gcc",
"only": {
"language": [
"c",
"cpp"
]
}
}
],
"summary": "Compilers to set up",
"see": {
"Choosing compilers to test against": "https://docs.travis-ci.com/user/languages/c/#choosing-compilers-to-test-against"
}
},
"condition": {
"$id": "condition",
"title": "If",
"description": "Include or exclude builds, stages, jobs, imports, and notifications by specifying\nconditions in your build configuration. These are evaluated when your build is\nbeing configured.",
"type": "string",
"summary": "Condition to determine if a build, stage, or job should be run, a config source imported, or a notification sent",
"example": "branch = master",
"see": {
"Conditional Builds, Stages, and Jobs": "https://docs.travis-ci.com/user/conditional-builds-stages-jobs/",
"Conditional Notifications": "TBD"
}
},
"conditions": {
"$id": "conditions",
"title": "Conditions",
"type": "string",
"summary": "Conditions support version",
"enum": [
"v0",
"v1"
],
"flags": [
"internal"
]
},
"deploys": {
"$id": "deploys",
"title": "Deployments",
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/deploy/providers"
},
"normal": true
},
{
"$ref": "#/definitions/deploy/providers"
}
],
"summary": "Deployment target configurations",
"see": {
"Deployment (v2)": "https://docs.travis-ci.com/user/deployment-v2"
}
},
"dist": {
"$id": "dist",
"title": "Distribution",
"type": "string",
"summary": "Build environment distribution",
"see": {
"Virtualization environments": "https://docs.travis-ci.com/user/reference/overview/#virtualization-environments"
},
"downcase": true,
"enum": [
"trusty",
"precise",
"xenial",
"bionic",
"server-2016"
],
"values": {
"trusty": {
"only": {
"os": [
"linux"
]
}
},
"precise": {
"only": {
"os": [
"linux"
]
}
},
"xenial": {
"only": {
"os": [
"linux"
]
}
},
"bionic": {
"only": {
"os": [
"linux"
]
}
},
"server-2016": {
"only": {
"os": [
"windows"
]
},
"edge": true
}
}
},
"env": {
"$id": "env",
"title": "Env",
"description": "The key `env` defines env vars that will be defined in the build\nenvironment.\n\nEnv vars can be specified as global or job vars. Global vars will\nbe defined on every job in the build's job matrix. Job vars will\nexpand the build matrix, i.e. create one additional job per entry.\n\nEnv vars can be given either as strings or maps. If given as a\nstring they can contain multiple key/value pairs.",
"anyOf": [
{
"type": "object",
"properties": {
"global": {
"$ref": "#/definitions/type/env_vars",
"summary": "Global environment variables to be defined on all jobs"
},
"jobs": {
"$ref": "#/definitions/type/env_vars",
"aliases": [
"matrix"
],
"summary": "Environment variables that expand the build matrix (creating one job per entry)",
"flags": [
"expand"
]
}
},
"additionalProperties": false,
"normal": true,
"prefix": {
"key": "jobs"
}
},
{
"$ref": "#/definitions/type/env_vars"
}
],
"summary": "Environment variables to set up",
"see": {
"Environment Variables": "https://docs.travis-ci.com/user/environment-variables/",
"Build Matrix": "https://docs.travis-ci.com/user/build-matrix/"
}
},
"env_var": {
"$id": "env_var",
"title": "Env Var",
"anyOf": [
{
"type": "object",
"patternProperties": {
"^(?!global|jobs|matrix)": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
},
{
"$ref": "#/definitions/type/secure"
}
]
}
},
"example": {
"FOO": "foo"
},
"normal": true
},
{
"type": "object",
"properties": {
"secure": {
"type": "string"
}
},
"additionalProperties": false,
"normal": true,
"maxProperties": 1
},
{
"type": "string",
"pattern": "^[^=]+=[^=]*$",
"example": "FOO=foo"
}
]
},
"env_vars": {
"$id": "env_vars",
"title": "Env Vars",
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/type/env_var"
},
"normal": true,
"changes": [
{
"change": "env_vars"
}
]
},
{
"$ref": "#/definitions/type/env_var"
}
],
"summary": "Environment variables to set up"
},
"git": {
"$id": "git",
"title": "Git",
"description": "These settings can be used in order to customize how the repository\nis cloned with Git.",
"type": "object",
"properties": {
"strategy": {
"type": "string",
"enum": [
"clone",
"tarball"
],
"summary": "Strategy to use for fetching commits"
},
"depth": {
"anyOf": [
{
"type": "number"
},
{
"type": "boolean"
}
],
"summary": "Number of commmits to fetch, or false to clone all commits"
},
"quiet": {
"type": "boolean",
"summary": "Silence git clone log output"
},
"submodules": {
"type": "boolean",
"summary": "Avoid cloning submodules if given false"
},
"submodules_depth": {
"type": "number",
"summary": "Number of commits to fetch for submodules"
},
"lfs_skip_smudge": {
"type": "boolean",
"summary": "Skip fetching the git-lfs files during the initial git clone"
},
"sparse_checkout": {
"type": "string",
"summary": "Populate the working directory sparsely"
},
"autocrlf": {
"anyOf": [
{
"type": "boolean",
"enum": [
true,
false
]
},
{
"type": "string",
"enum": [
"input"
]
}
],
"summary": "Specify handling of line endings when cloning repository"
}
},
"additionalProperties": false,
"summary": "Git settings",
"see": {
"Customizing the Build": "https://docs.travis-ci.com/user/customizing-the-build/"
}
},
"group": {
"$id": "group",
"title": "Group",
"type": "string",
"summary": "Build environment group",
"downcase": true,
"flags": [
"internal"
]
},
"import": {
"$id": "import",
"title": "Import",
"anyOf": [
{
"type": "object",
"properties": {
"source": {
"type": "string",
"summary": "The source to import build config from",
"example": "./import.yml@v1"
},
"mode": {
"type": "string",
"enum": [
"merge",
"deep_merge",
"deep_merge_append",
"deep_merge_prepend"
],
"summary": "How to merge the imported config into the target config (defaults to deep_merge_append)"
},
"if": {
"$ref": "#/definitions/type/condition"
}
},
"additionalProperties": false,
"normal": true,
"prefix": {
"key": "source"
}
},
{
"type": "string",
"example": "./import.yml@v1"
}
],
"normal": true
},
"imports": {
"$id": "imports",
"title": "Imports",
"description": "Import YAML config snippets that can be shared across repositories.",
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/type/import"
},
"normal": true
},
{
"$ref": "#/definitions/type/import"
}
],
"summary": "Build configuration imports"
},
"jdks": {
"$id": "jdks",
"title": "Jdks",
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
},
"except": {
"os": [
"osx"
]
},
"normal": true
},
{
"type": "string"
}
],
"summary": "JDK versions",
"except": {
"os": [
"osx"
]
}
},
"job": {
"$id": "job",
"title": "Job",
"type": "object",
"properties": {
"addons": {
"$ref": "#/definitions/type/addons"
},
"branches": {
"$ref": "#/definitions/type/branches"
},
"cache": {
"$ref": "#/definitions/type/cache"
},
"deploy": {
"$ref": "#/definitions/type/deploys"
},
"git": {
"$ref": "#/definitions/type/git"
},
"if": {
"$ref": "#/definitions/type/condition"
},
"services": {
"$ref": "#/definitions/type/services"
},
"group": {
"$ref": "#/definitions/type/group"
},
"before_install": {
"$ref": "#/definitions/type/strs",
"summary": "Scripts to run before the install stage"
},
"install": {
"$ref": "#/definitions/type/strs",
"summary": "Scripts to run at the install stage"
},
"before_script": {
"$ref": "#/definitions/type/strs",
"summary": "Scripts to run before the script stage"
},
"script": {
"$ref": "#/definitions/type/strs",
"summary": "Scripts to run at the script stage"
},
"before_cache": {
"$ref": "#/definitions/type/strs",
"summary": "Scripts to run before storing a build cache"
},
"after_success": {
"$ref": "#/definitions/type/strs",
"summary": "Scripts to run after a successful script stage"
},
"after_failure": {
"$ref": "#/definitions/type/strs",
"summary": "Scripts to run after a failing script stage"
},
"before_deploy": {
"$ref": "#/definitions/type/strs",
"summary": "Scripts to run before the deploy stage"
},
"after_deploy": {
"$ref": "#/definitions/type/strs",
"summary": "Scripts to run after the deploy stage"
},
"after_script": {
"$ref": "#/definitions/type/strs",
"summary": "Scripts to run as the last stage"
}
}
},
"jobs": {
"$id": "jobs",
"title": "Job Matrix",
"anyOf": [
{
"type": "object",
"properties": {
"include": {
"$ref": "#/definitions/type/jobs_entries",
"summary": "Jobs to include to the build matrix"
},
"exclude": {
"$ref": "#/definitions/type/jobs_entries",
"summary": "Attributes of jobs to exclude from the build matrix"
},
"allow_failures": {
"$ref": "#/definitions/type/jobs_entries",
"aliases": [
"allowed_failures"
],
"summary": "Attributes of jobs that are allowed to fail"
},
"fast_finish": {
"type": "boolean",
"aliases": [
"fast_failure"
],
"summary": "Allow the build to fail fast"
}
},
"additionalProperties": false,
"see": {
"Build Matrix": "https://docs.travis-ci.com/user/build-matrix/"
},
"normal": true,
"aliases": [
"matrix"
],
"prefix": {
"key": "include"
}
},
{
"$ref": "#/definitions/type/jobs_entries"
}
],
"summary": "Build matrix definitions",
"see": {
"Build Matrix": "https://docs.travis-ci.com/user/build-matrix/"
},
"normal": true
},
"jobs_entries": {
"$id": "jobs_entries",
"title": "Job Matrix Entries",
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/type/jobs_entry"
},
"normal": true
},
{
"$ref": "#/definitions/type/jobs_entry"
}
]
},
"jobs_entry": {
"$id": "jobs_entry",
"title": "Job Matrix Entry",
"allOf": [
{
"type": "object",
"properties": {
"language": {
"$ref": "#/definitions/type/language"
},
"os": {
"$ref": "#/definitions/type/os"
},
"dist": {
"$ref": "#/definitions/type/dist"
},
"arch": {
"$ref": "#/definitions/type/arch"
},
"osx_image": {
"type": "string",
"summary": "OSX image to use for the build environment",
"only": {
"os": [
"osx"
]
}
},
"sudo": {
"$ref": "#/definitions/type/sudo"
},
"env": {
"$ref": "#/definitions/type/env_vars"
},
"compiler": {
"type": "string",
"example": "gcc",
"only": {
"language": [
"c",
"cpp"
]
}
},
"name": {
"type": "string",
"flags": [
"unique"
]
},
"stage": {
"type": "string"
}
},
"title": "Job Matrix Entry",
"aliases": [
"jobs"
]
},
{
"$ref": "#/definitions/type/support"
},
{
"$ref": "#/definitions/type/job"
}
]
},
"language": {
"$id": "language",
"title": "Language",
"description": "The key `language` selects the language support used for the build.\n\nLanguage supports define additional root level keys, e.g. for selecting\nthe language runtime version. Some of these keys will expand additional\njobs in the build matrix, such as the key `python` on Python language\nsupport.",
"type": "string",
"summary": "Language support to enable",
"see": {
"Languages": "https://docs.travis-ci.com/user/languages/",
"Build Matrix": "https://docs.travis-ci.com/user/build-matrix/"
},
"example": "ruby",
"downcase": true,
"defaults": [
{
"value": "ruby",
"only": {
"os": [
"linux",
"windows"
]
}
},
{
"value": "objective-c",
"only": {
"os": [
"osx"
]
}
}
],
"enum": [
"android",
"c",
"clojure",
"cpp",
"crystal",
"csharp",
"d",
"dart",
"elixir",
"elm",
"erlang",
"go",
"groovy",
"hack",
"haskell",
"haxe",
"java",
"julia",
"nix",
"node_js",
"objective-c",
"perl",
"perl6",
"php",
"python",
"r",
"ruby",
"rust",
"scala",
"shell",
"smalltalk",
"__connie__",
"__amethyst__",
"__garnet__",
"__stevonnie__",
"__opal__",
"__sardonyx__",
"__onion__",
"__cookiecat__"
],
"values": {
"cpp": {
"aliases": [
"c++"
]
},
"go": {
"aliases": [
"golang"
]
},
"java": {
"aliases": [
"jvm"
]
},
"node_js": {
"aliases": [
"javascript",
"js",
"node"
]
},
"objective-c": {
"aliases": [
"objective_c",
"swift"
]
},
"shell": {
"aliases": [
"bash",
"generic",
"minimal",
"sh"
]
},
"__connie__": {
"flags": [
"internal"
],
"deprecated": "experimental stack language"
},
"__amethyst__": {
"flags": [
"internal"
],
"deprecated": "experimental stack language"
},
"__garnet__": {
"flags": [
"internal"
],
"deprecated": "experimental stack language"
},
"__stevonnie__": {
"flags": [
"internal"
],
"deprecated": "experimental stack language"
},
"__opal__": {
"flags": [
"internal"
],
"deprecated": "experimental stack language"
},
"__sardonyx__": {
"flags": [
"internal"
],
"deprecated": "experimental stack language"
},
"__onion__": {
"flags": [
"internal"
],
"deprecated": "experimental stack language"
},
"__cookiecat__": {
"flags": [
"internal"
],
"deprecated": "experimental stack language"
}
}
},
"languages": {
"$id": "languages",
"title": "Languages",
"anyOf": [
{
"$ref": "#/definitions/language/android"
},
{
"$ref": "#/definitions/language/c"
},
{
"$ref": "#/definitions/language/clojure"
},
{
"$ref": "#/definitions/language/cpp"
},
{
"$ref": "#/definitions/language/crystal"
},
{
"$ref": "#/definitions/language/csharp"
},
{
"$ref": "#/definitions/language/d"
},
{
"$ref": "#/definitions/language/dart"
},
{
"$ref": "#/definitions/language/elixir"
},
{
"$ref": "#/definitions/language/elm"
},
{
"$ref": "#/definitions/language/erlang"
},
{
"$ref": "#/definitions/language/go"
},
{
"$ref": "#/definitions/language/groovy"
},
{
"$ref": "#/definitions/language/hack"
},
{
"$ref": "#/definitions/language/haskell"
},
{
"$ref": "#/definitions/language/haxe"
},
{
"$ref": "#/definitions/language/java"
},
{
"$ref": "#/definitions/language/julia"
},
{
"$ref": "#/definitions/language/nix"
},
{
"$ref": "#/definitions/language/node_js"
},
{
"$ref": "#/definitions/language/objective-c"
},
{
"$ref": "#/definitions/language/perl"
},
{
"$ref": "#/definitions/language/perl6"
},
{
"$ref": "#/definitions/language/php"
},
{
"$ref": "#/definitions/language/python"
},
{
"$ref": "#/definitions/language/r"
},
{
"$ref": "#/definitions/language/ruby"
},
{
"$ref": "#/definitions/language/rust"
},
{
"$ref": "#/definitions/language/scala"
},
{
"$ref": "#/definitions/language/shell"
},
{
"$ref": "#/definitions/language/smalltalk"
},
{
"$ref": "#/definitions/language/__connie__"
},
{
"$ref": "#/definitions/language/__amethyst__"
},
{
"$ref": "#/definitions/language/__garnet__"
},
{
"$ref": "#/definitions/language/__stevonnie__"
},
{
"$ref": "#/definitions/language/__opal__"
},
{
"$ref": "#/definitions/language/__sardonyx__"
},
{
"$ref": "#/definitions/language/__onion__"
},
{
"$ref": "#/definitions/language/__cookiecat__"
}
],
"normal": true
},
"notifications": {
"$id": "notifications",
"title": "Notifications",
"anyOf": [
{
"type": "object",
"properties": {
"campfire": {
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/notification/campfire"
},
"normal": true
},
{
"$ref": "#/definitions/notification/campfire"
}
],
"summary": "Campfire notification settings"
},
"email": {
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/notification/email"
},
"normal": true
},
{
"$ref": "#/definitions/notification/email"
}
],
"summary": "Email notification settings"
},
"flowdock": {
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/notification/flowdock"
},
"normal": true
},
{
"$ref": "#/definitions/notification/flowdock"
}
],
"summary": "Flowdock notification settings"
},
"hipchat": {
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/notification/hipchat"
},
"normal": true
},
{
"$ref": "#/definitions/notification/hipchat"
}
],
"summary": "Hipchat notification settings"
},
"irc": {
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/notification/irc"
},
"normal": true
},
{
"$ref": "#/definitions/notification/irc"
}
],
"summary": "IRC notification settings"
},
"pushover": {
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/notification/pushover"
},
"normal": true
},
{
"$ref": "#/definitions/notification/pushover"
}
],
"summary": "Pushover notification settings"
},
"slack": {
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/notification/slack"
},
"normal": true
},
{
"$ref": "#/definitions/notification/slack"
}
],
"summary": "Slack notification settings"
},
"webhooks": {
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/notification/webhooks"
},
"normal": true
},
{
"$ref": "#/definitions/notification/webhooks"
}
],
"summary": "Webhook notification settings"
},
"on_success": {
"$ref": "#/definitions/notification/frequency"
},
"on_failure": {
"$ref": "#/definitions/notification/frequency"
}
},
"additionalProperties": false,
"normal": true,
"prefix": {
"key": "email"
},
"changes": [
{
"change": "inherit",
"keys": [
"on_success",
"on_failure"
]
}
]
},
{
"type": "array",
"items": {
"$ref": "#/definitions/notification/email"
},
"normal": true
},
{
"$ref": "#/definitions/notification/email"
}
],
"summary": "Notification targets to notify on build results",
"normal": true
},
"os": {
"$id": "os",
"title": "Os",
"type": "string",
"downcase": true,
"defaults": [
{
"value": "linux",
"except": {
"language": [
"objective-c"
]
}
},
{
"value": "osx",
"except": {
"language": [
"php",
"perl",
"erlang",
"groovy",
"clojure",
"scala",
"haskell"
]
}
},
{
"value": "windows",
"only": {
"language": [
"csharp",
"go",
"node_js",
"powershell",
"rust",
"shell"
]
}
}
],
"enum": [
"linux",
"osx",
"windows"
],
"values": {
"linux": {
"aliases": [
"ubuntu"
],
"except": {
"language": [
"objective-c"
]
}
},
"osx": {
"aliases": [
"mac",
"macos",
"macosx",
"ios"
],
"except": {
"language": [
"php",
"perl",
"erlang",
"groovy",
"clojure",
"scala",
"haskell"
]
}
},
"windows": {
"aliases": [
"win"
],
"only": {
"language": [
"csharp",
"go",
"node_js",
"powershell",
"rust",
"shell"
]
}
}
}
},
"oss": {
"$id": "oss",
"title": "Operating systems",
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/type/os"
},
"normal": true
},
{
"$ref": "#/definitions/type/os"
}
],
"summary": "Build environment operating systems",
"see": {
"Build Environment Overview": "https://docs.travis-ci.com/user/reference/overview/"
}
},
"osx_images": {
"$id": "osx_images",
"title": "Osx Images",
"anyOf": [
{
"type": "array",
"items": {
"type": "string",
"summary": "OSX image to use for the build environment",
"only": {
"os": [
"osx"
]
}
},
"normal": true
},
{
"type": "string",
"only": {
"os": [
"osx"
]
}
}
]
},
"secure": {
"$id": "secure",
"title": "Secure",
"anyOf": [
{
"type": "object",
"properties": {
"secure": {
"type": "string"
}
},
"additionalProperties": false,
"maxProperties": 1,
"normal": true
},
{
"type": "string",
"normal": true
}
]
},
"secures": {
"$id": "secures",
"title": "Secures",
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/type/secure"
},
"normal": true
},
{
"$ref": "#/definitions/type/secure"
}
]
},
"service": {
"$id": "service",
"title": "Service",
"type": "string",
"downcase": true,
"example": [
"postgresql",
"redis"
],
"enum": [
"cassandra",
"couchdb",
"docker",
"elasticsearch",
"memcached",
"mongodb",
"mysql",
"neo4j",
"postgresql",
"rabbitmq",
"redis",
"riak",
"xvfb"
],
"values": {
"memcached": {
"aliases": [
"memcache"
]
},
"postgresql": {
"aliases": [
"postgres"
]
},
"rabbitmq": {
"aliases": [
"rabbitmq-server"
]
},
"redis": {
"aliases": [
"redis-server"
]
},
"xvfb": {
"only": {
"dist": [
"xenial"
]
}
}
}
},
"services": {
"$id": "services",
"title": "Services",
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/type/service"
},
"normal": true
},
{
"$ref": "#/definitions/type/service"
}
],
"summary": "Services to set up and start"
},
"stack": {
"$id": "stack",
"title": "Stack",
"type": "string",
"summary": "Build environment stack",
"downcase": true,
"flags": [
"edge",
"internal"
],
"enum": [
"connie",
"amethyst",
"garnet",
"stevonnie",
"opal",
"sardonyx",
"onion",
"cookiecat"
]
},
"stage": {
"$id": "stage",
"title": "Stage",
"anyOf": [
{
"type": "object",
"properties": {
"name": {
"type": "string",
"summary": "The name of the stage",
"example": "unit tests"
},
"if": {
"$ref": "#/definitions/type/condition"
}
},
"additionalProperties": false,
"prefix": {
"key": "name"
},
"normal": true
},
{
"type": "string",
"example": "unit tests"
}
]
},
"stages": {
"$id": "stages",
"title": "Stages",
"description": "Build stages group jobs, and run jobs in each stage in parallel,\nbut run one stage after another sequentially.",
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/type/stage"
},
"normal": true
},
{
"$ref": "#/definitions/type/stage"
}
],
"summary": "Build stages definition",
"see": {
"Build Stages": "https://docs.travis-ci.com/user/build-stages/"
}
},
"strs": {
"$id": "strs",
"title": "Strs",
"anyOf": [
{
"type": "array",
"minItems": 1,
"items": {
"anyOf": [
{
"type": "string"
}
]
},
"normal": true
},
{
"type": "string"
}
]
},
"sudo": {
"$id": "sudo",
"title": "Sudo",
"anyOf": [
{
"type": "boolean",
"normal": true
},
{
"type": "string"
}
],
"summary": "Whether to allow sudo access",
"example": "required",
"deprecated": "The key `sudo` has no effect anymore."
},
"support": {
"$id": "support",
"title": "Support",
"anyOf": [
{
"$ref": "#/definitions/support/android_support"
},
{
"$ref": "#/definitions/support/c_support"
},
{
"$ref": "#/definitions/support/clojure_support"
},
{
"$ref": "#/definitions/support/cpp_support"
},
{
"$ref": "#/definitions/support/crystal_support"
},
{
"$ref": "#/definitions/support/csharp_support"
},
{
"$ref": "#/definitions/support/d_support"
},
{
"$ref": "#/definitions/support/dart_support"
},
{
"$ref": "#/definitions/support/elixir_support"
},
{
"$ref": "#/definitions/support/elm_support"
},
{
"$ref": "#/definitions/support/erlang_support"
},
{
"$ref": "#/definitions/support/go_support"
},
{
"$ref": "#/definitions/support/groovy_support"
},
{
"$ref": "#/definitions/support/hack_support"
},
{
"$ref": "#/definitions/support/haskell_support"
},
{
"$ref": "#/definitions/support/haxe_support"
},
{
"$ref": "#/definitions/support/java_support"
},
{
"$ref": "#/definitions/support/julia_support"
},
{
"$ref": "#/definitions/support/nix_support"
},
{
"$ref": "#/definitions/support/node_js_support"
},
{
"$ref": "#/definitions/support/objective-c_support"
},
{
"$ref": "#/definitions/support/perl_support"
},
{
"$ref": "#/definitions/support/perl6_support"
},
{
"$ref": "#/definitions/support/php_support"
},
{
"$ref": "#/definitions/support/python_support"
},
{
"$ref": "#/definitions/support/r_support"
},
{
"$ref": "#/definitions/support/ruby_support"
},
{
"$ref": "#/definitions/support/rust_support"
},
{
"$ref": "#/definitions/support/scala_support"
},
{
"$ref": "#/definitions/support/shell_support"
},
{
"$ref": "#/definitions/support/smalltalk_support"
},
{
"$ref": "#/definitions/support/__connie___support"
},
{
"$ref": "#/definitions/support/__amethyst___support"
},
{
"$ref": "#/definitions/support/__garnet___support"
},
{
"$ref": "#/definitions/support/__stevonnie___support"
},
{
"$ref": "#/definitions/support/__opal___support"
},
{
"$ref": "#/definitions/support/__sardonyx___support"
},
{
"$ref": "#/definitions/support/__onion___support"
},
{
"$ref": "#/definitions/support/__cookiecat___support"
}
],
"normal": true
},
"version": {
"$id": "version",
"title": "Version",
"type": "string",
"summary": "Build config specification version",
"example": ">= 1.0.0",
"pattern": "^(~>|>|>=|=|<=|<) (\\d+(?:\\.\\d+)?(?:\\.\\d+)?)$"
}
},
"addon": {
"apt": {
"$id": "apt",
"title": "Apt",
"description": "Install APT packages and sources without using apt-get commands in a before_install script manually.",
"anyOf": [
{
"type": "object",
"properties": {
"packages": {
"$ref": "#/definitions/type/strs",
"aliases": [
"package"
],
"summary": "Package names",
"example": "cmake"
},
"sources": {
"anyOf": [
{
"type": "array",
"items": {
"anyOf": [
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"sourceline": {
"type": "string"
},
"key_url": {
"type": "string"
}
},
"additionalProperties": false,
"prefix": {
"key": "name"
},
"normal": true
},
{
"type": "string"
}
]
},
"normal": true
},
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"sourceline": {
"type": "string"
},
"key_url": {
"type": "string"
}
},
"additionalProperties": false,
"prefix": {
"key": "name"
},
"normal": true
},
{
"type": "string"
}
],
"aliases": [
"source"
],
"summary": "Package sources",
"example": "ubuntu-toolchain-r-test"
},
"dist": {
"type": "string",
"summary": "Distribution"
},
"update": {
"type": "boolean",
"summary": "Whether to run apt-get update"
},
"config": {
"type": "object",
"properties": {
"retries": {
"type": "boolean"
}
},
"additionalProperties": false
}
},
"additionalProperties": false,
"prefix": {
"key": "packages"
},
"normal": true,
"changes": [
{
"change": "enable"
}
]
},
{
"$ref": "#/definitions/type/strs",
"example": "cmake"
},
{
"type": "boolean"
}
],
"summary": "APT packages and sources to install",
"see": {
"Installing Packages with the APT Addon": "https://docs.travis-ci.com/user/installing-dependencies/#installing-packages-with-the-apt-addon"
},
"normal": true
},
"artifacts": {
"$id": "artifacts",
"title": "Artifacts",
"description": "Automatically upload your build artifacts to Amazon S3 at the end of a build, after the `after_script` phase.\n\nPlease see [our documentation](https://docs.travis-ci.com/user/uploading-artifacts/) for details.",
"anyOf": [
{
"type": "object",
"properties": {
"enabled": {
"type": "boolean",
"summary": "Enable or disable uploading artifacts"
},
"bucket": {
"type": "string",
"summary": "The S3 bucket to upload to"
},
"endpoint": {
"type": "string",
"summary": "The S3 compatible endpoint to upload to"
},
"key": {
"$ref": "#/definitions/type/secure",
"summary": "The S3 access key id",
"aliases": [
"aws_access_key_id",
"aws_access_key",
"access_key_id",
"access_key"
],
"strict": false
},
"secret": {
"$ref": "#/definitions/type/secure",
"summary": "The S3 secret access key",
"aliases": [
"aws_secret_access_key",
"aws_secret_key",
"secret_access_key",
"secret_key"
]
},
"region": {
"type": "string",
"aliases": [
"s3_region"
],
"summary": "The S3 region"
},
"paths": {
"$ref": "#/definitions/type/strs",
"summary": "Paths to the files to upload"
},
"branch": {
"type": "string"
},
"log_format": {
"type": "string"
},
"target_paths": {
"$ref": "#/definitions/type/strs"
},
"debug": {
"type": "boolean"
},
"concurrency": {
"type": "number"
},
"max_size": {
"type": "number"
},
"permissions": {
"type": "string"
},
"working_dir": {
"type": "string"
},
"cache_control": {
"type": "string"
}
},
"additionalProperties": false,
"normal": true,
"changes": [
{
"change": "enable"
}
]
},
{
"type": "boolean"
}
],
"summary": "Build artifacts to upload at the end of the build",
"see": {
"Uploading Artifacts on Travis CI": "https://docs.travis-ci.com/user/uploading-artifacts/"
},
"normal": true
},
"browserstack": {
"$id": "browserstack",
"title": "Browserstack",
"anyOf": [
{
"type": "object",
"properties": {
"username": {
"$ref": "#/definitions/type/secure",
"strict": false,
"summary": "Browserstack username"
},
"access_key": {
"$ref": "#/definitions/type/secure",
"summary": "Browserstack access key"
},
"forcelocal": {
"type": "boolean",
"summary": "Force all network traffic to be resolved via the build environment VM"
},
"only": {
"type": "string",
"summary": "Restrict local testing access to the specified local servers/directories"
},
"app_path": {
"type": "string",
"summary": "Path to the app file"
},
"proxyHost": {
"type": "string"
},
"proxyPort": {
"type": "string"
},
"proxyUser": {
"type": "string"
},
"proxyPass": {
"$ref": "#/definitions/type/secure"
}
},
"additionalProperties": false,
"normal": true,
"changes": [
{
"change": "enable"
}
]
},
{
"type": "boolean"
}
],
"summary": "Browserstack settings",
"see": {
"Using BrowserStack with Travis CI": "https://docs.travis-ci.com/user/browserstack/"
},
"normal": true
},
"code_climate": {
"$id": "code_climate",
"title": "Code Climate",
"anyOf": [
{
"type": "object",
"properties": {
"repo_token": {
"$ref": "#/definitions/type/secure",
"summary": "Code Climate repo token"
}
},
"additionalProperties": false,
"prefix": {
"key": "repo_token"
},
"normal": true,
"changes": [
{
"change": "enable"
}
]
},
{
"$ref": "#/definitions/type/secure"
},
{
"type": "boolean"
}
],
"summary": "CodeClimate settings",
"see": {
"Using Code Climate with Travis CI": "https://docs.travis-ci.com/user/code-climate/"
},
"normal": true
},
"coverity_scan": {
"$id": "coverity_scan",
"title": "Coverity Scan",
"anyOf": [
{
"type": "object",
"properties": {
"project": {
"anyOf": [
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"version": {
"type": "string"
},
"description": {
"type": "string"
}
},
"additionalProperties": false,
"prefix": {
"key": "name"
},
"normal": true,
"required": [
"name"
]
},
{
"type": "string"
}
]
},
"build_script_url": {
"type": "string"
},
"branch_pattern": {
"type": "string"
},
"notification_email": {
"$ref": "#/definitions/type/secure",
"strict": false
},
"build_command": {
"type": "string"
},
"build_command_prepend": {
"type": "string"
}
},
"additionalProperties": false,
"normal": true,
"changes": [
{
"change": "enable"
}
]
},
{
"type": "boolean"
}
],
"summary": "CoverityScan settings",
"see": {
"The Coverity Scan Addon for Travis CI": "https://scan.coverity.com/travis_ci"
},
"normal": true
},
"homebrew": {
"$id": "homebrew",
"title": "Homebrew",
"anyOf": [
{
"type": "object",
"properties": {
"update": {
"type": "boolean"
},
"packages": {
"$ref": "#/definitions/type/strs"
},
"casks": {
"$ref": "#/definitions/type/strs"
},
"taps": {
"$ref": "#/definitions/type/strs"
},
"brewfile": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "string"
}
]
}
},
"additionalProperties": false,
"prefix": {
"key": "packages"
},
"normal": true,
"changes": [
{
"change": "enable"
}
]
},
{
"$ref": "#/definitions/type/strs"
},
{
"type": "boolean"
}
],
"summary": "Homebrew packages to install",
"see": {
"Installing Packages on macOS": "https://docs.travis-ci.com/user/installing-dependencies/#installing-packages-on-macos"
},
"normal": true
},
"jwts": {
"$id": "jwts",
"title": "JSON Web Tokens",
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/definitions/type/secure"
},
"deprecated": "Discontinued as of April 17, 2018",
"normal": true
},
{
"$ref": "#/definitions/type/secure"
}
],
"see": {
"JWT addon will be deprecated on April 17": "https://blog.travis-ci.com/2018-01-23-jwt-addon-is-deprecated"
},
"deprecated": "Discontinued as of April 17, 2018"
},
"sauce_connect": {
"$id": "sauce_connect",
"title": "Sauce Connect",
"anyOf": [
{
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"username": {
"$ref": "#/definitions/type/secure",
"strict": false
},
"access_key": {
"$ref": "#/definitions/type/secure"
},
"direct_domains": {
"type": "string"
},
"tunnel_domains": {
"type": "string"
},
"no_ssl_bump_domains": {
"type": "string"
}
},
"additionalProperties": false,
"normal": true,
"changes": [
{
"change": "enable"
}
]
},
{
"type": "boolean"
}
],
"summary": "SourceConnect settings",
"see": {
"Using Sauce Labs with Travis CI": "https://docs.travis-ci.com/user/sauce-connect/"
},
"normal": true
},
"snaps": {
"$id": "snaps",
"title": "Snaps",
"anyOf": [
{
"type": "array",
"items": {
"anyOf": [
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"classic": {
"type": "boolean"
},
"channel": {
"type": "string"
}
},
"additionalProperties": false,
"prefix": {
"key": "name"
},
"normal": true
},
{
"type": "string"
}
]
},
"normal": true
},
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"classic": {
"type": "boolean"
},
"channel": {
"type": "string"
}
},
"additionalProperties": false,
"prefix": {
"key": "name"
},
"normal": true
},
{
"type": "string"
}
],
"summary": "Ubuntu Snaps to install",
"see": {
"Snap Store": "https://docs.travis-ci.com/user/deployment/snaps/"
}
},
"sonarcloud": {
"$id": "sonarcloud",
"title": "Sonarcloud",
"anyOf": [
{
"type": "object",
"properties": {
"organization": {
"type": "string"
},
"token": {
"$ref": "#/definitions/type/secure"
},
"github_token": {
"$ref": "#/definitions/type/secure",
"deprecated": "not supported any more"
},
"branches": {
"$ref": "#/definitions/type/strs",
"deprecated": "not supported any more"
}
},
"additionalProperties": false,
"normal": true,
"changes": [
{
"change": "enable"
}
]
},
{
"type": "boolean"
}
],
"summary": "Sonarcloud settings",
"see": {
"Using SonarCloud with Travis CI": "https://docs.travis-ci.com/user/sonarcloud/"
},
"normal": true
}
},
"deploy": {
"anynines": {
"$id": "anynines",
"title": "Anynines",
"anyOf": [
{
"type": "object",
"properties": {
"username": {
"$ref": "#/definitions/type/secure",
"strict": false
},
"password": {
"$ref": "#/definitions/type/secure"
},
"organization": {
"type": "string"
},
"space": {
"type": "string"
},
"app_name": {
"type": "string"
},
"buildpack": {
"type": "string"
},
"manifest": {
"type": "string"
},
"logout": {
"type": "boolean"
},
"provider": {
"type": "string",
"enum": [
"anynines"
],
"strict": true
},
"on": {
"$ref": "#/definitions/deploy/conditions",
"aliases": [
"true"
]
},
"run": {
"$ref": "#/definitions/type/strs"
},
"allow_failure": {
"type": "boolean"
},
"cleanup": {
"type": "boolean"
},
"skip_cleanup": {
"type": "boolean",
"deprecated": "not supported in dpl v2, use cleanup"
},
"edge": {
"$ref": "#/definitions/deploy/edge"
}
},
"additionalProperties": false,
"normal": true,
"prefix": {
"key": "provider",
"only": [
"str"
]
},
"required": [
"provider"
]
},
{
"type": "string",
"enum": [
"anynines"
],
"strict": true
}
],
"normal": true
},
"azure_web_apps": {
"$id": "azure_web_apps",
"title": "Azure Web Apps",
"anyOf": [
{
"type": "object",
"properties": {
"site": {
"type": "string"
},
"slot": {
"type": "string"
},
"username": {
"$ref": "#/definitions/type/secure",
"strict": false
},
"password": {
"$ref": "#/definitions/type/secure"
},
"verbose": {
"type": "boolean"
},
"provider": {
"type": "string",
"enum": [
"azure_web_apps"
],
"strict": true
},
"on": {
"$ref": "#/definitions/deploy/conditions",
"aliases": [
"true"
]
},
"run": {
"$ref": "#/definitions/type/strs"
},
"allow_failure": {
"type": "boolean"
},
"cleanup": {
"type": "boolean"
},
"skip_cleanup": {
"type": "boolean",
"deprecated": "not supported in dpl v2, use cleanup"
},
"edge": {
"$ref": "#/definitions/deploy/edge"
}
},
"additionalProperties": false,
"normal": true,
"prefix": {
"key": "provider",
"only": [
"str"
]
},
"required": [
"provider"
]
},
{
"type": "string",
"enum": [
"azure_web_apps"
],
"strict": true
}
],
"normal": true
},
"bintray": {
"$id": "bintray",
"title": "Bintray",
"anyOf": [
{
"type": "object",
"properties": {
"user": {
"$ref": "#/definitions/type/secure",
"strict": false
},
"key": {
"$ref": "#/definitions/type/secure"
},
"file": {
"type": "string"
},
"passphrase": {
"$ref": "#/definitions/type/secure"
},
"url": {
"type": "string"
},
"provider": {
"type": "string",
"enum": [
"bintray"
],
"strict": true
},
"on": {
"$ref": "#/definitions/deploy/conditions",
"aliases": [
"true"
]
},
"run": {
"$ref": "#/definitions/type/strs"
},
"allow_failure": {
"type": "boolean"
},
"cleanup": {
"type": "boolean"
},
"skip_cleanup": {
"type": "boolean",
"deprecated": "not supported in dpl v2, use cleanup"
},
"edge": {
"$ref": "#/definitions/deploy/edge"
}
},
"additionalProperties": false,
"normal": true,
"prefix": {
"key": "provider",
"only": [
"str"
]
},
"required": [
"provider"
]
},
{
"type": "string",
"enum": [
"bintray"
],
"strict": true
}
],
"normal": true
},
"bluemixcloudfoundry": {
"$id": "bluemixcloudfoundry",
"title": "Bluemixcloudfoundry",
"anyOf": [
{
"type": "object",
"properties": {
"username": {
"$ref": "#/definitions/type/secure",
"strict": false
},
"password": {
"$ref": "#/definitions/type/secure"
},
"organization": {
"type": "string"
},
"api": {
"type": "string"
},
"space": {
"type": "string"
},
"region": {
"type": "string"
},
"buildpack": {
"type": "string"
},
"manifest": {
"type": "string"
},
"skip_ssl_validation": {
"type": "boolean"
},
"app_name": {
"type": "string"
},
"logout": {
"type": "boolean"
},
"provider": {
"type": "string",
"enum": [
"bluemixcloudfoundry"
],
"strict": true
},
"on": {
"$ref": "#/definitions/deploy/conditions",
"aliases": [
"true"
]
},
"run": {
"$ref": "#/definitions/type/strs"
},
"allow_failure": {
"type": "boolean"
},
"cleanup": {
"type": "boolean"
},
"skip_cleanup": {
"type": "boolean",
"deprecated": "not supported in dpl v2, use cleanup"
},
"edge": {
"$ref": "#/definitions/deploy/edge"
}
},
"additionalProperties": false,
"normal": true,
"prefix": {
"key": "provider",
"only": [
"str"
]
},
"required": [
"provider"
]
},
{
"type": "string",
"enum": [
"bluemixcloudfoundry"
],
"strict": true
}
],
"normal": true
},
"boxfuse": {
"$id": "boxfuse",
"title": "Boxfuse",
"anyOf": [
{
"type": "object",
"properties": {
"user": {
"$ref": "#/definitions/type/secure",
"strict": false
},
"secret": {
"$ref": "#/definitions/type/secure"
},
"config_file": {
"type": "string",
"aliases": [
"configfile"
]
},
"payload": {
"type": "string"
},
"app": {
"type": "string"
},
"version": {
"type": "string"
},
"env": {
"type": "string"
},
"extra_args": {
"type": "string"
},
"provider": {
"type": "string",
"enum": [
"boxfuse"
],
"strict": true
},
"on": {
"$ref": "#/definitions/deploy/conditions",
"aliases": [
"true"
]
},
"run": {
"$ref": "#/definitions/type/strs"
},
"allow_failure": {
"type": "boolean"
},
"cleanup": {
"type": "boolean"
},
"skip_cleanup": {
"type": "boolean",
"deprecated": "not supported in dpl v2, use cleanup"
},
"edge": {
"$ref": "#/definitions/deploy/edge"
}
},
"additionalProperties": false,
"normal": true,
"prefix": {
"key": "provider",
"only": [
"str"
]
},
"required": [
"provider"
]
},
{
"type": "string",
"enum": [
"boxfuse"
],
"strict": true
}
],
"normal": true
},
"branches": {
"$id": "branches",
"title": "Branches",
"anyOf": [
{
"$ref": "#/definitions/type/strs",
"normal": true
},
{
"type": "object",
"normal": true,
"deprecated": "branch_specific_option_hash"
}
]
},
"cargo": {
"$id": "cargo",
"title": "Cargo",
"anyOf": [
{
"type": "object",
"properties": {
"token": {
"$ref": "#/definitions/type/secure"
},
"allow_dirty": {
"type": "boolean"
},
"provider": {
"type": "string",
"enum": [
"cargo"
],
"strict": true
},
"on": {
"$ref": "#/definitions/deploy/conditions",
"aliases": [
"true"
]
},
"run": {
"$ref": "#/definitions/type/strs"
},
"allow_failure": {
"type": "boolean"
},
"cleanup": {
"type": "boolean"
},
"skip_cleanup": {
"type": "boolean",
"deprecated": "not supported in dpl v2, use cleanup"
},
"edge": {
"$ref": "#/definitions/deploy/edge"
}
},
"additionalProperties": false,
"normal": true,
"prefix": {
"key": "provider",
"only": [
"str"
]
},
"required": [
"provider"
]
},
{
"type": "string",
"enum": [
"cargo"
],
"strict": true
}
],
"normal": true
},
"chef_supermarket": {
"$id": "chef_supermarket",
"title": "Chef Supermarket",
"anyOf": [
{
"type": "object",
"properties": {
"user_id": {
"type": "string"
},
"client_key": {
"type": "string"
},
"name": {
"type": "string",
"aliases": [
"cookbook_name"
]
},
"category": {
"type": "string",
"aliases": [
"cookbook_category"
]
},
"dir": {
"type": "string"
},
"provider": {
"type": "string",
"enum": [
"chef_supermarket"
],
"strict": true
},
"on": {
"$ref": "#/definitions/deploy/conditions",
"aliases": [
"true"
]
},
"run": {
"$ref": "#/definitions/type/strs"
},
"allow_failure": {
"type": "boolean"
},
"cleanup": {
"type": "boolean"
},
"skip_cleanup": {
"type": "boolean",
"deprecated": "not supported in dpl v2, use cleanup"
},
"edge": {
"$ref": "#/definitions/deploy/edge"
}
},
"additionalProperties": false,
"normal": true,
"prefix": {
"key": "provider",
"only": [
"str"
]
},
"required": [
"provider"
]
},
{
"type": "string",
"enum": [
"chef_supermarket"
],
"strict": true
}
],
"normal": true
},
"cloud66": {
"$id": "cloud66",
"title": "Cloud66",
"anyOf": [
{
"type": "object",
"properties": {
"redeployment_hook": {
"$ref": "#/definitions/type/secure"
},
"provider": {
"type": "string",
"enum": [
"cloud66"
],
"strict": true
},
"on": {
"$ref": "#/definitions/deploy/conditions",
"aliases": [
"true"
]
},
"run": {
"$ref": "#/definitions/type/strs"
},
"allow_failure": {
"type": "boolean"
},
"cleanup": {
"type": "boolean"
},
"skip_cleanup": {
"type": "boolean",
"deprecated": "not supported in dpl v2, use cleanup"
},
"edge": {
"$ref": "#/definitions/deploy/edge"
}
},
"additionalProperties": false,
"normal": true,
"prefix": {
"key": "provider",
"only": [
"str"
]
},
"required": [
"provider"
]
},
{
"type": "string",
"enum": [
"cloud66"
],
"strict": true
}
],
"normal": true
},
"cloudfiles": {
"$id": "cloudfiles",
"title": "Cloudfiles",
"anyOf": [
{
"type": "object",
"properties": {
"username": {
"$ref": "#/definitions/type/secure",
"strict": false
},
"api_key": {
"$ref": "#/definitions/type/secure"
},
"region": {
"type": "string"
},
"container": {
"type": "string"
},
"glob": {
"type": "string"
},
"dot_match": {
"type": "boolean"
},
"provider": {
"type": "string",
"enum": [
"cloudfiles"
],
"strict": true
},
"on": {
"$ref": "#/definitions/deploy/conditions",
"aliases": [
"true"
]
},
"run": {
"$ref": "#/definitions/type/strs"
},
"allow_failure": {
"type": "boolean"
},
"cleanup": {
"type": "boolean"
},
"skip_cleanup": {
"type": "boolean",
"deprecated": "not supported in dpl v2, use cleanup"
},
"edge": {
"$ref": "#/definitions/deploy/edge"
}
},
"additionalProperties": false,
"normal": true,
"prefix": {
"key": "provider",
"only": [
"str"
]
},
"required": [
"provider"
]
},
{
"type": "string",
"enum": [
"cloudfiles"
],
"strict": true
}
],
"normal": true
},
"cloudformation": {
"$id": "cloudformation",
"title": "Cloudformation",
"anyOf": [
{
"type": "object",
"properties": {
"access_key_id": {
"$ref": "#/definitions/type/secure",
"strict": false
},
"secret_access_key": {
"$ref": "#/definitions/type/secure"
},
"region": {
"type": "string"
},
"template": {
"type": "string"
},
"stack_name": {
"type": "string"
},
"stack_name_prefix": {
"type": "string"
},
"promote": {
"type": "boolean"
},
"role_arn": {
"type": "string"
},
"sts_assume_role": {
"type": "string"
},
"capabilities": {
"$ref": "#/definitions/type/strs"
},
"wait": {
"type": "boolean"
},
"wait_timeout": {
"type": "number"
},
"create_timeout": {
"type": "number"
},
"session_token": {
"type": "string"
},
"parameters": {
"$ref": "#/definitions/type/strs"
},
"output_file": {
"type": "string"
},
"provider": {
"type": "string",
"enum": [
"cloudformation"
],
"strict": true
},
"on": {
"$ref": "#/definitions/deploy/conditions",
"aliases": [
"true"
]
},
"run": {
"$ref": "#/definitions/type/strs"
},
"allow_failure": {
"type": "boolean"
},
"cleanup": {
"type": "boolean"
},
"skip_cleanup": {
"type": "boolean",
"deprecated": "not supported in dpl v2, use cleanup"
},
"edge": {
"$ref": "#/definitions/deploy/edge"
}
},
"additionalProperties": false,
"normal": true,
"prefix": {
"key": "provider",
"only": [
"str"
]
},
"required": [
"provider"
]
},
{
"type": "string",
"enum": [
"cloudformation"