Environment
Environment variables can bet set in various ways.
Global
To set environment variables globally for both local and remote settings,
assign keys to the env object in Fabula's configuration file:
export default {
env: {
FOOBAR: 'foobar'
}
}
Note, however, that the keys local and ssh are reserved.
Local
Use env.local in Fabula's configuration file (fabula.js):
export default {
env: {
local: {
FOOBAR: 'foobar'
}
}
}
Remote
Use env.ssh in Fabula's configuration file (fabula.js):
export default {
env: {
ssh: {
FOOBAR: 'foobar'
}
}
}
This sets environment variables for all remote servers. These variables are used in every remote command, from any Fabula task file.
Per server
You may also place env underneath each SSH server:
export default {
ssh: {
server1: {
hostname: '1.2.3.4',
privateKey: '/path/to/key',
env: {
FOOBAR: 'foobar'
}
}
}
}
Environment variables set for a remote server are used for every command that is ran on that server from any Fabula task file.
Per component
<fabula>
export default {
env: {
FOOBAR: 'foobar'
}
}
</fabula>
Environment variables set in a Fabula component are only used for the commands contained in it, both local and remote.