diff --git a/ansible/roles/pds_mount/tasks/main.yml b/ansible/roles/pds_mount/tasks/main.yml index 55367d5a4c10c7cb29219bfa39656d26061af539..811a667ee352f41eef275a7b15b8b3b704cc39f3 100644 --- a/ansible/roles/pds_mount/tasks/main.yml +++ b/ansible/roles/pds_mount/tasks/main.yml @@ -1,3 +1,30 @@ +- name: Create homes + block: + - name: "Stat homes" + stat: + path: "/export/home/{{item}}" + register: home + loop: "{{mount.home.pontos[inventory_hostname | regex_replace('pontos([0-9]*).fi.muni.cz', '\\1')]}}" + + - name: "Create home dir" + file: + state: directory + path: "/export/home/{{item}}" + owner: "{{item}}" + group: "paradise" + loop: "{{home.results | map(attribute='item')}}" + register: home_created + + - name: "Copy skeleton" + copy: + src: "/etc/skel/{{item.1}}" + dest: "/export/home/{{item.0.item}}" + remote_src: true + owner: "{{item.0.item}}" + group: "paradise" + loop: "{{home_created.results | selectattr('changed') | product(['.bash_logout', '.bashrc', '.profile']) | list}}" + when: inventory_hostname == "pontos01.fi.muni.cz" or inventory_hostname == "pontos02.fi.muni.cz" or inventory_hostname == "pontos03.fi.muni.cz" or inventory_hostname == "pontos04.fi.muni.cz" + - name: Setup home exports template: src: home.exports.j2