From bbace95c25f2d22163b04d8d3ebd535c7eddfc60 Mon Sep 17 00:00:00 2001 From: Egor Tensin Date: Tue, 15 Aug 2023 21:44:16 +0200 Subject: factor out apt repository setup to apt_repo --- roles/apt_repo/README.md | 2 ++ roles/apt_repo/defaults/main.yml | 2 ++ roles/apt_repo/tasks/main.yml | 23 +++++++++++++++++++++++ 3 files changed, 27 insertions(+) create mode 100644 roles/apt_repo/README.md create mode 100644 roles/apt_repo/defaults/main.yml create mode 100644 roles/apt_repo/tasks/main.yml (limited to 'roles/apt_repo') diff --git a/roles/apt_repo/README.md b/roles/apt_repo/README.md new file mode 100644 index 0000000..1e9451e --- /dev/null +++ b/roles/apt_repo/README.md @@ -0,0 +1,2 @@ +This role is used to enable a 3rd-party repository on Ubuntu/Debian. It +downloads a key file from the web and adds an entry in /etc/apt/sources.list.d. diff --git a/roles/apt_repo/defaults/main.yml b/roles/apt_repo/defaults/main.yml new file mode 100644 index 0000000..0877adf --- /dev/null +++ b/roles/apt_repo/defaults/main.yml @@ -0,0 +1,2 @@ +apt_repo_keys_dir: /etc/apt/keyrings +apt_repo_component: main diff --git a/roles/apt_repo/tasks/main.yml b/roles/apt_repo/tasks/main.yml new file mode 100644 index 0000000..25069bb --- /dev/null +++ b/roles/apt_repo/tasks/main.yml @@ -0,0 +1,23 @@ +- name: Set up repository + become: true + block: + - name: Create keys directory + ansible.builtin.file: + path: '{{ apt_repo_keys_dir }}' + mode: '755' + state: directory + + - name: Set key path + ansible.builtin.set_fact: + key_path: '{{ apt_repo_keys_dir }}/{{ apt_repo_name }}.asc' + + - name: 'Add key: {{ apt_repo_name }}' + ansible.builtin.get_url: + url: '{{ apt_repo_key_url }}' + dest: '{{ key_path }}' + mode: '644' + + - 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 }}' + filename: '{{ apt_repo_name }}' -- cgit v1.2.3