Project

tacoma

0.02
No commit activity in last 3 years
No release in over 3 years
Easy command line tool for AWS credentials management
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

Runtime

~> 0
 Project Readme

Tacoma

Simple command-line tool for managing AWS credentials across different projects and tools.

Installation

$ gem install tacoma

Usage

Tacoma needs a special file .tacoma.yml in your home directory. It can create a sample for you with

 tacoma install

The format of the .tacoma.yml file is pretty straighforward

project:
  aws_identity_file: "/path/to/pem/file/my_project.pem"
  aws_secret_access_key: "YOURSECRETACCESSKEY"
  aws_access_key_id: "YOURACCESSKEYID"
  region: "REGION"
  repo: "$HOME/projects/my_project"
another_project:
  aws_identity_file: "/path/to/another_pem.pem"
  aws_secret_access_key: "ANOTHERECRETACCESSKEY"
  aws_access_key_id: "ANOTHERACCESSKEYID"
  region: "REGION"
  repo: "$HOME/projects/another_project"
  s3cfg:
    gpg_passphrase: my_gpg_passphrase

Once setup with a file like this, you can run

 tacoma list

And it will list all the configured entries. Running

 tacoma switch project

Will add the specified identity file into the SSH agent, and will generate configuration files for the supported tools, which at this time are

Running tacoma switch with the --with-exports option will also echo shell export sentences for the most common incarnations of the AWS env vars.

 tacoma version

Will display the current tacoma version and list all available configuration templates (providers).

 tacoma current

Will display the currently active tacoma environment.

If you don't indicate a specific region, tacoma will use the "eu-west-1" region by default.

Bash Completion

There's an user contributed script for bash completion feature. To use it simply get from the /contrib/ path and source it in your bash session (after rbenv gets sourced if it is there)

TODO

  • Check for errors in the tacoma.yml file
  • Add other AWS tool providers (Knife, AWS cli, ...)
  • Honor the different optional environment vars for the different config files (i.e FOG_RC)

THANKS

This tool is shamelessly inspired in Raul Murciano's rack-generator