-
Notifications
You must be signed in to change notification settings - Fork 4
robertkrimen/Config-Identity
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
NAME Config::Identity - Load (and optionally decrypt via GnuPG) user/pass identity information VERSION version 0.0017 SYNOPSIS PAUSE: use Config::Identity::PAUSE; # 1. Find either $HOME/.pause-identity or $HOME/.pause # 2. Decrypt the found file (if necessary), read, and parse it # 3. Throw an exception unless %identity has 'user' and 'password' defined my %identity = Config::Identity::PAUSE->load; print "user: $identity{user} password: $identity{password}\n"; GitHub API: use Config::Identity::GitHub; # 1. Find either $HOME/.github-identity or $HOME/.github # 2. Decrypt the found file (if necessary) read, and parse it # 3. Throw an exception unless %identity has 'login' and 'token' defined my %identity = Config::Identity::PAUSE->load; print "login: $identity{login} token: $identity{token}\n"; DESCRIPTION Config::Identity is a tool for loadiing (and optionally decrypting via GnuPG) user/pass identity information For GitHub API access, an identity is a "login"/"token" pair For PAUSE access, an identity is a "user"/"password" pair USAGE %identity = Config::Identity->load_best( <stub> ) First attempt to load an identity from $HOME/.<stub>-identity If that file does not exist, then attempt to load an identity from $HOME/.<stub> The file may be optionally GnuPG encrypted %identity will be populated like so: <key> <value> For example: username alice password hunter2 Using a custom "gpg" or passing custom arguments You can specify a custom "gpg" executable by setting the CI_GPG environment variable export CI_GPG="$HOME/bin/gpg" You can pass custom arguments by setting the CI_GPG_ARGUMENTS environment variable export CI_GPG_ARGUMENTS="--no-secmem-warning" Encrypting your identity information with GnuPG If you've never used GnuPG before, first initialize it: # Follow the prompts to create a new key for yourself gpg --gen-key To encrypt your GitHub identity with GnuPG using the above key: # Follow the prompts, using the above key as the "recipient" # Use ^D once you've finished typing out your authentication information gpg -ea > $HOME/.github Caching your GnuPG secret key via gpg-agent Put the following in your .*rc if which gpg-agent 1>/dev/null then if test -f $HOME/.gpg-agent-info && \ kill -0 `cut -d: -f 2 $HOME/.gpg-agent-info` 2>/dev/null then . "${HOME}/.gpg-agent-info" export GPG_AGENT_INFO else eval `gpg-agent --daemon --write-env-file "${HOME}/.gpg-agent-info"` fi else fi PAUSE identity format user <user> password <password> "username" can also be used as alias for "user" GitHub identity format login <login> token <token> AUTHOR Robert Krimen <[email protected]> COPYRIGHT AND LICENSE This software is copyright (c) 2014 by Robert Krimen. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
About
Load (and optionally decrypt via GnuPG) user/pass identity information
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published