summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hosts6
-rw-r--r--lamp.yml2
-rw-r--r--lamp/defaults/main.yml2
-rw-r--r--lamp/handlers/main.yml10
-rw-r--r--lamp/tasks/Debian-phpmyadmin.yml23
-rw-r--r--lamp/tasks/RedHat-phpmyadmin.yml23
-rw-r--r--lamp/tasks/clean.yml15
-rw-r--r--lamp/tasks/main.yml45
-rw-r--r--lamp/tasks/test.yml19
-rw-r--r--lamp/templates/index.j25
-rw-r--r--lamp/vars/Debian.yml5
-rw-r--r--lamp/vars/RedHat.yml5
-rw-r--r--upgrade.yml7
13 files changed, 146 insertions, 21 deletions
diff --git a/hosts b/hosts
index 22c61df..13a6a5e 100644
--- a/hosts
+++ b/hosts
@@ -1,5 +1,5 @@
-[local]
-poste1 ansible_host=ansible-debian.xlinfo.lan ansible_user=root ansible_python_interpreter=/usr/bin/python3
-poste2 ansible_host=ansible-rocky.xlinfo.lan ansible_user=root ansible_python_interpreter=/usr/bin/python3
+[containers]
+debian ansible_host=192.168.2.106 ansible_user=root
+rocky ansible_host=192.168.2.107 ansible_user=root
diff --git a/lamp.yml b/lamp.yml
index ff41a5d..59449ef 100644
--- a/lamp.yml
+++ b/lamp.yml
@@ -1,3 +1,3 @@
-- hosts: local
+- hosts: containers
roles:
- lamp
diff --git a/lamp/defaults/main.yml b/lamp/defaults/main.yml
index b79ec02..56675e7 100644
--- a/lamp/defaults/main.yml
+++ b/lamp/defaults/main.yml
@@ -1,2 +1,2 @@
---
-# defaults file for lamp \ No newline at end of file
+# vars file for lamp
diff --git a/lamp/handlers/main.yml b/lamp/handlers/main.yml
index 06e9f45..b583d01 100644
--- a/lamp/handlers/main.yml
+++ b/lamp/handlers/main.yml
@@ -1,13 +1,7 @@
---
# handlers file for lamp
-- name: starting_apache
+- name: restarting_apache
service:
name: '{{apache.service}}'
- state: started
- enabled: yes
+ state: restarted
-- name: starting_mariadb
- service:
- name: '{{mariadb_service}}'
- state: started
- enabled: yes
diff --git a/lamp/tasks/Debian-phpmyadmin.yml b/lamp/tasks/Debian-phpmyadmin.yml
new file mode 100644
index 0000000..8bfb478
--- /dev/null
+++ b/lamp/tasks/Debian-phpmyadmin.yml
@@ -0,0 +1,23 @@
+---
+- name: configuration debconf
+ block:
+ - debconf:
+ name: phpmyadmin
+ question: 'phpmyadmin/reconfigure-webserver'
+ value: 'apache2'
+ vtype: select
+ - debconf:
+ name: phpmyadmin
+ question: 'phpmyadmin/mysql/admin-pass'
+ value: '(password omitted)'
+ vtype: string
+ - debconf:
+ name: phpmyadmin
+ question: 'phpmyadmin/dbconfig-install'
+ value : 'true'
+ vtype: boolean
+
+- name: installation phpmyadmin
+ package:
+ name: phpmyadmin
+ state: present
diff --git a/lamp/tasks/RedHat-phpmyadmin.yml b/lamp/tasks/RedHat-phpmyadmin.yml
new file mode 100644
index 0000000..569ddd2
--- /dev/null
+++ b/lamp/tasks/RedHat-phpmyadmin.yml
@@ -0,0 +1,23 @@
+---
+- name: installation epel-release
+ package:
+ name: epel-release
+ state: present
+
+- name: installation phpmyadmin
+ package:
+ name: phpmyadmin
+ state: present
+
+- name: phpmyadmin.conf
+ replace:
+ path: /etc/httpd/conf.d/phpMyAdmin.conf
+ regexp: "Require local"
+ replace: "Require all granted"
+ after: "<Directory /usr/share/phpMyAdmin/>"
+ before: "</Directory>"
+ notify: restarting_apache
+
+- name: database
+ shell: mysql < /usr/share/phpMyAdmin/sql/create_tables.sql
+
diff --git a/lamp/tasks/clean.yml b/lamp/tasks/clean.yml
new file mode 100644
index 0000000..7e3571e
--- /dev/null
+++ b/lamp/tasks/clean.yml
@@ -0,0 +1,15 @@
+---
+- name: supprimer la base de données test
+ community.mysql.mysql_db:
+ name: toto
+ state: absent
+ login_unix_socket: '{{mariadb.socket}}'
+
+- name: supprimer l'utilisateur test
+ community.mysql.mysql_user:
+ name: toto
+ password: secret
+ priv: 'toto.*:ALL'
+ state: absent
+ login_unix_socket: '{{mariadb.socket}}'
+
diff --git a/lamp/tasks/main.yml b/lamp/tasks/main.yml
index 634252f..17cf4d8 100644
--- a/lamp/tasks/main.yml
+++ b/lamp/tasks/main.yml
@@ -1,17 +1,34 @@
---
# tasks file for lamp
-- name: installation des variables
- include_vars: '{{ansible_distribution_file_variety}}.yml'
+- include_vars: '{{ansible_os_family}}.yml'
+ tags:
+ - test
+ - clean
- name: installation de lamp
package:
+ update_cache: true
name: "{{item}}"
state: present
with_items: '{{lamp_packages}}'
- notify:
- - starting_apache
- - starting_mariadb
+- name: activation des services sur Redhat
+ service:
+ state: started
+ name: '{{item}}'
+ with_items:
+ - httpd
+ - mariadb
+ when: ansible_os_family == 'RedHat'
+
+- name : activation du mod_rewrite d'apache sur Debian
+ apache2_module:
+ state: present
+ name: rewrite
+ when: ansible_os_family == 'Debian'
+ notify:
+ - restarting_apache
+
- name: mise en place de index.html
template:
src: templates/index.j2
@@ -20,3 +37,21 @@
group: "{{apache.user}}"
mode: 0644
+- name: installation de phpmyadmin
+ include_tasks: '{{ansible_os_family}}-phpmyadmin.yml'
+ vars:
+ - apache: '{{apache}}'
+ tags: phpmyadmin
+
+- name: test user
+ import_tasks: test.yml
+ tags:
+ - never
+ - test
+
+- name: clean user
+ import_tasks: clean.yml
+ tags:
+ - never
+ - clean
+
diff --git a/lamp/tasks/test.yml b/lamp/tasks/test.yml
new file mode 100644
index 0000000..46d10e7
--- /dev/null
+++ b/lamp/tasks/test.yml
@@ -0,0 +1,19 @@
+---
+- name: install dépendances python
+ package:
+ name: '{{ mariadb.pythonlib }}'
+ state: present
+
+- name: Créerla base de données test
+ community.mysql.mysql_db:
+ name: toto
+ state: present
+ login_unix_socket: '{{mariadb.socket}}'
+
+- name: Créer un utilisateur test
+ community.mysql.mysql_user:
+ name: toto
+ password: secret
+ priv: 'toto.*:ALL'
+ state: present
+ login_unix_socket: '{{mariadb.socket}}'
diff --git a/lamp/templates/index.j2 b/lamp/templates/index.j2
index 2c338ad..29619c2 100644
--- a/lamp/templates/index.j2
+++ b/lamp/templates/index.j2
@@ -2,16 +2,19 @@
<html>
<head>
<title>{{ansible_distribution}} Apache Web Server</title>
+<meta charset="utf-8" />
</head>
<body>
<h1>{{ansible_distribution}} Apache Web Server</h1>
+<h2>Site en Constuction</h2>
{% if lamp_packages is defined %}
-<h2>Packages :</h2>
+<h3>Packages :</h3>
<ul>
{% for item in lamp_packages %}
<li>{{item}}</li>
{% endfor %}
</ul>
{% endif %}
+<p>Généré par {{ ansible_distribution }} {{ ansible_distribution_version }}</p>
</body>
</html>
diff --git a/lamp/vars/Debian.yml b/lamp/vars/Debian.yml
index 7b26cfa..1c7659f 100644
--- a/lamp/vars/Debian.yml
+++ b/lamp/vars/Debian.yml
@@ -2,10 +2,13 @@ lamp_packages:
- apache2
- mariadb-server
- php
+ - php-mysql
apache:
service: apache2
user: www-data
-mariadb_service: mysql
+mariadb:
+ socket: /var/run/mysqld/mysqld.sock
+ pythonlib: python3-pymysql
diff --git a/lamp/vars/RedHat.yml b/lamp/vars/RedHat.yml
index 90f8a13..b8033ee 100644
--- a/lamp/vars/RedHat.yml
+++ b/lamp/vars/RedHat.yml
@@ -2,10 +2,13 @@ lamp_packages:
- httpd
- mariadb-server
- php
+ - php-mysqlnd
apache:
service: httpd
user: apache
-mariadb_service: mariadb
+mariadb:
+ socket: /var/lib/mysql/mysql.sock
+ pythonlib: python3-PyMySQL
diff --git a/upgrade.yml b/upgrade.yml
new file mode 100644
index 0000000..2f2f372
--- /dev/null
+++ b/upgrade.yml
@@ -0,0 +1,7 @@
+---
+- hosts: all
+ tasks:
+ - package:
+ name: "*"
+ state: latest
+ update_cache: yes