From 98eaeaa53b9cbe7c23424e5a4f30be6c0ff8dd32 Mon Sep 17 00:00:00 2001 From: Yohann D'ANELLO <ynerant@crans.org> Date: Mon, 22 Feb 2021 02:40:54 +0100 Subject: [PATCH] [gitlab] Install irker from Debian Sid to add IRC webhooks Signed-off-by: Yohann D'ANELLO <ynerant@crans.org> --- group_vars/git.yml | 3 ++ plays/gitlab.yml | 3 ++ roles/irker/handlers/main.yml | 5 +++ roles/irker/tasks/main.yml | 34 +++++++++++++++++++ .../templates/apt/preferences.d/irker-sid.j2 | 12 +++++++ .../templates/apt/sources.list.d/sid.list.j2 | 3 ++ 6 files changed, 60 insertions(+) create mode 100644 roles/irker/handlers/main.yml create mode 100644 roles/irker/tasks/main.yml create mode 100644 roles/irker/templates/apt/preferences.d/irker-sid.j2 create mode 100644 roles/irker/templates/apt/sources.list.d/sid.list.j2 diff --git a/group_vars/git.yml b/group_vars/git.yml index cd1a75ed..c44a9f7f 100644 --- a/group_vars/git.yml +++ b/group_vars/git.yml @@ -19,3 +19,6 @@ glob_gitlab: smtp: address: "{{ query('ldap', 'ip', 'redisdead', 'adm') | first }}" port: 25 + +glob_irker: + name: GitlabBot diff --git a/plays/gitlab.yml b/plays/gitlab.yml index 66806b7c..b8b10e1d 100755 --- a/plays/gitlab.yml +++ b/plays/gitlab.yml @@ -11,9 +11,12 @@ vars: certbot: '{{ loc_certbot | default(glob_certbot | default([])) }}' gitlab: '{{ glob_gitlab | default({}) | combine(loc_gitlab | default({}), recursive=True) }}' + irker: '{{ glob_irker | default({}) | combine(loc_irker | default({})) }}' + mirror: '{{ glob_mirror | default({}) | combine(loc_mirror | default({})) }}' nginx: '{{ glob_nginx | default({}) | combine(loc_nginx | default({})) }}' reverseproxy: '{{ glob_reverseproxy | default({}) | combine(loc_reverseproxy | default({})) }}' roles: - certbot - gitlab - nginx + - irker diff --git a/roles/irker/handlers/main.yml b/roles/irker/handlers/main.yml new file mode 100644 index 00000000..40d97cb4 --- /dev/null +++ b/roles/irker/handlers/main.yml @@ -0,0 +1,5 @@ +--- +- name: Reload irker + systemd: + name: irkerd + state: restarted diff --git a/roles/irker/tasks/main.yml b/roles/irker/tasks/main.yml new file mode 100644 index 00000000..5e2b1ffc --- /dev/null +++ b/roles/irker/tasks/main.yml @@ -0,0 +1,34 @@ +--- +- name: Pin irker from bullseye + template: + src: "apt/{{ item }}.j2" + dest: "/etc/apt/{{ item }}" + loop: + - sources.list.d/sid.list + - preferences.d/irker-sid + when: + - ansible_distribution == "Debian" + - ansible_distribution_major_version | int <= 11 + - ansible_distribution_release != "sid" + + +- name: Install Irker for IRC support + apt: + update_cache: true + install_recommends: false + name: + - irker + register: apt_result + retries: 3 + until: apt_result is succeeded + +- name: Setup Irker parameters + lineinfile: + path: /etc/default/irker + regexp: "^LAUNCH_AT_STARTUP=" + line: 'IRKER_OPTIONS="-n {{ irker.name }} -d warning"' + create: true + owner: root + group: root + mode: 0644 + notify: Reload irker diff --git a/roles/irker/templates/apt/preferences.d/irker-sid.j2 b/roles/irker/templates/apt/preferences.d/irker-sid.j2 new file mode 100644 index 00000000..0fd1f458 --- /dev/null +++ b/roles/irker/templates/apt/preferences.d/irker-sid.j2 @@ -0,0 +1,12 @@ +{{ ansible_header | comment }} + + +Package: * +Pin: release n=sid +Pin-Priority: 1 + + +Package: irker +Pin: release n=sid +Pin-Priority: 900 + diff --git a/roles/irker/templates/apt/sources.list.d/sid.list.j2 b/roles/irker/templates/apt/sources.list.d/sid.list.j2 new file mode 100644 index 00000000..346a18cd --- /dev/null +++ b/roles/irker/templates/apt/sources.list.d/sid.list.j2 @@ -0,0 +1,3 @@ +{{ ansible_header | comment }} + +deb http://{{ mirror.name }}/debian sid main -- GitLab