Getting lunr-server to use the /config volume convention, and updating all other daemon containers to reference the /config directory. Mounting config volumes as /usr/local/18f/team-api/config instead of just /usr/local/18f/team-api proved necessary to avoid mounting a writable volume (/usr/local/18f/team-api/team-api.18f.gov) on top of a read-only volume (/usr/local/18f/team-api).
Creating an SSH config volume that copies data to $HOME/.ssh and runs ssh-agent and ssh-add. This is necessary for the team-api, hub, and pages daemons to access private repositories.
I created a key for the 18f-bot account, and added the account as a collaborator to 18F/team-api.18f.gov and 18F/hub. Not sure if it's worth making the bot a read-only 18F org member, or if we need to tell everyone posting to pages-staging and pages-private that they need to add the 18f-bot as a read-only collaborator.
This hasn't been an issue before because the existing key associated with the Hub/Team API/Pages services is associated with my GitHub account.
Ended up using an ENTRYPOINT with team-api. I'll go back and update all the other daemons to use this format in a future PR.
This PR breaks down to:
./go
script tweaks/config
volume convention, and updating all other daemon containers to reference the/config
directory. Mounting config volumes as/usr/local/18f/team-api/config
instead of just/usr/local/18f/team-api
proved necessary to avoid mounting a writable volume (/usr/local/18f/team-api/team-api.18f.gov
) on top of a read-only volume (/usr/local/18f/team-api
).$HOME/.ssh
and runsssh-agent
andssh-add
. This is necessary for theteam-api
,hub
, andpages
daemons to access private repositories.ENTRYPOINT
withteam-api
. I'll go back and update all the other daemons to use this format in a future PR.cc: @jcscottiii @ccostino @afeld