# # https://www.howtouselinux.com/post/create-user-with-ansible # https://docs.ansible.com/ansible/latest/collections/ansible/builtin/user_module.html # https://docs.ansible.com/ansible/latest/playbook_guide/playbooks_variables.html # https://docs.ansible.com/ansible/latest/collections/community/crypto/openssh_keypair_module.html # https://www.codesandnotes.be/2020/01/13/generate-ssh-keys-using-ansible/ # --- - name: "13 - custom ansible - create/update user" hosts: dev become: yes # Run tasks with root/sudo privileges vars: username: testuser1 password: mypassword passphrase: one two three tasks: - name: create user ansible.builtin.user: name: "{{ username }}" password: "{{ password | password_hash('sha512') }}" # encrypted password state: present # ensure the user is present createhome: true # create the users home directory shell: /bin/bash group: users # slackware default groups: audio,cdrom,floppy,input,lp,netdev,plugdev,power,scanner,video,wheel generate_ssh_key: true ssh_key_type: ed25519 ssh_key_passphrase: "{{ passphrase }}" # # received the following when running this playbook: # # TASK [create user] ************************************************* # # [DEPRECATION WARNING]: Encryption using the Python crypt module is # deprecated. The Python crypt module is deprecated and will be removed # from Python 3.13. Install the passlib library for continued encryption # functionality. This feature will be removed in version # 2.17. Deprecation warnings can be disabled by setting # deprecation_warnings=False in ansible.cfg. #