Skip to content

Simplify your CICD pipeline and enhance development ease with these tools designed for managing AWS Systems Manager (SSM) Environment Variables. Effortlessly sync your local environment configurations with AWS SSM, making deployment and development a breeze.

License

Notifications You must be signed in to change notification settings

OfirYaron/ssm-env-tools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SSM-Env-Tools

semantic-release: angular npm latest version

SSM-Env-Tools is a Node.js command-line utility designed to streamline the management of AWS Systems Manager (SSM) parameters, specifically catering to the conventions /{env}/{service}/{env_name}. This tool simplifies the import and export of environment variables between your local development environment and AWS SSM.

Installation

Ensure you have Node.js installed on your machine. Then, install the utility using npm:

npm install -g ssm-env-tools

or you can use npx

Usage

Pull: Retrieve .env from SSM

Use the pull command to retrieve environment variables from AWS SSM and save them to a local .env file.

npx ssm-env-tools pull --env=<environment> \
  --service=<service> \
  --path=<local-path-with-filename> \
  [--dry-run] [--skip-prompt] [--region=<region>]
  • <environment>: Environment name.
  • <service>: Service name.
  • <local-path-with-filename>: Local path, including the file name, where the .env file will be saved.
  • --dry-run: Display the environment variables that will be saved to the .env file without actually saving them.
  • --skip-prompt: Skip the prompt to confirm the saving of the environment variables to the .env file.
  • --region: AWS region where the SSM parameters are stored. If not provided, the default profile region will be used.

Push: Update SSM with .env

Use the push command to update AWS SSM with environment variables from a local .env file.

npx ssm-env-tools push --path=<local-path-with-filename> \
  --env=<environment> \
  --service=<service> \
  [--dry-run] [--skip-prompt] [--region=<region>]
  • <local-path-with-filename>: Local path, including the file name, to the .env file.
  • <environment>: Environment name.
  • <service>: Service name.
  • --dry-run: Display the environment variables that will be saved to AWS SSM without actually saving them.
  • --skip-prompt: Skip the prompt to confirm the saving of the environment variables to AWS SSM.
  • --region: AWS region where the SSM parameters are stored. If not provided, the default profile region will be used.

Examples

Pull .env from SSM

npx ssm-env-tools pull --env='stage' --service='website' --path='.env'

Push .env to SSM

npx ssm-env-tools push --path='.env' --env='stage' --service='website'

Options

  • --version: Display the version number.
  • -h, --help: Display help information.

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

About

Simplify your CICD pipeline and enhance development ease with these tools designed for managing AWS Systems Manager (SSM) Environment Variables. Effortlessly sync your local environment configurations with AWS SSM, making deployment and development a breeze.

Resources

License

Stars

Watchers

Forks

Packages

No packages published