--- - name: "Install packages" become: true ansible.builtin.package: name: - cgit - lighttpd - openssh state: present - name: "Create git group" become: true ansible.builtin.group: name: "{{ cgit_ssh_user }}" system: true - name: "Create git user" become: true ansible.builtin.user: name: "{{ cgit_ssh_user }}" group: "{{ cgit_ssh_user }}" shell: "/usr/bin/git-shell" home: "{{ cgit_repos_dir }}" create_home: true system: true password: "*" - name: "Create git user .ssh directory" become: true ansible.builtin.file: path: "{{ cgit_repos_dir }}/.ssh" state: directory owner: "{{ cgit_ssh_user }}" group: "{{ cgit_ssh_user }}" mode: "0700" - name: "Deploy authorized_keys" become: true ansible.builtin.authorized_key: user: "{{ cgit_ssh_user }}" key: "{{ item }}" state: present loop: "{{ user_public_keys }}" - name: "Create repos directory" become: true ansible.builtin.file: path: "{{ cgit_repos_dir }}" state: directory owner: "{{ cgit_ssh_user }}" group: "{{ cgit_ssh_user }}" mode: "0755" - name: "Deploy cgitrc" become: true ansible.builtin.template: src: "cgitrc.j2" dest: "/etc/cgitrc" owner: "root" group: "root" mode: "0644" - name: "Deploy lighttpd config" become: true ansible.builtin.template: src: "cgit.lighttpd.conf.j2" dest: "/etc/lighttpd/lighttpd.conf" owner: "root" group: "root" mode: "0644" notify: "Restart lighttpd" - name: "Enable and start services" become: true ansible.builtin.service: name: "{{ item }}" enabled: true state: started loop: - lighttpd - sshd