v0.2.1
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEE1MTdYA1m9lqO/FEeGPNoXAAiv/MFAltKLIwACgkQGPNoXAAi
v/PIChAAxP0n5xiNuem4+4pLDQ+SG1pmQFYbNppxSbjpNqBAWCAPdxZayP83V1+I
wC+2g2ieVNLdGR56NxCN/XRwCeTyUSDJOkJvpuftEt7LMD8l5PySn5GDf25A9j9S
rbCWDldeV63QrC7a3fS8b+vZknbtbwRuq2YK7CofcXmBmJxXrEk54KuiRDYxBnAt
jjM2rgBdnbycvcmIG7sduPcZU6Xfy2KGb528JMBg1bcfUQupRe4ZQntARp8AANDe
cVlYTg5hY7Q1+U/rWSSvDJvHbIENzwko3E2kFi0o14Z8Ib4L7hzrvYc6nVQOoOVw
vA8BzD1Z0K+Ag81dpfYntqrZSzawxN6hCgq5Lpfr7cRAYCLdPxL3+DZPGLtKkfUY
N7m0ryC/VZYbfbyt2RRvJ+GGIGanwmH+kBL1J8iNnlDBB8B1tCYrSaaJHPW98pB0
QEH5pAx7cXH1R4LiP6ZMR7Dxm52TSf7sbzN2LhjdQA9zp+ktE41e/Qz0EqXgBlJ3
mgrYkTyhR9avZplWrZVFkmzYUNptPMX9MA7m8vFTOwZIkrWT1x8uoNRnqOZdKyX2
+BodNj/iVqPmER+Xjtl4aqVj6JCOS8xgJMQ6rbKMBa7hPtB0xWMS2Nz6+U1NmFEw
xDlizIuJIAFfKCAG5E1sCmFwZgWflY5uXpyj6eve/RVaw6eCL00=
=CYC8
-----END PGP SIGNATURE-----
Bump version to v0.2.1

Signed-off-by: Jess Frazelle <acidburn@microsoft.com>
2 files changed
tree: 8357b5762679d453fb108b74872c8b7ecf8cf93e
  1. .gitignore
  2. .travis.yml
  3. Dockerfile
  4. Gopkg.lock
  5. Gopkg.toml
  6. LICENSE
  7. Makefile
  8. README.md
  9. VERSION.txt
  10. autocomplete/
  11. gpg/
  12. main.go
  13. main_unix.go
  14. main_windows.go
  15. store.go
  16. vendor/
  17. version/
README.md

pony

Travis CI

Local file-based password, API key, secret, recovery code store backed by GPG.

Installation

Binaries

Via Go

$ go get github.com/jessfraz/pony

Usage

$ pony -h
NAME:
   pony - Local File-Based Password, API Key, Secret, Recovery Code Store Backed By GPG

USAGE:
   pony [global options] command [command options] [arguments...]

VERSION:
   version v0.2.1, build 33bfbcc

AUTHOR(S):
   @jessfraz <no-reply@butts.com>

COMMANDS:
   add, save    Add a new secret
   delete, rm   Delete a secret
   get          Get the value of a secret
   list, ls     List all secrets
   update       Update a secret
   help, h      Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --debug, -d                  run in debug mode
   --file, -f "~/.pony"         file to use for saving encrypted secrets
   --gpgpath "~/.gnupg/"        filepath used for gpg keys
   --keyid                      optionally set specific gpg keyid/fingerprint to use for encryption & decryption [$PONY_KEYID]
   --help, -h                   show help
   --generate-bash-completion
   --version, -v                print the version

Best Practices

HISTIGNORE

You should obviously add pony to your HISTIGNORE for example:

export HISTIGNORE="ls:cd:cd -:pwd:exit:date:* --help:pony:pony *";

Namespacing Keys

You should namespace the keys for your secrets like the following:

$ pony add com.twitter.frazelledazzell.token KJDHJKFHDSBJDF
# GPG Passphrase for key "Jess Frazelle <butts@systemd.lol>":

$ pony add com.github.jessfraz.token LKJHSDLFKJDHF
# GPG Passphrase for key "Jess Frazelle <butts@systemd.lol>":

# if a key ends with `.recovery`
# we assume it is a list of comma seperated
# strings that are recovery codes
$ pony add com.github.devnull@butts.com.recovery we0wk4,osdknew,4fd9kw,03jfn23,sduj39s
# GPG Passphrase for key "Jess Frazelle <butts@systemd.lol>":

$ pony ls
# GPG Passphrase for key "Jess Frazelle <butts@systemd.lol>":

KEY                                     VALUE
com.aws.amazon.prod.key                 KSUIIUEJDMSDBSDJFOFR
com.aws.amazon.prod.secret              skljdUYGjsndhfjjiosjdfgr/HKKSU
com.github.botaccount.recovery          we0wk4,osdknew,4fd9kw,03jfn23,sduj39s
com.github.jessfraz.token               LKJHSDLFKJDHF
com.twitter.frazelledazzell.token       KJDHJKFHDSBJDF

# you can also filter by a regular expression
$ pony ls --filter com.github*
# GPG Passphrase for key "Jess Frazelle <butts@systemd.lol>":

KEY                                     VALUE
com.github.botaccount.recovery          we0wk4,osdknew,4fd9kw,03jfn23,sduj39s
com.github.jessfraz.token               LKJHSDLFKJDHF