Compare commits
	
		
			2 Commits
		
	
	
		
			6607b9ea33
			...
			7f39793df7
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 7f39793df7 | |||
| c37c4bdd1c | 
							
								
								
									
										74
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										74
									
								
								README.md
									
									
									
									
									
								
							| @@ -1,3 +1,73 @@ | |||||||
| # role_modele | # role_apt | ||||||
|  |  | ||||||
| Modèle | Rôle de configuration du gestionnaire de paquet *apt* et de déploiement/suppression de paquets. | ||||||
|  |  | ||||||
|  | ## Variables | ||||||
|  |  | ||||||
|  | ### apt_distribution_name | ||||||
|  |  | ||||||
|  | Nom de la distribution utilisée. | ||||||
|  |  | ||||||
|  | <span style="text-decoration: underline">Valeur par défaut:</span> `debian` | ||||||
|  |  | ||||||
|  | ### apt_distribution_release | ||||||
|  |  | ||||||
|  | Nom de la version de la distribution utilisée. | ||||||
|  |  | ||||||
|  | <span style="text-decoration: underline">Valeur par défaut:</span> `bullseye` | ||||||
|  |  | ||||||
|  | ### apt_distribution_sections | ||||||
|  |  | ||||||
|  | Sections où seront chercher les paquets (exemple : `main contrib non-free`). | ||||||
|  |  | ||||||
|  | <span style="text-decoration: underline">Valeur par défaut:</span> `main` | ||||||
|  |  | ||||||
|  | ### apt_remove | ||||||
|  |  | ||||||
|  | Liste de paquets qui seront désinstallés. | ||||||
|  |  | ||||||
|  | <span style="text-decoration: underline">Valeur par défaut:</span> aucune | ||||||
|  |  | ||||||
|  | ### apt_install | ||||||
|  |  | ||||||
|  | Liste de paquets qui seront installés. | ||||||
|  |  | ||||||
|  | <span style="text-decoration: underline">Valeur par défaut:</span> aucune | ||||||
|  |  | ||||||
|  | ## Exemple d'utilisation | ||||||
|  |  | ||||||
|  | ### inventory.yml | ||||||
|  |  | ||||||
|  |  | ||||||
|  | ```yaml | ||||||
|  | --- | ||||||
|  |  | ||||||
|  | all: | ||||||
|  |   hosts: | ||||||
|  |     host1.ykn.local: | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | ### group_vars/all.yml | ||||||
|  |  | ||||||
|  | ```yaml | ||||||
|  | --- | ||||||
|  |  | ||||||
|  | apt_remove: | ||||||
|  |   - cloud-guest-utils | ||||||
|  |   - cloud-init | ||||||
|  |  | ||||||
|  | apt_install: | ||||||
|  |   - fail2ban | ||||||
|  |   - nftables | ||||||
|  |   - tmux | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | ### playbook.yml | ||||||
|  |  | ||||||
|  | ```yaml | ||||||
|  | --- | ||||||
|  |  | ||||||
|  | - hosts: 'all' | ||||||
|  |   roles: | ||||||
|  |     - name: apt | ||||||
|  | ``` | ||||||
|   | |||||||
							
								
								
									
										9
									
								
								defaults/main.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								defaults/main.yml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | |||||||
|  | --- | ||||||
|  | # defaults file for apt | ||||||
|  |  | ||||||
|  | apt_distribution_name: debian | ||||||
|  | apt_distribution_release: bullseye | ||||||
|  | apt_distribution_sections: main | ||||||
|  |  | ||||||
|  | apt_remove: [] | ||||||
|  | apt_install: [] | ||||||
| @@ -1,7 +1,7 @@ | |||||||
| galaxy_info: | galaxy_info: | ||||||
|   namespace: ykn |   namespace: ykn | ||||||
|   author: pulsar89.5 |   author: pulsar89.5 | ||||||
|   description: Rôle modèle |   description: Configurer apt et gérer les paquets communs | ||||||
|  |  | ||||||
|   license: GPL-3.0-or-later |   license: GPL-3.0-or-later | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										49
									
								
								tasks/main.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								tasks/main.yml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,49 @@ | |||||||
