diff --git a/roles/gpg/meta/main.yml b/roles/gpg/meta/main.yml new file mode 100644 index 0000000..9e4cf43 --- /dev/null +++ b/roles/gpg/meta/main.yml @@ -0,0 +1,6 @@ +--- +galaxy_info: + author: cjr + description: Import GPG keys from private git repo + license: BSD-3-Clause + min_ansible_version: "2.1" diff --git a/roles/gpg/tasks/main.yml b/roles/gpg/tasks/main.yml new file mode 100644 index 0000000..081ebab --- /dev/null +++ b/roles/gpg/tasks/main.yml @@ -0,0 +1,25 @@ +--- +- name: Clone GPG keys repo + ansible.builtin.git: + repo: cjr@git:/home/cjr/git/keys + dest: "{{ ansible_facts['user_dir'] }}/.gpg-keys" + update: true + version: main + +- name: Import GPG public key + ansible.builtin.command: + cmd: gpg --import {{ ansible_facts['user_dir'] }}/.gpg-keys/public-key.asc + register: gpg_import_public + changed_when: "'imported' in gpg_import_public.stderr" + +- name: Import GPG secret key + ansible.builtin.command: + cmd: gpg --import {{ ansible_facts['user_dir'] }}/.gpg-keys/secret-key.asc + register: gpg_import_secret + changed_when: "'imported' in gpg_import_secret.stderr" + no_log: true + +- name: Remove cloned GPG keys + ansible.builtin.file: + path: "{{ ansible_facts['user_dir'] }}/.gpg-keys" + state: absent diff --git a/site.yml b/site.yml index 9956c11..694b43a 100644 --- a/site.yml +++ b/site.yml @@ -23,6 +23,8 @@ connection: local roles: + - role: gpg + tags: gpg - role: ssh tags: ssh - role: pass