ansible/main.yaml

40 lines
846 B
YAML

---
- hosts: userhosts
remote_user: ansible
vars:
git_url: "https://git.togrand.xyz"
tasks:
- name: fetch user list from api
uri:
url: "{{ git_url }}/api/v1/orgs/mrtogrand/members"
return_content: yes
register: members
- name: "create users"
user:
name: "{{ item }}"
skeleton: "/etc/skel/"
shell: "/bin/bash"
become: true
with_items: "{{ members | json_query('json[*].login') }}"
- name: import user public keys
authorized_key:
key: "{{ git_url }}/{{ item }}.keys"
exclusive: yes
user: "{{ item }}"
become: true
with_items: "{{ members | json_query('json[*].login') }}"
- name: install essential packages
apt: name={{ item }} state=latest
become: true
with_items:
- htop
- vim
- tmux
- fail2ban
- ufw
- sudo