|  | --- | ||||||
|  | # tasks file for apt | ||||||
|  |  | ||||||
|  | - name: Déployer la configuration du gestionnaire | ||||||
|  |   ansible.builtin.template: | ||||||
|  |     src: apt.conf.j2 | ||||||
|  |     dest: /etc/apt/apt.conf.d/99-custom | ||||||
|  |     owner: root | ||||||
|  |     group: root | ||||||
|  |     mode: u=rw,g=r,o=r | ||||||
|  |   become: true | ||||||
|  |  | ||||||
|  | - name: Déployer la configuration des sources | ||||||
|  |   ansible.builtin.template: | ||||||
|  |     src: sources.list.j2 | ||||||
|  |     dest: /etc/apt/sources.list | ||||||
|  |     owner: root | ||||||
|  |     group: root | ||||||
|  |     mode: u=rw,g=r,o=r | ||||||
|  |   become: true | ||||||
|  |  | ||||||
|  | - name: Mettre à jour le cache | ||||||
|  |   ansible.builtin.apt: | ||||||
|  |     name: sudo | ||||||
|  |   become: true | ||||||
|  |  | ||||||
|  | - name: Installer sudo | ||||||
|  |   ansible.builtin.apt: | ||||||
|  |     name: sudo | ||||||
|  |   become: true | ||||||
|  |  | ||||||
|  | - name: Désinstaller les paquets communs | ||||||
|  |   ansible.builtin.apt: | ||||||
|  |     state: absent | ||||||
|  |     purge: true | ||||||
|  |     autoremove: true | ||||||
|  |     name: "{{ apt_remove }}" | ||||||
|  |   become: true | ||||||
|  |  | ||||||
|  | - name: Mettre à jour la distribution | ||||||
|  |   become: true | ||||||
|  |   ansible.builtin.apt: | ||||||
|  |     update_cache: true | ||||||
|  |     upgrade: dist | ||||||
|  |  | ||||||
|  | - name: Installer les paquets communs | ||||||
|  |   ansible.builtin.apt: | ||||||
|  |     name: "{{ apt_install }}" | ||||||
|  |   become: true | ||||||
							
								
								
									
										8
									
								
								templates/apt.conf.j2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								templates/apt.conf.j2
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | |||||||
|  | # {{ ansible_managed }} | ||||||
|  |  | ||||||
|  | APT::Install-Recommends "false"; | ||||||
|  | APT::Install-Suggests "false"; | ||||||
|  | APT::Get::Show-Versions "true"; | ||||||
|  | APT::Get::Show-Upgraded "true"; | ||||||
|  | APT::Get::Purge "true"; | ||||||
|  | APT::Get::List-Cleanup "true"; | ||||||
							
								
								
									
										3
									
								
								templates/sources.list.j2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								templates/sources.list.j2
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,3 @@ | |||||||
|  | # {{ ansible_managed }} | ||||||
|  |  | ||||||
|  | {{ apt_repositories[apt_distribution_name] }} | ||||||
							
								
								
									
										9
									
								
								vars/main.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								vars/main.yml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | |||||||
|  | --- | ||||||
|  | # vars file for apt | ||||||
|  |  | ||||||
|  | apt_repositories: | ||||||
|  |   debian: | | ||||||
|  |     deb http://deb.debian.org/debian {{ apt_distribution_release }} {{ apt_distribution_sections }} | ||||||
|  |     deb http://security.debian.org/debian-security {{ apt_distribution_release }}-security {{ apt_distribution_sections }} | ||||||
|  |     deb http://deb.debian.org/debian {{ apt_distribution_release }}-updates {{ apt_distribution_sections }} | ||||||
|  |     deb https://deb.debian.org/debian/ {{ apt_distribution_release }}-backports {{ apt_distribution_sections }} | ||||||
		Reference in New Issue
	
	Block a user