diff options
author | Egor Tensin <Egor.Tensin@gmail.com> | 2023-08-15 21:44:16 +0200 |
---|---|---|
committer | Egor Tensin <Egor.Tensin@gmail.com> | 2023-08-15 21:46:06 +0200 |
commit | bbace95c25f2d22163b04d8d3ebd535c7eddfc60 (patch) | |
tree | 97c925a795c087af87fc824169d9804dd865a3e1 /roles/apt_repo | |
parent | debian_ppa -> apt_ppa (diff) | |
download | infra-ansible-bbace95c25f2d22163b04d8d3ebd535c7eddfc60.tar.gz infra-ansible-bbace95c25f2d22163b04d8d3ebd535c7eddfc60.zip |
factor out apt repository setup to apt_repo
Diffstat (limited to '')
-rw-r--r-- | roles/apt_repo/README.md | 2 | ||||
-rw-r--r-- | roles/apt_repo/defaults/main.yml | 2 | ||||
-rw-r--r-- | roles/apt_repo/tasks/main.yml | 23 |
3 files changed, 27 insertions, 0 deletions
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 }}' |