You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
homelab/create_deployment_user.yml

29 lines
840 B

- name: Create required deployment users
hosts: all
become: yes
become_method: sudo
become_user: root
tasks:
- name: Create Ansible user
user:
name: ansible # Username
groups: sudo
expires: -1
password: "{{ 'mypassword' | password_hash('sha512') }}" # Encrypted password
state: present # Ensure the user is present
createhome: yes # Create the user's home directory
generate_ssh_key: yes # Generate an SSH key pair for the user
ssh_key_bits: 2048
ssh_key_file: .ssh/id_rsa
- name: Create sudoers file
copy:
dest: /etc/sudoers.d/ansible
content: ""
- name: Add sudoers entry
lineinfile:
dest: /etc/sudoers.d/ansible
state: present
regexp: '^ansible'
line: 'ansible ALL=(ALL) NOPASSWD: ALL'
validate: 'visudo -cf %s'