latest--rev.008
shared| Type | object |
|---|---|
| Schema URL | https://catalog.lintel.tools/schemas/schemastore/ops-yaml/_shared/latest--rev.008.json |
| Parent schema | ops-yaml |
Configuration for ops.
revision: ...
dependencies: ...
actions: ...
options: ...
Properties
A collection of commands to run via ops. If the first argument to ops is not a builtin, ops will look for an action with that name.
For more information, see the Actions documentation on GitHub.
{
"<action>": {
"command": "<command>"
}
}
Dependencies listed in the dependencies section of ops.yml are satisfied when the ops up command is run. Some dependencies will be un-satisfied when you run ops down; e.g. services will be stopped, but packages won't be uninstalled.
This feature allows developers that are new to a project to get up and running without knowing anything about the app itself. Your ops.yml should allow a developer to ops up && ops start to run an application.
For more information, see the Dependencies documentation on GitHub.
9 nested properties
- Specifies that a particular
brewpackage is needed. - Will only run if you're on a Mac.
- Specifies that a particular
brew caskpackage is needed. - Will only run if you're on a Mac.
- Runs the given command.
- Can't tell if the command needs to be run or not, so always runs it on
ops up. - Therefore, the command should be idempotent.
- It's also a good idea to prevent it from printing output unless it encounters an error, to keep the ops output clean.
Options allow the user to change some aspects of ops behaviour.
For more information, see the Options documentation on GitHub.
6 nested properties
Affect the behaviour of apt dependencies.
{
"use_sudo": false
}
1 nested properties
If false, causes ops up to install the dependency's packages without sudo.
Affect how configs are interpreted.
1 nested properties
Statically or dynamically set global environment variables, with each key serving as a variable's name.
NOTE: The values of these variables are not interpreted by the shell before being set, so variable references like
$environmentwill appear literally in the value of the variable.
{
"PATH": "./bin:${PATH}"
}
Affect the behaviour of ops exec.
1 nested properties
If true, items in secrets.ejson will be loaded before execution, allowing said items to be referenced in the configuration.
Affect the behaviour of gem dependencies.
{
"user_install": true,
"use_sudo": false
}
2 nested properties
If true, causes ops up to run gem install --user-install ejson.
If false, causes ops up to install the dependency's packages without sudo.
Affect how secrets are interpreted.
1 nested properties
Definitions
If true, items in secrets.ejson will be loaded before execution, allowing said items to be referenced in the configuration.
The name of a brew package. If you need to specify a version, include it after the name, delimited by an @ symbol.
"ruby""openssl@"
The name of a pip package. If you need to specify a version, include it after the name, delimited by ==.
"semver""ruamel.yaml==0.17.26"
The name of a package. If you need to specify a version, include it after the name, delimited by a space.
"ruby""openssl 0.8.0"
If false, causes ops up to install the dependency's packages without sudo.