Each deployment tool is traditionally controlled with a set of cli arguments. Instead of defining arguments within your pipeline configuration, they
can instead either be defined with environment variables or in a bitops.config.yml
file. While the core schema for a bitops.config.yml
file is common betwen tools, the specific properties and environment variable equivilants vary from tool to tool.
All bitops.config.yml
files share the following structure
$tool
cli: {}
options: {}
$tool
- identifies the deployment toolcli
- object that contains cli argumentsoptions
- object that offers additional control over how a tool executes
There are some global configuration options that are shared among all tools and cloud providers in a bitops run. These are set via environment variables
- Environment Variable:
ENVIRONMENT
- default:
""
- required: yes
Each bitops run is done against a single environment. This property tells bitops which environment to run. For more information on environments, see Operations Repo Structure.
- Environment Variable:
KUBECONFIG_BASE64
- default:
""
- required: no
Base64 encoded kubeconfig
file. Allows deployment tools to interact with a kubernetes cluster
- Environment Variable:
DEBUG
- default:
""
- required: no
If true, will enable verbose logging
- Environment Variable:
BITOPS_DEFAULT_REPLACE
- default:
false
If true, file mergers will replace instead of create a copy during a merge
- Environment Variable:
SKIP_IF_NO_ENVIRONMENT_CHANGES
- default:
""
- required: no
If nonempty, will evaluate the git diff
to see if there are any changes in the specified ENVIRONMENT
and will exit 0
if not.