#!/usr/bin/env ansible-playbook --- # Set variable adm_iface for all servers - hosts: server tasks: - name: Register adm interface in adm_iface variable shell: set -o pipefail && grep adm /sys/class/net/*/ifalias | sed "s|/sys/class/net/||" | sed "s|/ifalias:.*||" register: adm_iface check_mode: false changed_when: true args: executable: /bin/bash # Common CRANS configuration for all servers - hosts: server vars: # Debian mirror on adm debian_mirror: http://mirror.adm.crans.org/debian debian_components: main non-free # LDAP binding ldap_base: 'dc=crans,dc=org' ldap_master_ipv4: '10.231.136.19' ldap_local_replica_uri: - "ldap://10.231.136.38" - "ldap://10.231.136.4" ldap_master_uri: "ldap://{{ ldap_master_ipv4 }}" ldap_user_tree: "cn=Utilisateurs,{{ ldap_base }}" ldap_nslcd_bind_dn: "cn=nslcd,ou=service-users,{{ ldap_base }}" ldap_nslcd_passwd: "{{ vault_ldap_nslcd_passwd }}" # Group permissions ssh_allow_groups: ssh nounou apprenti cableur root # Scripts will tell users to go there to manage their account intranet_url: 'https://intranet.crans.org/' # Will be in /usr/scripts/ crans_scripts_git: "http://gitlab.adm.crans.org/nounous/scripts.git" # NTP servers ntp_servers: - charybde.adm.crans.org - silice.adm.crans.org roles: - common-tools - debian-apt-sources - ldap-client - openssh - sudo - ntp-client - crans-scripts # Deploy NFS only on campus - hosts: crans_server roles: - nfs-common # Deploy LDAP replica - hosts: odlyd.adm.crans.org,soyouz.adm.crans.org,fy.adm.crans.org,thot.adm.crans.org roles: [] # TODO # Playbook to deploy autofs NFS - hosts: crans_server,!odlyd.adm.crans.org,!zamok.adm.crans.org,!omnomnom.adm.crans.org,!owl.adm.crans.org,!owncloud-srv.adm.crans.org roles: - nfs-autofs # Deploy home permanent - hosts: zamok.adm.crans.org,omnomnom.adm.crans.org,owl.adm.crans.org,owncloud-srv.adm.crans.org roles: - home-permanent # Redirect local mail to mailserver - hosts: crans_server,test_vm,!redisdead.adm.crans.org vars: mail_root: root@crans.org mail_snmp_server: smtp.adm.crans.org mail_defaulthost: crans.org roles: - nullmailer # Send logs to thot - hosts: server,!thot.adm.crans.org vars: rsyslog: server: thot.adm.crans.org roles: - rsyslog-client - hosts: otis.adm.crans.org roles: - ansible # Tools for members - hosts: zamok.adm.crans.org roles: - zamok-tools #- import_playbook: plays/mail.yml #- import_playbook: plays/nfs.yml #- import_playbook: plays/logs.yml #- import_playbook: plays/tv.yml - import_playbook: plays/backup.yml #- import_playbook: plays/network-interfaces.yml