Explita InfraExplita Infra
DeployCLI Reference

eda env

Manage AES-256 encrypted environment variables, bulk file imports, diffs, and synchronization

The eda env command group manages application secrets and configuration settings. Variables configured with eda env are encrypted at rest using AES-256 before being written to database storage, and are only decrypted in memory when spawning application containers.

eda env <subcommand> [options]
explita deploy env <subcommand> [options]

1. Subcommands Overview

CommandDescription
eda env lsList configured environment variables (values masked by default; --show-values for plaintext).
eda env set KEY=VALSet one or more environment variables (--apply to immediately reload running container).
eda env set -f <file>Bulk import variables from a local file (e.g. .env) (--apply supported).
eda env rm <KEY>Remove one or more environment variables from the server (--apply supported).
eda env applyReload running container with zero downtime to apply pending environment variables.
eda env pullExport remote server variables to a local environment file (default: .env.production).
eda env diff [file]Compare local .env file against server environment variables (--show-values supported).

2. List Variables (eda env ls)

View configured environment keys. By default, values are masked for privacy during screenshares or terminal recordings:

eda env ls [-a <appId>]

Display Plaintext Values (--show-values):

eda env ls --show-values

Sample Output:

Environment variables for payment-api (app_9f3a12):
  • NODE_ENV         = production
  • PORT             = 8080
  • STRIPE_SECRET    = sk_live_••••••••••••••••••••••••
  • DATABASE_URL     = postgres://user:••••••••@127.0.0.1:5432/app_db

3. Set Variables (eda env set)

Set individual keys or bulk-assign variables:

# Set single variable
eda env set STRIPE_SECRET="sk_live_1234567890abcdef"

# Set multiple variables at once
eda env set API_BASE="https://api.myapp.com" LOG_LEVEL="debug" MAX_WORKERS="4"

Import from a File (-f):

# Bulk import from .env.production
eda env set -f .env.production

# Bulk import for a specific app ID
eda env set -f .env.staging -a app_staging_01

[!NOTE] Updating environment variables stores the new encrypted values immediately. Pass --apply to immediately reload the running container with zero downtime (e.g. eda env set KEY=VAL --apply), or run eda env apply when ready. Otherwise, changes will be applied upon the next deployment or eda restart.


4. Remove Variables (eda env rm)

Remove configuration keys from the server:

eda env rm STRIPE_SECRET LOG_LEVEL

5. Export Remote Variables (eda env pull)

Export server environment variables into a local .env file for local testing or backup:

# Export to .env.server in working directory
eda env pull

# Export to a custom destination file
eda env pull -f .env.production.backup

6. Compare Local and Remote Envs (eda env diff)

Inspect discrepancies between your local .env file and the remote server's active environment variables before deploying:

eda env diff .env

Sample Output:

Comparing local (.env) <-> remote (app_9f3a12):
  + REDIS_URL            (Present locally, missing on server)
  - OLD_WEBHOOK_SECRET   (Missing locally, present on server)
  ~ DATABASE_URL         (Values differ)
  = NODE_ENV             (Matches)

Pass --show-values (or -s) to reveal plaintext value differences side by side, and -A, --all to include in-sync matching variables.

On this page