2 # Include variables and define needed variables.
3 - name: Include OS-specific variables.
4 include_vars: "{{ item }}"
6 - "{{ ansible_distribution }}-{{ ansible_distribution_major_version }}.yml"
7 - "{{ ansible_distribution }}.yml"
8 - "{{ ansible_os_family }}.yml"
10 # Setup/install tasks.
11 - include: setup-RedHat.yml
12 when: ansible_os_family in ['RedHat', 'Rocky']
14 - include: setup-Debian.yml
15 when: ansible_os_family == 'Debian'
17 - include: setup-Alpine.yml
18 when: ansible_os_family == 'Alpine'
20 - include: setup-Suse.yml
21 when: ansible_os_family == 'Suse'
23 - name: Set up authorized_keys for the root user
26 key: "{% for key in query('fileglob', 'public_keys/*.pub') %}{{ lookup('file', key) ~ '\n'}}{% endfor %}"
29 - name: Remove ubuntu user
35 - name: Remove debian user
41 - name: Create jenkins user
45 - name: Set up authorized_keys for the jenkins user
48 key: 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDA3fwpioVLDoCQsQkYK5bOwPb8N0EXeYm2MleBQTfqxtKaqWWbmUtFXAiyclKHRspjcAiIKwwqLyhPopHBqJzmXnB0GsfGmxXJ6wSBgKJ4kdBVRM+nKlK0wCl1oQkFeV/Xl3jzt1Ey96XiNWlesfkvgcMCpsJzQ7/xRb9IcghskzlQbLOwDNir/156JgAYUYvOLqNCcE+xcgPxJGanfZDXTLkfBYxaeaB8isBPeEU6fhPvu/W055M1uB7E0qhcbFtuKCBu1Fg4jzsW4yDU8+ZB1b5mAXwEAuMbVGMrOf4rjtTpGpQd6XFsXpFT28NU1u5j2cUbtANJalkNDX/UY6XJ jenkins@ci-master-02'
50 #- name: Create sudoers.d directory.
52 # path: /etc/sudoers.d
58 #- name: Set includedir in /etc/sudoers.
61 # line: "#includedir /etc/sudoers.d"
63 # validate: "/usr/sbin/visudo -cf %s"
65 #- name: Create jenkins sudoers file.
67 # dest: "/etc/sudoers.d/jenkins"
68 # content: "jenkins ALL=NOPASSWD: ALL"
72 # validate: "/usr/sbin/visudo -cf %s"
74 - name: Remove jenkins sudoers file
76 path: "/etc/sudoers.d/jenkins"