diff --git a/roles/lego/tasks/main.yml b/roles/lego/tasks/main.yml index d74aed1..98defdd 100644 --- a/roles/lego/tasks/main.yml +++ b/roles/lego/tasks/main.yml @@ -14,27 +14,22 @@ url: "https://github.com/go-acme/lego/releases/download/\ {{ lego_version.tag }}/lego_{{ lego_version.tag }}\ _linux_{{ deb_architecture }}.tar.gz" - dest: "/tmp/lego_{{ lego_version.tag }}_linux_{{ deb_architecture }}.tar.gz" + dest: "/var/tmp/lego.tar.gz" register: _download_archive until: _download_archive is succeeded retries: 3 delay: 5 -- name: unpack lego binaries +- name: Unpack lego unarchive: - src: "/tmp/lego_{{ lego_version.tag }}_linux_{{ deb_architecture }}.tar.gz" - dest: "/tmp" - creates: "/tmp/lego_{{ lego_version.tag }}_linux_{{ deb_architecture }}" remote_src: true + src: "/var/tmp/lego.tar.gz" + dest: "/var/tmp" + mode: 0755 extra_opts: - --one-top-level - -- name: Copy lego - copy: - src: "/tmp/lego_{{ lego_version.tag }}_linux_{{ deb_architecture }}/lego" - dest: "{{ lego_install_dir }}/lego" - remote_src: true - mode: 0755 + include: + - lego - name: Create lego config directory file: diff --git a/roles/mariadb/tasks/mysqld_exporter.yml b/roles/mariadb/tasks/mysqld_exporter.yml index cbaf22c..077f2a4 100644 --- a/roles/mariadb/tasks/mysqld_exporter.yml +++ b/roles/mariadb/tasks/mysqld_exporter.yml @@ -14,30 +14,28 @@ mysqld_exporter_version: "{{ mysqld_exporter_version | replace ('v', '', 1) | trim }}" run_once: true -- name: download mysqld_exporter {{ mysqld_exporter_version.tag }} from GitHub +- name: Download mysqld_exporter {{ mysqld_exporter_version.tag }} from GitHub get_url: url: "https://github.com/prometheus/mysqld_exporter/releases/download/\ v{{ mysqld_exporter_version.tag }}/mysqld_exporter-{{ mysqld_exporter_version.tag }}\ .linux-{{ deb_architecture }}.tar.gz" - dest: "/tmp/mysqld_exporter-{{ mysqld_exporter_version.tag }}.linux-{{ deb_architecture }}.tar.gz" + dest: "/var/tmp/mysqld_exporter.tar.gz" register: _download_archive until: _download_archive is succeeded retries: 3 delay: 5 -- name: unpack mysqld_exporter binaries +- name: Unpack mysqld_exporter unarchive: - src: "/tmp/mysqld_exporter-{{ mysqld_exporter_version.tag }}.linux-{{ deb_architecture }}.tar.gz" - dest: "/tmp" - creates: "/tmp/mysqld_exporter-{{ mysqld_exporter_version.tag }}.linux-{{ deb_architecture }}" remote_src: true - -- name: Copy mysqld_exporter - copy: - src: "/tmp/mysqld_exporter-{{ mysqld_exporter_version.tag }}.linux-{{ deb_architecture }}/mysqld_exporter" - dest: "{{ mysqld_exporter_install_dir }}/mysqld_exporter" - remote_src: true - mode: 0755 + src: "/var/tmp/mysqld_exporter.tar.gz" + dest: "{{ mysqld_exporter_install_dir }}" + owner: root + group: root + extra_opts: + --strip-components=1 + include: + - "mysqld_exporter-{{ mysqld_exporter_version.tag }}.linux-{{ deb_architecture }}/mysqld_exporter" notify: restart mysqld_exporter - name: Copy the mysqld_exporter systemd service file diff --git a/roles/nextcloud/tasks/configure.yml b/roles/nextcloud/tasks/configure.yml index 25ffac5..d3fd5d9 100644 --- a/roles/nextcloud/tasks/configure.yml +++ b/roles/nextcloud/tasks/configure.yml @@ -48,26 +48,26 @@ nextcloud_exporter_version: "{{ nextcloud_exporter_version | replace ('v', '', 1) | trim }}" run_once: true -- name: download nextcloud_exporter {{ nextcloud_exporter_version.tag }} from GitHub +- name: Download nextcloud_exporter {{ nextcloud_exporter_version.tag }} from GitHub get_url: url: "https://github.com/xperimental/nextcloud-exporter/releases/download/\ v{{ nextcloud_exporter_version.tag }}/nextcloud-exporter-{{ nextcloud_exporter_version.tag }}\ -{{ deb_architecture }}.bz2" - dest: "/tmp/nextcloud-exporter-{{ nextcloud_exporter_version.tag }}-{{ deb_architecture }}.bz2" + dest: "/var/tmp/nextcloud-exporter.bz2" register: _download_archive until: _download_archive is succeeded retries: 3 delay: 5 -- name: decompress nextcloud_exporter binaries +- name: decompress nextcloud_exporter command: - cmd: "bzip2 -dk nextcloud-exporter-{{ nextcloud_exporter_version.tag }}-{{ deb_architecture }}.bz2" - chdir: /tmp - creates: /tmp/nextcloud-exporter-{{ nextcloud_exporter_version.tag }}-{{ deb_architecture }} + cmd: "bzip2 -dk nextcloud-exporter.bz2" + chdir: /var/tmp + creates: /var/tmp/nextcloud-exporter - name: Copy nextcloud_exporter copy: - src: "/tmp/nextcloud-exporter-{{ nextcloud_exporter_version.tag }}-{{ deb_architecture }}" + src: "/var/tmp/nextcloud-exporter" dest: "{{ nextcloud_exporter_install_dir }}/nextcloud_exporter" remote_src: true owner: "{{ nextcloud_exporter_system_user }}" @@ -99,11 +99,11 @@ deb_architecture_alias: "{{ deb_architecture }}" when: deb_architecture != "amd64" -- name: download nextcloud_notify_push {{ nextcloud_notify_push_version.tag }} from GitHub +- name: Download nextcloud_notify_push {{ nextcloud_notify_push_version.tag }} from GitHub get_url: url: "https://github.com/nextcloud/notify_push/releases/download/v{{ nextcloud_notify_push_version.tag }}\ /notify_push-{{ deb_architecture_alias }}-unknown-linux-musl" - dest: "/tmp/notify_push-{{ deb_architecture_alias }}-unknown-linux-musl" + dest: "/var/tmp/notify_push-{{ deb_architecture_alias }}-unknown-linux-musl" register: _download_archive until: _download_archive is succeeded retries: 3 @@ -111,7 +111,7 @@ - name: Copy nextcloud_notify_push copy: - src: "/tmp/notify_push-{{ deb_architecture_alias }}-unknown-linux-musl" + src: "/var/tmp/notify_push-{{ deb_architecture_alias }}-unknown-linux-musl" dest: "{{ nextcloud_notify_push_install_dir }}/nextcloud_notify_push-{{ deb_architecture_alias }}" remote_src: true owner: "{{ webserver_user }}" diff --git a/roles/nextcloud/tasks/nextcloud.yml b/roles/nextcloud/tasks/nextcloud.yml index 76d74db..6c4075b 100644 --- a/roles/nextcloud/tasks/nextcloud.yml +++ b/roles/nextcloud/tasks/nextcloud.yml @@ -19,10 +19,19 @@ mode: 0775 force: false - - name: unpack nextcloud latest from nextcloud.com + - name: Download nextcloud latest from nextcloud.com + get_url: + url: "https://download.nextcloud.com/server/releases/latest.tar.bz2" + dest: "/var/tmp/nextcloud.tar.gz" + register: _download_archive + until: _download_archive is succeeded + retries: 3 + delay: 5 + + - name: Unpack nextcloud unarchive: remote_src: true - src: "https://download.nextcloud.com/server/releases/latest.tar.bz2" + src: "/var/tmp/nextcloud.tar.gz" dest: "{{ nextcloud_dir }}" owner: "{{ webserver_user }}" group: "{{ webserver_group }}" diff --git a/roles/node_exporter/tasks/main.yml b/roles/node_exporter/tasks/main.yml index 3ad1edd..5e5f03d 100644 --- a/roles/node_exporter/tasks/main.yml +++ b/roles/node_exporter/tasks/main.yml @@ -31,32 +31,28 @@ node_exporter_version: "{{ node_exporter_version | replace ('v', '', 1) | trim }}" run_once: true -- name: download node_exporter {{ node_exporter_version.tag }} from GitHub +- name: Download node_exporter {{ node_exporter_version.tag }} from GitHub get_url: url: "https://github.com/prometheus/node_exporter/releases/download/\ v{{ node_exporter_version.tag }}/node_exporter-{{ node_exporter_version.tag }}\ .linux-{{ deb_architecture }}.tar.gz" - dest: "/tmp/node_exporter-{{ node_exporter_version.tag }}-linux-{{ deb_architecture }}.tar.gz" + dest: "/var/tmp/node_exporter.tar.gz" register: _download_archive until: _download_archive is succeeded retries: 3 delay: 5 -- name: unpack node_exporter binaries +- name: Unpack node_exporter unarchive: - src: "/tmp/node_exporter-{{ node_exporter_version.tag }}-linux-{{ deb_architecture }}.tar.gz" - dest: "/tmp" - creates: "node_exporter-{{ node_exporter_version.tag }}.linux-{{ deb_architecture }}" - remote_src: true - -- name: Copy node_exporter - copy: - src: "/tmp/node_exporter-{{ node_exporter_version.tag }}.linux-{{ deb_architecture }}/node_exporter" - dest: "{{ node_exporter_install_dir }}/node_exporter" remote_src: true + src: "/var/tmp/node_exporter.tar.gz" + dest: "{{ node_exporter_install_dir }}" owner: "{{ node_exporter_system_user }}" group: "{{ node_exporter_system_group }}" - mode: 0755 + extra_opts: + - --strip-components=1 + include: + - "node_exporter-{{ node_exporter_version.tag }}.linux-{{ deb_architecture }}/node_exporter" notify: restart node_exporter - name: Copy node_exporter systemd service diff --git a/roles/postgresql/tasks/postgres_exporter.yml b/roles/postgresql/tasks/postgres_exporter.yml index c9e97e4..c92a721 100644 --- a/roles/postgresql/tasks/postgres_exporter.yml +++ b/roles/postgresql/tasks/postgres_exporter.yml @@ -14,30 +14,28 @@ postgres_exporter_version: "{{ postgres_exporter_version | replace ('v', '', 1) | trim }}" run_once: true -- name: download postgres_exporter {{ postgres_exporter_version.tag }} from GitHub +- name: Download postgres_exporter {{ postgres_exporter_version.tag }} from GitHub get_url: url: "https://github.com/prometheus-community/postgres_exporter/releases/download/\ v{{ postgres_exporter_version.tag }}/postgres_exporter-{{ postgres_exporter_version.tag }}\ .linux-{{ deb_architecture }}.tar.gz" - dest: "/tmp/postgres_exporter-{{ postgres_exporter_version.tag }}-linux-{{ deb_architecture }}.tar.gz" + dest: "/var/tmp/postgres_exporter.tar.gz" register: _download_archive until: _download_archive is succeeded retries: 3 delay: 5 -- name: unpack postgres_exporter binaries +- name: Unpack postgres_exporter unarchive: - src: "/tmp/postgres_exporter-{{ postgres_exporter_version.tag }}-linux-{{ deb_architecture }}.tar.gz" - dest: "/tmp" - creates: "/tmp/postgres_exporter-{{ postgres_exporter_version.tag }}.linux-{{ deb_architecture }}" remote_src: true - -- name: Copy postgres_exporter - copy: - src: "/tmp/postgres_exporter-{{ postgres_exporter_version.tag }}.linux-{{ deb_architecture }}/postgres_exporter" - dest: "{{ pgsql_exporter_install_dir }}/postgres_exporter" - remote_src: true - mode: 0755 + src: "/var/tmp/postgres_exporter.tar.gz" + dest: "{{ pgsql_exporter_install_dir }}" + owner: root + group: root + extra_opts: + --strip-components=1 + include: + - "postgres_exporter-{{ postgres_exporter_version.tag }}.linux-{{ deb_architecture }}/postgres_exporter" notify: restart postgres_exporter - name: Copy the postgres_exporter systemd service file diff --git a/roles/rclone/tasks/main.yml b/roles/rclone/tasks/main.yml index b6c2821..de4ad6a 100644 --- a/roles/rclone/tasks/main.yml +++ b/roles/rclone/tasks/main.yml @@ -14,14 +14,20 @@ rclone_version: "{{ rclone_version.content | replace ('rclone v', '', 1) | trim }}" run_once: true -- name: "Install rclone {{ rclone_version }}" - apt: - deb: "https://downloads.rclone.org/v{{ rclone_version }}/rclone-v{{ rclone_version }}-linux-{{ deb_architecture }}.deb" - register: _install_package - until: _install_package is succeeded +- name: Download rclone {{ rclone_version }} + get_url: + url: "https://downloads.rclone.org/v{{ rclone_version }}/\ + rclone-v{{ rclone_version }}-linux-{{ deb_architecture }}.deb" + dest: "/var/tmp/rclone.deb" + register: _download_deb + until: _download_deb is succeeded retries: 3 delay: 5 +- name: Install rclone + apt: + deb: "/var/tmp/rclone.deb" + - name: Symlink rclone binary to use mount helper file: src: "/usr/bin/rclone" diff --git a/roles/systemd_exporter/tasks/main.yml b/roles/systemd_exporter/tasks/main.yml index cd5e3aa..e5cef27 100644 --- a/roles/systemd_exporter/tasks/main.yml +++ b/roles/systemd_exporter/tasks/main.yml @@ -14,32 +14,28 @@ systemd_exporter_version: "{{ systemd_exporter_version | replace ('v', '', 1) | trim }}" run_once: true -- name: download systemd_exporter {{ systemd_exporter_version.tag }} from GitHub +- name: Download systemd_exporter {{ systemd_exporter_version.tag }} from GitHub get_url: url: "https://github.com/povilasv/systemd_exporter/releases/download/\ v{{ systemd_exporter_version.tag }}/systemd_exporter-{{ systemd_exporter_version.tag }}\ .linux-{{ deb_architecture }}.tar.gz" - dest: "/tmp/systemd_exporter-{{ systemd_exporter_version.tag }}-linux-{{ deb_architecture }}.tar.gz" + dest: "/var/tmp/systemd_exporter.tar.gz" register: _download_archive until: _download_archive is succeeded retries: 3 delay: 5 -- name: unpack systemd_exporter binaries +- name: Unpack systemd_exporter unarchive: - src: "/tmp/systemd_exporter-{{ systemd_exporter_version.tag }}-linux-{{ deb_architecture }}.tar.gz" - dest: "/tmp" - creates: "/tmp/systemd_exporter-{{ systemd_exporter_version.tag }}.linux-{{ deb_architecture }}" - remote_src: true - -- name: Copy systemd_exporter - copy: - src: "/tmp/systemd_exporter-{{ systemd_exporter_version.tag }}.linux-{{ deb_architecture }}/systemd_exporter" - dest: "{{ systemd_exporter_install_dir }}/systemd_exporter" remote_src: true + src: "/var/tmp/systemd_exporter.tar.gz" + dest: "{{ systemd_exporter_install_dir }}" owner: "{{ systemd_exporter_system_user }}" group: "{{ systemd_exporter_system_group }}" - mode: 0755 + extra_opts: + - --strip-components=1 + include: + - "systemd_exporter-{{ systemd_exporter_version.tag }}.linux-{{ deb_architecture }}/systemd_exporter" notify: restart systemd_exporter - name: Copy the systemd_exporter systemd service file