envincible v1.0.3
Envincible
Command line interface to manage project environment variables and securely provision access to team members.
Table of Contents
Documentation
Installation
npm install -g envincible
Cloud Connect
AWS
Sign Up for AWS
More coming soon
If you have a cloud provider that you would like us to implement please let us know here!
Quick Start
nv set API_SECRET "super secret" -p test -s dev
nv run "node -e 'console.log(process.env.API_SECRET)'" -p test -s dev
Manage Environments
nv status
Display the status of the current cloud accounts associated with envincible.
nv ls
List all project names.
nv ls -p <project>
List all project environment stages and their variable keys.
nv ls -p <project> -s <stage>
List all variables in specific project and environment stage.
Provision Access
nv users
List all of the users found in the cloud account.
nv create -p <project>
Create the READ and FULL access policies for a project.
nv policies -p <project>
List all of the policies associated with the current project.
nv who -p <project>
List all users, groups, and roles that have access to the current project.
nv allow -p <project> -t [users|roles|groups]
Select cloud entities (users, roles, or groups) that should have access to the project secrets.
Options
- -t users default
- -t groups
- -t roles
Deploy
Create React App
Inject envincible variables into a create react app environment.
nv run "yarn build" -p test -s dev
Only variables prefixes with REACT_APP will be allowed through the CRA build process. This enables client and server variables to live in the same project but blocks sensitive secrets from making their way to the client.
Serverless
Inject envincible variables into a serverless lambda environment.
provider:
name: aws
stage: ${opt:stage,'dev'}
environment:
API_SECRET: ${ssm:/${file(./package.json):name}/${self:provider.stage}/API_SECRET}
serverless deploy --stage dev
Elastic Beanstalk
Coming soon...
Kubernetes
Coming soon...