https://github.com/sdelafond/docker-ansible-git-crypt
Ansible docker image with support for ssh and gpg keys
https://github.com/sdelafond/docker-ansible-git-crypt
ansible docker git-crypt gitlab-ci
Last synced: 9 months ago
JSON representation
Ansible docker image with support for ssh and gpg keys
- Host: GitHub
- URL: https://github.com/sdelafond/docker-ansible-git-crypt
- Owner: sdelafond
- Created: 2019-06-19T04:59:36.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-03-07T16:35:55.000Z (almost 2 years ago)
- Last Synced: 2025-04-03T10:21:23.184Z (10 months ago)
- Topics: ansible, docker, git-crypt, gitlab-ci
- Language: Dockerfile
- Homepage:
- Size: 1000 Bytes
- Stars: 1
- Watchers: 1
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Ansible docker image with support for ssh and gpg keys
This facilitates the use of playbooks backed by a git-crypt-based
repository.
Example of how to use this docker image in GitLab CI with a git-crypt'ed
repository:
```yaml
---
stages:
- ansible
before_script:
# add ssh config
- echo -e "${ANSIBLE_SSH_CONFIG}" > ~/.ssh/config
# run ssh-agent and add ssh key to it
- eval $(ssh-agent -s)
- echo -e "${SSH_PRIVATE_KEY}" | tr -d '\r' | ssh-add -
# add gpg key to keyring
- echo -e "${GPG_PRIVATE_KEY}" | gpg2 --import --batch
- echo -e "${GPG_OWNERTRUST}" | gpg2 --import-ownertrust
# run gpg-agent in allow-preset-passphrase mode
- gpgconf --kill gpg-agent || true
- gpg-agent --daemon --allow-preset-passphrase --max-cache-ttl 3600
# set gpg passphrase
- /usr/lib/gnupg2/gpg-preset-passphrase --preset --passphrase "${GPG_PASSPHRASE}" "${GPG_PUBLIC_KEYGRIP}"
# unlock the current repository
- git crypt unlock
playbook:
stage: ansible
image: sdelafond/docker-ansible-git-crypt:latest
script:
- ansible-playbook sites/foo.yml
```