Init
Initializes a new default configuration file for the Elemental CLI.
elemental init
You can also specify a MongoDB connection string as an argument to the command. This will be used as the connection string in the configuration file.
elemental init mongodb://localhost:27017
The configuration file
The elemental config file is a YAML or JSON file with one of the following names:
- .elementalrc
- .elemental.yaml
- .elemental.yml
- elemental.json
- elemental.yaml
- elemental.yml
The default configuration file is .elementalrc
. The configuration file is created in the current working directory when you run the elemental init
command. If a configuration file already exists, it will not be overwritten.
Example configuration file
{
"connection_str": "mongodb://localhost:27017",
"migrations_dir": "database/migrations",
"seeds_dir": "database/seeds",
"changelog_collection": "changelog"
}
Environment variables
The elemental config file also supports reading from environment variables. For example, you can specify the connection_str
as <DB_CONNECTION_STRING>
in the config file, and it will be replaced with the value of the DB_CONNECTION_STRING
environment variable during runtime.
{
"connection_str": "<DB_CONNECTION_STRING>"
}
If a .env
file is present in the same directory as the config file, it will pick up the environment variables from there. It also uses the environemnt variable APP_ENV
to look for .env file variants if specified. If the APP_ENV
variable is set to production
, it will look for a .env.production
file. If it is set to development
, it will look for a .env.development
file. The environment variables are loaded using the godotenv package.