init files from local folder

init with all my previous files
This commit is contained in:
griffix 2025-08-01 14:59:36 +02:00
commit 82c36314d1
Signed by: griffix
GPG key ID: 9A72D1FAE36EC98A
23 changed files with 1023 additions and 0 deletions

167
Ansible/playbook-pi3.yml Executable file
View file

@ -0,0 +1,167 @@
---
#
#Configuration du pi5 from scratch
#
#pré-requis :
#ssh configuré
#
#
- name: Configuration du pi3 from scratch
hosts: pi3
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 des packages déjà installés
ansible.builtin.apt:
name: "*"
state: latest
become: true
- name: Installation des packages qui vont bien
ansible.builtin.apt:
pkg:
- fish
- docker
- btop
- vim
- nfs-kernel-server
become: true
#confort en cas de log en local
- name: update profile root
lineinfile:
dest: ~/.profile
state: present
line: "alias ll='ls -alrth'"
become: true
- name: update profile griffix
lineinfile:
dest: ~/.profile
state: present
line: "alias ll='ls -alrth'"
# #Share Seagate
# - name: Share 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
# #share Temp
# - name: share 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
# - name: Copy file with owner and permissions
# ansible.builtin.copy:
# src: /media/Seagate/Ansible_conf/config/
# dest: /config
# owner: griffix
# group: media
# mode: '0766'
# - name: Create directory for Docker CLI plugins
# file:
# path: /usr/local/lib/docker/cli-plugins
# state: directory
# mode: '0755'
# become: true
# - name: Download Docker Compose V2 binary
# get_url:
# url: https://github.com/docker/compose/releases/download/v2.34.0/docker-compose-linux-aarch64
# dest: /usr/local/lib/docker/cli-plugins/docker-compose
# mode: '0755'
# become: true
# - name: Make Docker Compose binary executable
# file:
# path: /usr/local/lib/docker/cli-plugins/docker-compose
# mode: '0755'
# become: true
# - name: Verify Docker Compose installation
# command: docker compose version
# register: docker_compose_version
# ignore_errors: yes
# - name: Show Docker Compose version
# debug:
# msg: "{{ docker_compose_version.stdout }}"
# when: docker_compose_version.rc == 0
- name: Create and deploy docker compose services
community.docker.docker_compose_v2:
project_src: /config/
register: output

24
Ansible/playbook-pi4-backup.yml Executable file
View file

@ -0,0 +1,24 @@
---
#
#Backup du pi5
#
- name: Configuration du pi5 from scratch
hosts: pi5
remote_user: griffix
tasks:
- name: stop docker compose services
community.docker.docker_compose_v2:
project_src: /config/
state: stopped
register: output
- synchronize:
src: /config/
dest: /media/Seagate/backups/pi5
delegate_to: "{{ inventory_hostname }}"
- name: re-deploy docker compose services
community.docker.docker_compose_v2:
project_src: /config/
register: output

24
Ansible/playbook-pi5-backup.yml Executable file
View file

@ -0,0 +1,24 @@
---
#
#Backup du pi5
#
- name: Configuration du pi5 from scratch
hosts: pi5
remote_user: griffix
tasks:
- name: stop docker compose services
community.docker.docker_compose_v2:
project_src: /config/
state: stopped
register: output
- synchronize:
src: /config/
dest: /media/Seagate/backups/pi5
delegate_to: "{{ inventory_hostname }}"
- name: re-deploy docker compose services
community.docker.docker_compose_v2:
project_src: /config/
register: output

48
Ansible/playbook-pi5-end.yml Executable file
View file

@ -0,0 +1,48 @@
---
#
#Configuration du pi5 from scratch
#
#pré-requis :
#ssh configuré
#
#
- name: Configuration du pi5 from scratch
hosts: pi5
remote_user: griffix
tasks:
- name: créer le /config
ansible.builtin.file:
path: /config
state: directory
owner: griffix
group: docker
mode: 0775
become: true
# - name: Copy file with owner and permissions
# ansible.builtin.copy:
# src: /media/Seagate/Ansible_conf/config/
# dest: /config/
# owner: griffix
# group: media
# mode: '0766'
- synchronize:
src: /media/Seagate/Ansible_conf/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

142
Ansible/playbook-pi5.yml Executable file
View file

@ -0,0 +1,142 @@
---
#
#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/Ansible_conf/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