Emily CLI Documentation

Release-v3.0.6

Emily combines the powers of Python and Docker to build stable and consistent machine learning and datascience python environments. Emily is useful for large cross-team project development as well as for simply running a single jupyter notebook or python script.

Download emily@latest
See earlier versions
$ emily environment [options]

Manage environments for your project.

$ emily environment

? Emily: Choose a project(Use arrow keys, confirm with ENTER)> M9VHKD - my-project
AB82JD - movie-recommender
· M9VHKD - my-project
? Emily: Please select an action(Use arrow keys, confirm with ENTER)> + Add a new environment
* Update an existing environment
- Remove an existing environment
·

Emily Environments

In Emily, projects are developed and deployed by means of three core concepts: environments, configuration, and deployments. In Emily, environments define the environment variables exposed to a project when it's running, whether it's running locally during development, or an a server in production.

When building a project, a default environment called dev is created. The contents of the environment can be seen at <project root>/environments/dev.

Inside <project root>/environments/dev there is a single file called .emily.env. This file specifies basic environment variables needed to run the project.

When running or deploying projects, Emily will gather all *.env files, merge their contents and write them to <project root>/configurations/<configuration>/.env. As such, to add new environment variables to an environment, simply add a new file inside the environment directory. This is useful if your environments contain some files that need to be ignored by VCS:

$ tree -a <project-root>/environments configuration-test/environments ├── dev │ ├── .db-secrets.env ## Ignored by Git │ └── .emily.env └── prod ├── .auth-secrets.env ## Ignored by Git ├── .db-secrets.env ## Ignored by Git └── .emily.env

When merging .env files, the .emily.env file is read first so any other .env file specifiying the same environment variables will override it.

    Options

  • -h,--help

    Display help for command

  • -p,--project<project>

    The project to manage environments for.

  • -s,--silent

    Execute Emily silently. (default: false)

  • -u,--update(--no-update)

    Prompt for update if newer version found. (default: true)

  • -vb,--verbose

    Print detailed information while running commands.