base.yml 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. - name: Install default locale
  2. lineinfile: dest=/etc/default/locale regexp="^LANG=" line='LANG="{{locale}}"'
  3. lineinfile: dest=/etc/default/locale regexp="^LANGUAGE=" state=absent
  4. - name: Install hosts file
  5. template: src=hosts.j2 dest=/etc/hosts owner=root group=root mode=0644
  6. notify:
  7. - Update motd
  8. - name: Install hosts.deny file
  9. template: src=hosts.deny.j2 dest=/etc/hosts.deny owner=root group=root mode=0644
  10. - name: Write /etc/apt/sources.list
  11. template: src=apt/sources.{{ ansible_lsb.codename }}.list.j2 dest=/etc/apt/sources.list owner=root group=root mode=0644
  12. notify:
  13. - Reload apt cache
  14. - name: Write /etc/apt/apt.conf.d configuration files
  15. template: src=apt/apt-options.j2 dest=/etc/apt/apt.conf.d/90local owner=root group=root mode=0644
  16. - name: Remove deprecated apt options files
  17. file: path=/etc/apt/apt.conf.d/{{ item }} state=absent
  18. with_items:
  19. - local-recommends
  20. - local-pdiffs
  21. - name: Install base packages
  22. apt: pkg={{ item }} install_recommends=no state=installed update_cache=yes
  23. with_items:
  24. - apticron
  25. - locales-all
  26. - lsb-release
  27. - ntp
  28. - toilet
  29. - toilet-fonts
  30. - facter
  31. - zsh
  32. - git-core
  33. - vim-nox
  34. - ccze
  35. - tree
  36. - pydf
  37. - htop
  38. - sudo
  39. - sysfsutils
  40. - tmux
  41. - rsync
  42. - ca-certificates
  43. - name: Install kernel configuration (proc)
  44. template: src=kernel/sysctl.d/{{ item }}.j2 dest=/etc/sysctl.d/{{ item }} owner=root group=root mode=0644
  45. with_items:
  46. - 10-increase-file-descriptors.conf
  47. notify:
  48. - Apply kernel configuration (proc)
  49. - name: Create sysfs configuration directory - /etc/sysfs.d
  50. file: path=/etc/sysfs.d state=directory owner=root group=root mode=0755
  51. - name: Install kernel configuration (sys)
  52. template: src=kernel/sysfs.d/{{ item }}.j2 dest=/etc/sysfs.d/{{ item }} owner=root group=root mode=0644
  53. with_items:
  54. - 00-sysfs-prolog.conf
  55. notify:
  56. - Refresh sysfs configuration
  57. - name: Install kernel configuration (sys) for disks
  58. template: src=kernel/sysfs.d/{{ item }}.j2 dest=/etc/sysfs.d/{{ item }} owner=root group=root mode=0644
  59. with_items:
  60. - 10-disks.conf
  61. notify:
  62. - Refresh sysfs configuration
  63. when: sysfs_disk_settings
  64. - name: Install sudo configuration
  65. template: src=sudo/local-admin.j2 dest=/etc/sudoers.d/local-admin owner=root group=root mode=0440
  66. - name: Install unprivileged user
  67. user: name="{{item.user}}" comment="{{item.fullname}}" groups=adm,operator,sudo append=yes shell=/bin/zsh state=present
  68. with_items: admins
  69. - name: Install SSH key for unprivileged user
  70. authorized_key: user="{{item.user}}" key="{{lookup('file', '../data/users/' + item.user + '/id_rsa.pub')}}" state=present
  71. with_items: admins
  72. - name: Install SSH key for root
  73. authorized_key: user=root key="{{lookup('file', '../data/users/' + item.user + '/id_rsa.pub')}}" state=present
  74. with_items: admins