Save your project configuration (environment variables, configuration files, etc) in a remote store and easily share it with your team instead of having to store it inside your project repository.
This allows you to securely share the source code of your project without including secrets, API keys, service account files, etc.
Currently only the aws
remote store is supported, but the package can be extended for adding more stores in the future.
aws
: Stores project configuration in your AWS account. Environment variables are stored in the SSM Parameters Store, and files are stored in S3.
go get -u github.com/andybar2/team
Create the team.json
file in your project folder, and set your configuration parameters there.
{
"project": "example",
"store": "aws",
"aws_profile": "myaccount",
"aws_region": "us-east-2"
}
The value of aws_profile
is a reference to your ~/.aws/credentials
file. The keys for the given profile will be used by team
to connect to your AWS account:
[myaccount]
aws_access_key_id = xxxxxxxx
aws_secret_access_key = xxxxxxxxxxxxxxxxxxxxxxxx
team env set -s "development" -n "STRIPE_API_KEY" -v "1234567890"
team env get -s "development" -n "STRIPE_API_KEY"
team env delete -s "development" -n "STRIPE_API_KEY"
team env print -s "development"
export $(team env print -s "development")
mkdir -p .team/development
team env print -s "development" > .team/development/env
Tip: Add .team
to your .gitignore
file :)
team files upload -s "development" -p ".team/development/google-service-account.json"
team files download -s "development" -p ".team/development/google-service-account.json"
team files delete -s "development" -p ".team/development/google-service-account.json"
team files list -s "development"