Secret storage
The Foreman project uses gopass to store shared secrets. This is achieved by storing GPG encrypted files in git repositories.
Client access
First install gopass. On Fedora:
dnf install gopass
Ensure that gopass is initialized after installing the first time (and that your GPG private key is present on the system):
gopass init <YOUR-PUB-KEY-HASH>
Stores
Releases
This store is meant for release engineers and can be cloned:
gopass clone secrets.theforeman.org:/srv/secretsgit/theforeman-release.git theforeman/releases
Shared
Contains account access for Infra admins.
gopass clone secrets.theforeman.org:/srv/secretsgit/theforeman-passwords.git theforeman/shared
Server setup
This is managed by the Puppet class secretsgit and served on the secrets.theforeman.org hostname. Technically this is a DNS CNAME to the real server.
Granting access
- Ensure SSH access is available
 - Add the user to 
secretsgit::users - Add the user's key as a recipient: 
gopass sync && gopass recipients add --store theforeman/releases 1234567890ABCDEF && gopass sync