143 lines
3.9 KiB
YAML
Executable file
143 lines
3.9 KiB
YAML
Executable file
---
|
|
#
|
|
#Configuration du pi5 from scratch
|
|
#
|
|
#pré-requis :
|
|
#ssh configuré
|
|
#
|
|
#
|
|
- name: Configuration du pi5 from scratch
|
|
hosts: pi5
|
|
remote_user: griffix
|
|
roles:
|
|
- geerlingguy.docker
|
|
become: true
|
|
tasks:
|
|
|
|
#ajout du groupe docker
|
|
- name: Création du groupe docker
|
|
ansible.builtin.group:
|
|
name: docker
|
|
state: present
|
|
become: true
|
|
|
|
- name: Ensure group "somegroup" exists
|
|
ansible.builtin.group:
|
|
name: media
|
|
state: present
|
|
become: true
|
|
|
|
#Ajout du user griffix aux groupes docker et media
|
|
- name: Ajout du user griffix au groupe docker
|
|
ansible.builtin.user:
|
|
name: griffix
|
|
groups: docker,media
|
|
become: true
|
|
|
|
|
|
#mount 8Tb HDD externe
|
|
#UUID=8d9ea59e-4f9a-48d8-94bc-9604f7c131a4 /media/Seagate ext4 defaults,auto,users,rw,nofail,noatime 0 0
|
|
- name: Mount up device by UUID
|
|
ansible.posix.mount:
|
|
path: /media/Seagate
|
|
src: UUID=8d9ea59e-4f9a-48d8-94bc-9604f7c131a4
|
|
fstype: ext4
|
|
opts: defaults,auto,users,rw,nofail,noatime
|
|
state: present
|
|
become: true
|
|
|
|
#mount 500 Gb SSD
|
|
#UUID=6177babe-d97c-4837-a326-1e557a5a3119 /temp ext4 defaults,auto,users,rw,nofail,noatime 0 0
|
|
- name: Mount up device by UUID
|
|
ansible.posix.mount:
|
|
path: /temp
|
|
src: UUID=6177babe-d97c-4837-a326-1e557a5a3119
|
|
fstype: ext4
|
|
opts: defaults,auto,users,rw,nofail,noatime
|
|
state: present
|
|
become: true
|
|
|
|
#reboot pour prendre en compte les disques
|
|
|
|
- name: Reboot machine and send a message
|
|
ansible.builtin.reboot:
|
|
msg: "Reboot du pi5 dans 5 secondes pour prise en compte des ajouts de disques en Fstab"
|
|
become: true
|
|
|
|
- name: apt update d'abord
|
|
ansible.builtin.apt:
|
|
update_cache: yes
|
|
become: true
|
|
|
|
- name: Update all packages to their latest version
|
|
ansible.builtin.apt:
|
|
name: "*"
|
|
state: latest
|
|
become: true
|
|
|
|
- name: Installation des packages qui vont bien
|
|
ansible.builtin.apt:
|
|
pkg:
|
|
- fish
|
|
- btop
|
|
- vim
|
|
- nfs-kernel-server
|
|
become: true
|
|
|
|
#confort en cas de log en local
|
|
- name: update profile root avec l'alias qui va bien
|
|
lineinfile:
|
|
dest: ~/.profile
|
|
state: present
|
|
line: "alias ll='ls -alrth'"
|
|
become: true
|
|
|
|
- name: update profile griffix avec l'alias qui va bien
|
|
lineinfile:
|
|
dest: ~/.profile
|
|
state: present
|
|
line: "alias ll='ls -alrth'"
|
|
|
|
- name: update profile griffix avec l'alias qui va bien
|
|
lineinfile:
|
|
dest: ~/.profile
|
|
state: present
|
|
line: "alias dc='docker compose'"
|
|
|
|
- name: Configuration du partage de Seagate
|
|
lineinfile:
|
|
dest: /etc/exports
|
|
state: present
|
|
line: "/media/Seagate 192.168.1.0/24(rw,all_squash,insecure,async,no_subtree_check,anonuid=1000,anongid=1001)"
|
|
become: true
|
|
|
|
- name: Configuration du partage de temp
|
|
lineinfile:
|
|
dest: /etc/exports
|
|
state: present
|
|
line: "/temp 192.168.1.0/24(rw,all_squash,insecure,async,no_subtree_check,anonuid=1000,anongid=1001)"
|
|
become: true
|
|
|
|
- name: Reboot machine and send a message
|
|
ansible.builtin.reboot:
|
|
msg: "Reboot du pi5 dans 5 secondes pour prise en compte des installations et"
|
|
become: true
|
|
|
|
- synchronize:
|
|
src: /media/Seagate/backups/pi5/config/
|
|
dest: /config/
|
|
delegate_to: "{{ inventory_hostname }}"
|
|
become: true
|
|
|
|
- name: Recursively change ownership of a directory
|
|
ansible.builtin.file:
|
|
path: /config
|
|
state: directory
|
|
recurse: yes
|
|
owner: griffix
|
|
group: docker
|
|
|
|
- name: create and deploy docker compose services
|
|
community.docker.docker_compose_v2:
|
|
project_src: /config/
|
|
register: output
|