Files
dsk-iac/ansible/01_old/roles/dsk_bot.datasaker/tasks/dsk-debian-pkg.yml
2023-12-19 13:36:16 +09:00

102 lines
2.9 KiB
YAML

---
# - set_fact:
# datasaker_agents: "{{ datasaker_agents | reject('equalto', 'dsk-log-agent') | list }}"
# when: ansible_facts.distribution_version != "18.04"
- name: Set os-specific variables
set_fact:
os_specific: "{% if ansible_facts['os_family'] == 'RedHat' and ansible_facts['distribution_major_version'] == '7' %}datasaker-redhat-7
{% elif ansible_facts['os_family'] == 'RedHat' and ansible_facts['distribution_major_version'] == '8' %}datasaker-redhat-8
{% elif ansible_facts['os_family'] == 'Amazon' and ansible_facts['distribution_major_version'] == '2' %}datasaker-amazonlinux-2
{% elif ansible_facts['os_family'] == 'Debian'%}debian-repos
{% else %}unknown{% endif %}"
- name: "Create temporary directory for key manipulation"
tempfile:
state: directory
suffix: keys
register: tempdir
- name: "download keyring then add key to keyring"
get_url:
url: "{{ dsk_public_gpg_key }}"
dest: "{{ tempdir.path }}/datasaker.gpg.key"
force: yes
- name: "Create {{ apt_usr_share_keyring }} if it doesn't exist"
file:
path: "{{ apt_usr_share_keyring }}"
state: touch
mode: "0644"
changed_when: False
- name: "Ensure downloaded file for binary keyring"
shell: "cat {{ tempdir.path }}/datasaker.gpg.key | sudo gpg --import --batch --no-default-keyring --keyring {{ apt_usr_share_keyring }}"
- name: "copy keyring to trusted keyring"
copy:
src: "{{ apt_usr_share_keyring }}"
dest: "{{ apt_trusted_d_keyring }}"
mode: "0644"
remote_src: yes
- name: "Remove temporary directory for key manipulation"
file:
path: "{{ tempdir.path }}"
state: absent
- name: "Add datasaker repository"
apt_repository:
repo: "deb [signed-by={{ apt_usr_share_keyring }}] https://nexus.exem-oss.org/repository/debian-repos/ ubuntu main"
state: present
filename: datasaker
- name: "Check datasaker Agent"
include_tasks: check-agent.yml
- name: "Install metric sidecar"
apt:
name: "dsk-metric-sidecar"
state: present
update_cache: yes
force: yes
- name: "Make Datasaker Log Directory"
ansible.builtin.file:
path: "{{ datasaker_host_log_path }}/{{ item }}"
state: directory
recurse: yes
owner: root
group: root
with_items:
- "{{ datasaker_agents }}"
- name: "Install datasaker agent"
apt:
name: "{{ item }}"
state: latest
update_cache: yes
with_items:
- "{{ datasaker_agents }}"
ignore_errors: true
- name: "Install datasaker log agent"
apt:
name: "td-agent"
state: latest
update_cache: yes
when:
- '"dsk-log-agent" in datasaker_agents'
- log_agent_image_tag != "latest"
- name: "Reload systemd configuration"
ansible.builtin.systemd:
daemon_reload: True
- name: "Restart dsk-agent service"
ansible.builtin.systemd:
name: "{{ item }}"
enabled: true
state: restarted
with_items:
- "{{ datasaker_agents }}"
ignore_errors: true