setup datadog agent on each host.
- set agent version to 7
This commit is contained in:
133
ansible-5/roles/datadog.datadog/tasks/pkg-suse.yml
Normal file
133
ansible-5/roles/datadog.datadog/tasks/pkg-suse.yml
Normal file
@@ -0,0 +1,133 @@
|
||||
---
|
||||
- name: Find out whether to set repo_gpgcheck or not
|
||||
set_fact:
|
||||
do_zypper_repo_gpgcheck: >-
|
||||
{{ datadog_zypper_repo_gpgcheck if datadog_zypper_repo_gpgcheck != '' else (
|
||||
'yes' if datadog_zypper_repo == '' and datadog_agent_major_version|int != 5 else 'no'
|
||||
) }}
|
||||
|
||||
- block: # Work around due to SNI check for SLES11
|
||||
- name: Stat if current RPM key already exists
|
||||
stat:
|
||||
path: /tmp/DATADOG_RPM_KEY_CURRENT.public
|
||||
register: ddkeycurrent
|
||||
- name: Download current RPM key (SLES11)
|
||||
get_url:
|
||||
url: "{{ datadog_zypper_gpgkey_current }}"
|
||||
dest: /tmp/DATADOG_RPM_KEY_CURRENT.public
|
||||
force: yes
|
||||
when: not ddkeycurrent.stat.exists
|
||||
when: ansible_distribution_version|int == 11
|
||||
|
||||
- name: Download current RPM key
|
||||
get_url:
|
||||
url: "{{ datadog_zypper_gpgkey_current }}"
|
||||
dest: /tmp/DATADOG_RPM_KEY_CURRENT.public
|
||||
force: yes
|
||||
when: ansible_distribution_version|int >= 12
|
||||
|
||||
- name: Import current RPM key
|
||||
rpm_key:
|
||||
key: /tmp/DATADOG_RPM_KEY_CURRENT.public
|
||||
state: present
|
||||
when: not ansible_check_mode
|
||||
|
||||
# Do not import old key if installing Agent 7, as all Agent 7 packages are signed with the new key
|
||||
- block: # Work around due to SNI check for SLES11
|
||||
- name: Stat if RPM key already exists
|
||||
stat:
|
||||
path: /tmp/DATADOG_RPM_KEY.public
|
||||
register: ddkey
|
||||
- name: Download RPM key (SLES11)
|
||||
get_url:
|
||||
url: "{{ datadog_zypper_gpgkey }}"
|
||||
dest: /tmp/DATADOG_RPM_KEY.public
|
||||
when: not ddkey.stat.exists
|
||||
when: datadog_agent_major_version|int < 7 and ansible_distribution_version|int == 11
|
||||
|
||||
# Do not import old key if installing Agent 7, as all Agent 7 packages are signed with the new key
|
||||
- name: Download RPM key
|
||||
get_url:
|
||||
url: "{{ datadog_zypper_gpgkey }}"
|
||||
dest: /tmp/DATADOG_RPM_KEY.public
|
||||
checksum: "sha256:{{ datadog_zypper_gpgkey_sha256sum }}"
|
||||
when: datadog_agent_major_version|int < 7 and ansible_distribution_version|int >= 12
|
||||
|
||||
- name: Import RPM key
|
||||
rpm_key:
|
||||
key: /tmp/DATADOG_RPM_KEY.public
|
||||
state: present
|
||||
when: datadog_agent_major_version|int < 7 and not ansible_check_mode
|
||||
|
||||
- block: # Work around due to SNI check for SLES11
|
||||
- name: Stat if E09422B3 key (Expires 2022) RPM key already exists
|
||||
stat:
|
||||
path: /tmp/DATADOG_RPM_KEY_E09422B3.public
|
||||
register: ddnewkey
|
||||
- name: Download E09422B3 key (Expires 2022) RPM key (SLES11)
|
||||
get_url:
|
||||
url: "{{ datadog_zypper_gpgkey_e09422b3 }}"
|
||||
dest: /tmp/DATADOG_RPM_KEY_E09422B3.public
|
||||
when: not ddnewkey.stat.exists
|
||||
when: ansible_distribution_version|int == 11
|
||||
|
||||
- name: Download E09422B3 key (Expires 2022) RPM key
|
||||
get_url:
|
||||
url: "{{ datadog_zypper_gpgkey_e09422b3 }}"
|
||||
dest: /tmp/DATADOG_RPM_KEY_E09422B3.public
|
||||
checksum: "sha256:{{ datadog_zypper_gpgkey_e09422b3_sha256sum }}"
|
||||
when: ansible_distribution_version|int >= 12
|
||||
|
||||
- name: Import E09422B3 key (Expires 2022) RPM key
|
||||
rpm_key:
|
||||
key: /tmp/DATADOG_RPM_KEY_E09422B3.public
|
||||
state: present
|
||||
when: not ansible_check_mode
|
||||
|
||||
- block: # Work around due to SNI check for SLES11
|
||||
- name: Stat if 20200908 key (Expires 2024) RPM key already exists
|
||||
stat:
|
||||
path: /tmp/DATADOG_RPM_KEY_20200908.public
|
||||
register: ddnewkey_20200908
|
||||
- name: Download 20200908 key (Expires 2024) RPM key (SLES11)
|
||||
get_url:
|
||||
url: "{{ datadog_zypper_gpgkey_20200908 }}"
|
||||
dest: /tmp/DATADOG_RPM_KEY_20200908.public
|
||||
when: not ddnewkey_20200908.stat.exists
|
||||
when: ansible_distribution_version|int == 11
|
||||
|
||||
- name: Download 20200908 key (Expires 2024) RPM key
|
||||
get_url:
|
||||
url: "{{ datadog_zypper_gpgkey_20200908 }}"
|
||||
dest: /tmp/DATADOG_RPM_KEY_20200908.public
|
||||
checksum: "sha256:{{ datadog_zypper_gpgkey_20200908_sha256sum }}"
|
||||
when: ansible_distribution_version|int >= 12
|
||||
|
||||
- name: Import 20200908 key (Expires 2024) RPM key
|
||||
rpm_key:
|
||||
key: /tmp/DATADOG_RPM_KEY_20200908.public
|
||||
state: present
|
||||
when: not ansible_check_mode
|
||||
|
||||
# ansible don't allow repo_gpgcheck to be set, we have to create the repo file manually
|
||||
- name: Install DataDog zypper repo
|
||||
template:
|
||||
src: zypper.repo.j2
|
||||
dest: /etc/zypp/repos.d/datadog.repo
|
||||
owner: "root"
|
||||
group: "root"
|
||||
mode: 0644
|
||||
register: datadog_zypper_repo
|
||||
|
||||
# refresh zypper repos only if the template changed
|
||||
- name: refresh Datadog zypper_repos # noqa 503
|
||||
command: zypper refresh datadog
|
||||
when: datadog_zypper_repo.changed and not ansible_check_mode
|
||||
args:
|
||||
warn: false # silence warning about using zypper directly
|
||||
|
||||
- include_tasks: pkg-suse/install-pinned.yml
|
||||
when: datadog_agent_suse_version is defined
|
||||
|
||||
- include_tasks: pkg-suse/install-latest.yml
|
||||
when: datadog_agent_suse_version is not defined
|
||||
Reference in New Issue
Block a user