Skip to main content

A simple CLI for swapping between .env files

Project description

Swap Env

swap-env is a simple CLI for swapping between different .env files.

demo

Requirements

python >= 3.9

Installation

  • with pipx (recommended):
pipx install swap-env

If you use a version of python less than 3.9, you can provide pipx with a different version to use for this package. I'd recommend pyenv for managing python versions:

# make sure you have python3.9 installed
pyenv install 3.9

# use that version with pipx
pipx install --python $(pyenv which python3.9) swap-env
  • with pip:
pip install swap-env

Usage

Save any .env files you regularly use to a directory called .swap-env/. This can be in any parent directory of where you want to use it, or in your home directory. Name them .env.<name> and you'll access them via <name> in swap-env.

If you have a local .env file (not a symlink), you will be prompted whether to save it first.

$ ls -A1 ~/.swap-env
.env.dev
.env.test

Then simply run swap-env and select the file you want to use. A symlink will be created at ./.env to that file.

$ swap-env
? Select a .env file:
❯ dev
  test

? Select a .env file: dev

$ ls -l .env
... .env@ -> ~/.swap-env/.env.dev

swap-env will search upwards from the directory you run it in and use the first .swap-env/ directory it finds. If you're not under the home directory, or a .swap-env/ directory isn't found, ~/.swap-env/ will be used (and created if it doesn't exist).

If you create a .swap-env/ directory in a git repo, remember to add it to your .gitignore.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

swap_env-1.0.1.tar.gz (4.5 kB view hashes)

Uploaded Source

Built Distribution

swap_env-1.0.1-py3-none-any.whl (5.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page