eslint-plugin-json-schema-validator
Version:
ESLint plugin that validates data using JSON Schema Validator.
1 lines • 24.8 kB
JSON
{"title":"JSON schema for Travis CI configuration files","$schema":"http://json-schema.org/draft-04/schema#","definitions":{"nonEmptyString":{"type":"string","minLength":1},"notRequiredNonEmptyString":{"oneOf":[{"$ref":"#/definitions/nonEmptyString"},{"type":"null"}]},"arrayOfNonEmptyStrings":{"type":"array","items":{"$ref":"#/definitions/nonEmptyString"}},"nonEmptyStringOrArrayOfNonEmptyStrings":{"oneOf":[{"$ref":"#/definitions/nonEmptyString"},{"$ref":"#/definitions/arrayOfNonEmptyStrings"}]},"notRequiredNonEmptyStringOrArrayOfNonEmptyStrings":{"oneOf":[{"$ref":"#/definitions/nonEmptyStringOrArrayOfNonEmptyStrings"},{"type":"null"}]},"stringArrayUnique":{"type":"array","uniqueItems":true,"minItems":1,"items":{"$ref":"#/definitions/nonEmptyString"}},"stringOrStringArrayUnique":{"oneOf":[{"$ref":"#/definitions/nonEmptyString"},{"$ref":"#/definitions/stringArrayUnique"}]},"stringOrNumber":{"oneOf":[{"$ref":"#/definitions/nonEmptyString"},{"type":"number"}]},"stringOrNumberAndBothAreTypeArrayUnique":{"type":"array","uniqueItems":true,"minItems":1,"items":{"$ref":"#/definitions/stringOrNumber"}},"stringOrNumberOrAcceptBothTypeAsArrayUnique":{"oneOf":[{"$ref":"#/definitions/stringOrNumber"},{"$ref":"#/definitions/stringOrNumberAndBothAreTypeArrayUnique"}]},"secretString":{"type":"object","additionalProperties":false,"properties":{"secure":{"$ref":"#/definitions/nonEmptyString"}}},"possiblySecretString":{"oneOf":[{"type":"string"},{"type":"object","additionalProperties":false,"properties":{"secure":{"type":"string"}}}]},"possiblySecretStringOrPossiblySecretStringTypeArrayUnique":{"oneOf":[{"$ref":"#/definitions/possiblySecretString"},{"type":"array","uniqueItems":true,"minItems":1,"items":{"$ref":"#/definitions/possiblySecretString"}}]},"slackRoom":{"oneOf":[{"type":"string","pattern":".+:.+(#.+)?"},{"$ref":"#/definitions/secretString"}]},"notificationFrequency":{"enum":["always","never","change"]},"step":{"anyOf":[{"type":"boolean"},{"enum":["skip","ignore"]},{"type":"string"},{"type":"array","items":{"type":"string"}}]},"service":{"enum":["cassandra","couchdb","docker","elasticsearch","mariadb","memcached","mongodb","mysql","neo4j","postgresql","rabbitmq","redis","rethinkdb","riak","xvfb"]},"cache":{"enum":["apt","bundler","cargo","ccache","cocoapods","packages","pip","yarn","npm"]},"xcodeVersions":{"enum":["xcode6.4","xcode7.3","xcode8","xcode8.3","xcode9","xcode9.1","xcode9.2","xcode9.3","xcode9.4","xcode10","xcode10.1","xcode10.2","xcode10.3","xcode11","xcode11.1","xcode11.2","xcode11.3","xcode11.4","xcode11.5","xcode11.6","xcode11.7","xcode12u","xcode12","xcode12.1","xcode12.2","xcode12.3"]},"envVars":{"oneOf":[{"$ref":"#/definitions/envVar"},{"type":"array","items":{"$ref":"#/definitions/envVar"}}]},"envVar":{"oneOf":[{"type":"string","pattern":"[^=]+=.*"},{"type":"object","additionalProperties":false,"properties":{"secure":{"type":"string","pattern":"[^=]+=.*"}}}]},"job":{"type":"object","properties":{"language":{"enum":["android","bash","c","c++","clojure","cpp","crystal","csharp","d","dart","dartlang","elixir","elm","erlang","generic","go","golang","groovy","haskell","haxe","java","javascript","julia","jvm","matlab","minimal","nix","node","node.js","node_js","nodejs","obj-c","obj_c","objective-c","objective_c","perl","perl6","php","python","r","ruby","rust","scala","sh","shell","smalltalk"]},"matlab":{"$ref":"#/definitions/stringOrStringArrayUnique"},"elm":{"$ref":"#/definitions/stringOrStringArrayUnique"},"elm-test":{"$ref":"#/definitions/nonEmptyString"},"elm-format":{"$ref":"#/definitions/nonEmptyString"},"haxe":{"type":"array","items":{"type":"string"}},"scala":{"type":"array","items":{"type":"string"}},"sbt_args":{"type":"string"},"crystal":{"type":"array","items":{"type":"string"}},"neko":{"type":"string"},"hxml":{"type":"array","items":{"type":"string"}},"smalltalk":{"type":"array","items":{"type":"string"}},"perl":{"type":"array","items":{"type":"string"}},"perl6":{"type":"array","items":{"type":"string"}},"d":{"type":"array","items":{"type":"string"}},"dart":{"type":"array","items":{"type":"string"}},"dart_task":{"type":"array","items":{"type":"object","properties":{"test":{"type":"string"},"install_dartium":{"type":"boolean"},"xvfb":{"type":"boolean"},"dartanalyzer":{"type":"boolean"},"dartfmt":{"type":"boolean"}}}},"ghc":{"type":"array","items":{"type":"string"}},"lein":{"type":"string"},"android":{"type":"object","properties":{"components":{"type":"array","items":{"type":"string"}},"licenses":{"type":"array","items":{"type":"string"}}},"additionalProperties":false},"node_js":{"$ref":"#/definitions/stringOrNumberOrAcceptBothTypeAsArrayUnique"},"compiler":{"oneOf":[{"type":"array","items":{"enum":["clang","gcc"]}},{"enum":["clang","gcc"]}]},"php":{"$ref":"#/definitions/stringOrNumberOrAcceptBothTypeAsArrayUnique"},"go":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"jdk":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"solution":{"type":"string"},"mono":{"oneOf":[{"enum":["none"]},{"type":"array","items":{"type":"string"}}]},"xcode_project":{"type":"string"},"xcode_workspace":{"type":"string"},"xcode_scheme":{"type":"string"},"xcode_sdk":{"type":"string"},"podfile":{"type":"string"},"python":{"$ref":"#/definitions/stringOrNumberOrAcceptBothTypeAsArrayUnique"},"elixir":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"rust":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"},{"type":"number"}]},"erlang":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"julia":{"$ref":"#/definitions/stringOrNumberOrAcceptBothTypeAsArrayUnique"},"opt_release":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"rvm":{"$ref":"#/definitions/stringOrNumberOrAcceptBothTypeAsArrayUnique"},"gemfile":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"bundler_args":{"type":"string"},"r":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"pandoc_version":{"type":"string"},"brew_packages":{"type":"array","items":{"type":"string"}},"r_binary_packages":{"type":"array","items":{"type":"string"}},"r_packages":{"type":"array","items":{"type":"string"}},"bioc_packages":{"type":"array","items":{"type":"string"}},"r_github_packages":{"type":"array","items":{"type":"string"}},"apt_packages":{"type":"array","items":{"type":"string"}},"cran":{"type":"string"},"repos":{"type":"object","additionalProperties":{"type":"string"}},"arch":{"oneOf":[{"enum":["amd64","arm64","ppc64le","s390x","arm64-graviton2"]},{"type":"array","uniqueItems":true,"minItems":1,"items":{"enum":["amd64","arm64","ppc64le","s390x","arm64-graviton2"]}}]},"os":{"oneOf":[{"enum":["osx","linux","windows"]},{"type":"array","uniqueItems":true,"minItems":1,"items":{"enum":["osx","linux","windows"]}}]},"osx_image":{"oneOf":[{"$ref":"#/definitions/xcodeVersions"},{"type":"array","uniqueItems":true,"minItems":1,"items":{"$ref":"#/definitions/xcodeVersions"}}],"default":"xcode9.4"},"dist":{"enum":["precise","trusty","xenial","bionic","focal"]},"sudo":{"enum":[true,false,"","required","enabled"]},"addons":{"type":"object","properties":{"apt":{"type":"object","properties":{"update":{"type":"boolean"},"sources":{"type":"array","items":{"oneOf":[{"type":"object","properties":{"sourceline":{"type":"string"},"key_url":{"type":"string"}},"required":["sourceline"],"additionalProperties":false},{"type":"string"}]}},"packages":{"type":"array","items":{"type":"string"}}},"additionalProperties":false},"hosts":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"string"}]},"ssh_known_hosts":{"$ref":"#/definitions/stringOrStringArrayUnique"},"artifacts":{"oneOf":[{"enum":[true]},{"type":"object","properties":{"s3_region":{"type":"string"},"paths":{"type":"array","items":{"type":"string"}},"working_dir":{"type":"string"},"debug":{"type":"boolean"}}}]},"firefox":{"anyOf":[{"type":"string","enum":["latest","latest-esr","latest-beta","latest-dev","latest-nightly","latest-unsigned"]},{"$ref":"#/definitions/nonEmptyString"}]},"chrome":{"type":"string","enum":["stable","beta"]},"rethinkdb":{"type":"string"},"postgresql":{"type":"string"},"mariadb":{"type":"string"},"sauce_connect":{"oneOf":[{"type":"object","properties":{"username":{"type":"string"},"access_key":{"type":"string"}}},{"type":"boolean"}]},"sonarcloud":{"type":"object","properties":{"organization":{"type":"string"},"token":{"$ref":"#/definitions/secretString"}}},"coverity_scan":{"type":"object","properties":{"project":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"number"},"description":{"type":"string"}},"required":["name"]},"notification_email":{"type":"string"},"build_command_prepend":{"type":"string"},"build_command":{"type":"string"},"branch_pattern":{"type":"string"}}},"homebrew":{"type":"object","additionalProperties":false,"properties":{"taps":{"$ref":"#/definitions/stringOrStringArrayUnique"},"packages":{"$ref":"#/definitions/stringOrStringArrayUnique"},"casks":{"$ref":"#/definitions/stringOrStringArrayUnique"},"brewfile":{"oneOf":[{"$ref":"#/definitions/nonEmptyString"},{"type":"boolean","default":true}]},"update":{"type":"boolean","default":true}}},"srcclr":{"oneOf":[{"type":"boolean","default":true},{"type":"object","additionalProperties":false,"properties":{"debug":{"type":"boolean","default":true}}}]},"snaps":{"oneOf":[{"$ref":"#/definitions/nonEmptyString"},{"type":"array","uniqueItems":true,"minItems":1,"items":{"oneOf":[{"$ref":"#/definitions/nonEmptyString"},{"type":"object","additionalProperties":false,"required":["name"],"properties":{"name":{"$ref":"#/definitions/nonEmptyString"},"channel":{"$ref":"#/definitions/nonEmptyString"},"classic":{"type":"boolean"},"confinement":{"enum":["classic","devmode"]}}}]}}]},"browserstack":{"type":"object","properties":{"username":{"$ref":"#/definitions/nonEmptyString"},"access_key":{"$ref":"#/definitions/possiblySecretString"},"app_path":{"$ref":"#/definitions/nonEmptyString"},"proxyHost":{"$ref":"#/definitions/nonEmptyString"},"proxyPort":{"$ref":"#/definitions/nonEmptyString"},"proxyUser":{"$ref":"#/definitions/nonEmptyString"},"proxyPass":{"$ref":"#/definitions/nonEmptyString"},"forcelocal":{"type":"boolean"},"only":{"$ref":"#/definitions/nonEmptyString"}}}},"additionalProperties":false},"cache":{"oneOf":[{"enum":[false]},{"$ref":"#/definitions/cache"},{"type":"array","items":{"oneOf":[{"$ref":"#/definitions/cache"},{"type":"object","additionalProperties":false,"properties":{"directories":{"type":"array","items":{"type":"string"}}}}]}},{"type":"object","properties":{"directories":{"type":"array","items":{"type":"string"}},"timeout":{"type":"number","default":1800},"apt":{"type":"boolean"},"bundler":{"type":"boolean"},"cocoapods":{"type":"boolean"},"pip":{"type":"boolean"},"yarn":{"type":"boolean"},"ccache":{"type":"boolean"},"packages":{"type":"boolean"},"cargo":{"type":"boolean"},"npm":{"type":"boolean"}},"additionalProperties":false}]},"services":{"oneOf":[{"$ref":"#/definitions/service"},{"type":"array","items":{"$ref":"#/definitions/service"}}]},"git":{"type":"object","properties":{"depth":{"oneOf":[{"type":"integer","default":50},{"enum":[false]}]},"quiet":{"type":"boolean"},"submodules":{"type":"boolean"},"lfs_skip_smudge":{"type":"boolean"},"clone":{"type":"boolean"},"sparse_checkout":{"$ref":"#/definitions/nonEmptyString"},"autocrlf":{"oneOf":[{"type":"boolean"},{"type":"string","enum":["input"]}]}},"additionalProperties":false},"branches":{"type":"object","properties":{"except":{"type":"array","items":{"type":"string"}},"only":{"type":"array","items":{"type":"string"}}},"additionalProperties":false},"env":{"oneOf":[{"$ref":"#/definitions/envVars"},{"type":"object","properties":{"global":{"$ref":"#/definitions/envVars"},"matrix":{"$ref":"#/definitions/envVars"},"jobs":{"$ref":"#/definitions/envVars"}},"additionalProperties":false}]},"before_install":{"$ref":"#/definitions/step"},"install":{"$ref":"#/definitions/step"},"before_script":{"$ref":"#/definitions/step"},"script":{"$ref":"#/definitions/step"},"before_cache":{"$ref":"#/definitions/step"},"after_success":{"$ref":"#/definitions/step"},"after_failure":{"$ref":"#/definitions/step"},"before_deploy":{"$ref":"#/definitions/step"},"deploy":{"oneOf":[{"type":"array","items":{"$ref":"#/definitions/deployment"}},{"$ref":"#/definitions/deployment"}]},"after_deploy":{"$ref":"#/definitions/step"},"after_script":{"$ref":"#/definitions/step"}}},"deployment":{"allOf":[{"type":"object","properties":{"on":{"type":"object","properties":{"tags":{"oneOf":[{"type":"boolean"},{"type":"string"}]},"branch":{"type":"string"},"all_branches":{"type":"boolean"},"skip_cleanup":{"type":"boolean"},"repo":{"type":"string"},"condition":{"type":"string"}}}}},{"oneOf":[{"type":"object","properties":{"provider":{"enum":["script"]},"script":{"type":"string"}},"required":["provider","script"]},{"type":"object","properties":{"provider":{"enum":["npm"]},"email":{"$ref":"#/definitions/possiblySecretString"},"api_key":{"$ref":"#/definitions/possiblySecretString"},"api_token":{"$ref":"#/definitions/possiblySecretString"},"tag":{"type":"string"}},"oneOf":[{"required":["provider","email","api_key"]},{"required":["provider","email","api_token"]}]},{"type":"object","properties":{"provider":{"enum":["surge"]},"project":{"type":"string"},"domain":{"type":"string"}},"required":["provider"]},{"type":"object","properties":{"provider":{"enum":["releases"]},"api_key":{"$ref":"#/definitions/possiblySecretString"},"user":{"$ref":"#/definitions/possiblySecretString"},"password":{"$ref":"#/definitions/possiblySecretString"},"file":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"file_glob":{"type":"boolean"},"overwrite":{"type":"boolean"}},"required":["provider"]},{"type":"object","properties":{"provider":{"enum":["heroku"]},"api_key":{"anyOf":[{"$ref":"#/definitions/possiblySecretString"},{"type":"object","additionalProperties":{"$ref":"#/definitions/possiblySecretString"}}]},"app":{"oneOf":[{"type":"string"},{"type":"object","additionalProperties":{"type":"string"}}]},"run":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"skip_cleanup":{"type":"boolean"},"strategy":{"enum":["api","git"]}},"required":["provider","api_key"]},{"type":"object","properties":{"provider":{"enum":["s3"]},"access_key_id":{"$ref":"#/definitions/possiblySecretString"},"secret_access_key":{"$ref":"#/definitions/possiblySecretString"},"bucket":{"type":"string"},"region":{"type":"string"},"skip_cleanup":{"type":"boolean","default":false},"acl":{"enum":["private","public_read","public_read_write","authenticated_read","bucket_owner_read","bucket_owner_full_control"]},"local_dir":{"type":"string"},"upload-dir":{"type":"string"},"detect_encoding":{"type":"boolean","default":false},"default_text_charset":{"type":"string"},"cache_control":{"type":"string"},"expires":{"type":"string"},"endpoint":{"type":"string"}},"required":["provider","access_key_id","secret_access_key","bucket"]},{"type":"object","properties":{"provider":{"type":"string","not":{"enum":["script","npm","surge","releases","heroku","s3"]}}},"required":["provider"]}]}]},"notificationObject":{"webhooks":{"type":"object","additionalProperties":false,"properties":{"disabled":{"type":"boolean"},"enabled":{"type":"boolean"},"urls":{"oneOf":[{"type":"string","format":"uri"},{"$ref":"#/definitions/secretString"},{"type":"array","uniqueItems":true,"minItems":1,"items":{"oneOf":[{"type":"string","format":"uri"},{"$ref":"#/definitions/secretString"}]}}]},"on_success":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_failure":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_start":{"$ref":"#/definitions/notificationFrequency","default":"never"},"on_cancel":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_error":{"$ref":"#/definitions/notificationFrequency","default":"always"}}},"slack":{"type":"object","additionalProperties":false,"properties":{"disabled":{"type":"boolean"},"enabled":{"type":"boolean"},"rooms":{"type":"array","uniqueItems":true,"minItems":1,"items":{"$ref":"#/definitions/slackRoom"}},"on_pull_requests":{"type":"boolean"},"template":{"$ref":"#/definitions/notRequiredNonEmptyStringOrArrayOfNonEmptyStrings"},"on_success":{"$ref":"#/definitions/notificationFrequency"},"on_failure":{"$ref":"#/definitions/notificationFrequency"},"on_start":{"$ref":"#/definitions/notificationFrequency","default":"never"},"on_cancel":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_error":{"$ref":"#/definitions/notificationFrequency","default":"always"}}},"email":{"type":"object","additionalProperties":false,"properties":{"disabled":{"type":"boolean"},"enabled":{"type":"boolean"},"recipients":{"$ref":"#/definitions/possiblySecretStringOrPossiblySecretStringTypeArrayUnique"},"on_success":{"$ref":"#/definitions/notificationFrequency","default":"change"},"on_failure":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_start":{"$ref":"#/definitions/notificationFrequency","default":"never"},"on_cancel":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_error":{"$ref":"#/definitions/notificationFrequency","default":"always"}}},"irc":{"type":"object","additionalProperties":false,"properties":{"disabled":{"type":"boolean"},"enabled":{"type":"boolean"},"channels":{"$ref":"#/definitions/possiblySecretStringOrPossiblySecretStringTypeArrayUnique"},"channel_key":{"$ref":"#/definitions/possiblySecretString"},"nick":{"$ref":"#/definitions/nonEmptyString"},"password":{"$ref":"#/definitions/possiblySecretString"},"template":{"$ref":"#/definitions/notRequiredNonEmptyStringOrArrayOfNonEmptyStrings"},"on_success":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_failure":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_start":{"$ref":"#/definitions/notificationFrequency","default":"never"},"on_cancel":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_error":{"$ref":"#/definitions/notificationFrequency","default":"always"},"skip_join":{"type":"boolean"},"use_notice":{"type":"boolean"}}},"pushover":{"type":"object","additionalProperties":false,"properties":{"disabled":{"type":"boolean"},"enabled":{"type":"boolean"},"api_key":{"$ref":"#/definitions/possiblySecretString"},"users":{"$ref":"#/definitions/possiblySecretStringOrPossiblySecretStringTypeArrayUnique"},"template":{"$ref":"#/definitions/notRequiredNonEmptyStringOrArrayOfNonEmptyStrings"},"on_success":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_failure":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_start":{"$ref":"#/definitions/notificationFrequency","default":"never"},"on_cancel":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_error":{"$ref":"#/definitions/notificationFrequency","default":"always"}}},"campfire":{"type":"object","additionalProperties":false,"properties":{"disabled":{"type":"boolean"},"enabled":{"type":"boolean"},"rooms":{"$ref":"#/definitions/possiblySecretStringOrPossiblySecretStringTypeArrayUnique"},"template":{"$ref":"#/definitions/nonEmptyStringOrArrayOfNonEmptyStrings"},"on_success":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_failure":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_start":{"$ref":"#/definitions/notificationFrequency","default":"never"},"on_cancel":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_error":{"$ref":"#/definitions/notificationFrequency","default":"always"}}},"flowdock":{"type":"object","additionalProperties":false,"properties":{"disabled":{"type":"boolean"},"enabled":{"type":"boolean"},"api_token":{"$ref":"#/definitions/nonEmptyString"},"on_success":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_failure":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_start":{"$ref":"#/definitions/notificationFrequency","default":"never"},"on_cancel":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_error":{"$ref":"#/definitions/notificationFrequency","default":"always"}}},"hipchat":{"type":"object","additionalProperties":false,"properties":{"disabled":{"type":"boolean"},"enabled":{"type":"boolean"},"notify":{"type":"boolean"},"on_pull_requests":{"type":"boolean"},"rooms":{"$ref":"#/definitions/possiblySecretStringOrPossiblySecretStringTypeArrayUnique"},"format":{"enum":["html","text"]},"template":{"$ref":"#/definitions/nonEmptyStringOrArrayOfNonEmptyStrings"},"on_success":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_failure":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_start":{"$ref":"#/definitions/notificationFrequency","default":"never"},"on_cancel":{"$ref":"#/definitions/notificationFrequency","default":"always"},"on_error":{"$ref":"#/definitions/notificationFrequency","default":"always"}}}},"import":{"anyOf":[{"type":"object","additionalProperties":false,"required":["source"],"properties":{"source":{"$ref":"#/definitions/nonEmptyString"},"mode":{"type":"string","enum":["merge","deep_merge","deep_merge_append","deep_merge_prepend"]},"if":{"$ref":"#/definitions/nonEmptyString"}}},{"$ref":"#/definitions/nonEmptyString"}]}},"allOf":[{"$ref":"#/definitions/job"},{"type":"object","properties":{"notifications":{"type":"object","properties":{"webhooks":{"oneOf":[{"$ref":"#/definitions/possiblySecretStringOrPossiblySecretStringTypeArrayUnique"},{"type":"boolean"},{"$ref":"#/definitions/notificationObject/webhooks"},{"type":"array","uniqueItems":true,"minItems":1,"items":{"$ref":"#/definitions/notificationObject/webhooks"}}]},"slack":{"oneOf":[{"$ref":"#/definitions/slackRoom"},{"type":"boolean"},{"$ref":"#/definitions/notificationObject/slack"},{"type":"array","uniqueItems":true,"minItems":1,"items":{"$ref":"#/definitions/notificationObject/slack"}}]},"email":{"oneOf":[{"$ref":"#/definitions/possiblySecretStringOrPossiblySecretStringTypeArrayUnique"},{"type":"boolean"},{"$ref":"#/definitions/notificationObject/email"},{"type":"array","uniqueItems":true,"minItems":1,"items":{"$ref":"#/definitions/notificationObject/email"}}]},"irc":{"oneOf":[{"$ref":"#/definitions/possiblySecretStringOrPossiblySecretStringTypeArrayUnique"},{"type":"boolean"},{"$ref":"#/definitions/notificationObject/irc"},{"type":"array","uniqueItems":true,"minItems":1,"items":{"$ref":"#/definitions/notificationObject/irc"}}]},"pushover":{"oneOf":[{"$ref":"#/definitions/nonEmptyStringOrArrayOfNonEmptyStrings"},{"type":"boolean"},{"$ref":"#/definitions/notificationObject/pushover"},{"type":"array","uniqueItems":true,"minItems":1,"items":{"$ref":"#/definitions/notificationObject/pushover"}}]},"campfire":{"oneOf":[{"$ref":"#/definitions/possiblySecretStringOrPossiblySecretStringTypeArrayUnique"},{"type":"boolean"},{"$ref":"#/definitions/notificationObject/campfire"},{"type":"array","uniqueItems":true,"minItems":1,"items":{"$ref":"#/definitions/notificationObject/campfire"}}]},"flowdock":{"oneOf":[{"$ref":"#/definitions/possiblySecretString"},{"type":"boolean"},{"$ref":"#/definitions/notificationObject/flowdock"},{"type":"array","uniqueItems":true,"minItems":1,"items":{"$ref":"#/definitions/notificationObject/flowdock"}}]},"hipchat":{"oneOf":[{"$ref":"#/definitions/possiblySecretStringOrPossiblySecretStringTypeArrayUnique"},{"type":"boolean"},{"$ref":"#/definitions/notificationObject/hipchat"},{"type":"array","uniqueItems":true,"minItems":1,"items":{"$ref":"#/definitions/notificationObject/hipchat"}}]}},"additionalProperties":false},"matrix":{"type":"object","properties":{"exclude":{"type":"array","items":{"$ref":"#/definitions/job"}},"include":{"type":"array","items":{"$ref":"#/definitions/job"}},"allow_failures":{"type":"array","items":{"$ref":"#/definitions/job"}},"fast_finish":{"type":"boolean"}},"additionalProperties":false},"jobs":{"type":"object","additionalProperties":false,"properties":{"include":{"type":"array","items":{"allOf":[{"$ref":"#/definitions/job"},{"type":"object","properties":{"stage":{"type":"string","default":"test"}}}]}},"exclude":{"type":"array","items":{"allOf":[{"$ref":"#/definitions/job"},{"type":"object","properties":{"stage":{"type":"string","default":"test"}}}]}},"allow_failures":{"type":"array","items":{"$ref":"#/definitions/job"}},"fast_finish":{"type":"boolean"}}},"stages":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string"},"if":{"type":"string"}}}]}},"version":{"type":"string","pattern":"^(~>|>|>=|=|<=|<) (\\d+(?:\\.\\d+)?(?:\\.\\d+)?)$"},"import":{"oneOf":[{"type":"array","uniqueItems":true,"items":{"$ref":"#/definitions/import"}},{"$ref":"#/definitions/import"}]}}}]}