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
42 when: jenkins_user | bool
46 - name: Set up authorized_keys for the jenkins user
47 when: jenkins_user | bool
50 key: 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDA3fwpioVLDoCQsQkYK5bOwPb8N0EXeYm2MleBQTfqxtKaqWWbmUtFXAiyclKHRspjcAiIKwwqLyhPopHBqJzmXnB0GsfGmxXJ6wSBgKJ4kdBVRM+nKlK0wCl1oQkFeV/Xl3jzt1Ey96XiNWlesfkvgcMCpsJzQ7/xRb9IcghskzlQbLOwDNir/156JgAYUYvOLqNCcE+xcgPxJGanfZDXTLkfBYxaeaB8isBPeEU6fhPvu/W055M1uB7E0qhcbFtuKCBu1Fg4jzsW4yDU8+ZB1b5mAXwEAuMbVGMrOf4rjtTpGpQd6XFsXpFT28NU1u5j2cUbtANJalkNDX/UY6XJ jenkins@ci-master-02'
52 #- name: Create sudoers.d directory.
54 # path: /etc/sudoers.d
60 #- name: Set includedir in /etc/sudoers.
63 # line: "#includedir /etc/sudoers.d"
65 # validate: "/usr/sbin/visudo -cf %s"
67 #- name: Create jenkins sudoers file.
69 # dest: "/etc/sudoers.d/jenkins"
70 # content: "jenkins ALL=NOPASSWD: ALL"
74 # validate: "/usr/sbin/visudo -cf %s"
76 - name: Remove jenkins sudoers file
78 path: "/etc/sudoers.d/jenkins"