54 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
---
 | 
						|
- name: Acquire GPG private keys from other system
 | 
						|
  when: not files_mode
 | 
						|
  block:
 | 
						|
    - name: Acquire GPG private keys' contents from other system
 | 
						|
      delegate_to: "{{ gpg_private_keys_origin_host }}"
 | 
						|
      ansible.builtin.command:
 | 
						|
        argv:
 | 
						|
          - gpg
 | 
						|
          - -a
 | 
						|
          - --export-secret-key
 | 
						|
          - "{{ item }}"
 | 
						|
      loop: "{{ gpg_origin_private_keyids }}"
 | 
						|
      register: gpg_secrets
 | 
						|
    - name: Create GPG private keys using acquired GPG private keys' contents
 | 
						|
      ansible.builtin.copy:
 | 
						|
        content: "{{ item }}"
 | 
						|
        dest: "{{ ansible_facts['user_dir'] }}/.gnupg/{{ gpg_origin_private_keyids[idx] }}.priv.asc"
 | 
						|
        force: yes
 | 
						|
        backup: yes
 | 
						|
        mode: "0600"
 | 
						|
        state: present
 | 
						|
      loop: "{{ gpg_secrets.results }}"
 | 
						|
      loop_control:
 | 
						|
        index_var: idx
 | 
						|
      register: created_gpg_private_keys
 | 
						|
- name: Acquire GPG private keys
 | 
						|
  when: files_mode
 | 
						|
  ansible.builtin.copy:
 | 
						|
    src: gnupg/{{ item }}.asc
 | 
						|
    dest: "{{ ansible_facts['user_dir'] }}/.gnupg/{{ item }}.priv.asc"
 | 
						|
    force: yes
 | 
						|
    backup: yes
 | 
						|
    mode: "0600"
 | 
						|
    state: present
 | 
						|
  loop: "{{ gpg_origin_private_keyids }}"
 | 
						|
  loop_control:
 | 
						|
    index_var: idx
 | 
						|
  register: created_gpg_private_keys
 | 
						|
- name: Import GPG private keys
 | 
						|
  when: (gpg_origin_private_key_passwords | length) == (gpg_origin_private_keyids | length)
 | 
						|
  ansible.builtin.command:
 | 
						|
    argv:
 | 
						|
      - gpg
 | 
						|
      - --batch
 | 
						|
      - --import
 | 
						|
      - --yes
 | 
						|
      - --passphrase-fd
 | 
						|
      - 0
 | 
						|
      - "{{ item.dest }}"
 | 
						|
    stdin: "{{ gpg_origin_private_key_passwords[idx] }}"
 | 
						|
  loop: "{{ created_gpg_private_keys.results }}"
 | 
						|
  loop_control:
 | 
						|
    index_var: idx |