aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/roles/apt_repo/tasks/main.yml
diff options
context:
space:
mode:
Diffstat (limited to 'roles/apt_repo/tasks/main.yml')
-rw-r--r--roles/apt_repo/tasks/main.yml25
1 files changed, 10 insertions, 15 deletions
diff --git a/roles/apt_repo/tasks/main.yml b/roles/apt_repo/tasks/main.yml
index 4c1d92f..bf9e3ea 100644
--- a/roles/apt_repo/tasks/main.yml
+++ b/roles/apt_repo/tasks/main.yml
@@ -1,5 +1,11 @@
- name: Set up repository
become: true
+ vars:
+ # For some reason, if the key is in a weird format that requires
+ # running `gpg --dearmor`, you must save it with the .gpg extension
+ # instead of .asc. You can then completely skip the gpg step. Source:
+ # https://stackoverflow.com/q/71585303/514684
+ apt_repo_key_path: '{{ apt_repo_keys_dir }}/{{ apt_repo_name }}{{ apt_repo_key_dearmor | ternary(".gpg", ".asc") }}'
block:
- name: Create keys directory
ansible.builtin.file:
@@ -7,30 +13,19 @@
mode: '755'
state: directory
- - name: Set key path
- ansible.builtin.set_fact:
- # For some reason, if the key is in a weird format that requires
- # running `gpg --dearmor`, you must save it with the .gpg extension
- # instead of .asc. You can then completely skip the gpg step. Source:
- # https://stackoverflow.com/q/71585303/514684
- key_path: '{{ apt_repo_keys_dir }}/{{ apt_repo_name }}{{ apt_repo_key_dearmor | ternary(".gpg", ".asc") }}'
-
- name: 'Add key: {{ apt_repo_name }}'
ansible.builtin.get_url:
url: '{{ apt_repo_key_url }}'
- dest: '{{ key_path }}'
+ dest: '{{ apt_repo_key_path }}'
mode: '644'
- name: Get host distro
ansible.builtin.setup:
gather_subset: [distribution_release]
- - name: Set repository defaults
- ansible.builtin.set_fact:
- apt_repo_distro: '{{ apt_repo_distro | default(ansible_distribution_release) }}'
- apt_repo_component: '{{ apt_repo_component | default("main") }}'
-
- name: 'Add repository: {{ apt_repo_name }}'
ansible.builtin.apt_repository:
- repo: 'deb [signed-by={{ key_path }}] {{ apt_repo_url }} {{ apt_repo_distro }} {{ apt_repo_component }}'
+ repo: 'deb [signed-by={{ apt_repo_key_path }}] {{ apt_repo_url }} {{ distro }} {{ apt_repo_component }}'
filename: '{{ apt_repo_name }}'
+ vars:
+ distro: '{{ apt_repo_distro | default(ansible_distribution_release) }}'