--- #Apache Configuration - name: Install LAMP Packages apt: name={{ item }} update_cache=yes state=latest loop: - 'apache2' - 'mariadb-server' - 'python3-pymysql' - 'php' - 'php-mysql' - 'libapache2-mod-php' - name: Create document root file: path: "/var/www/{{ http_host }}" state: directory owner: "{{ web_user }}" mode: '0755' - name: Set up Apache virtualhost template: src: "files/apache.conf.j2" dest: "/etc/apache2/sites-available/{{ http_conf }}" notify: Reload Apache - name: Enable new site shell: /usr/sbin/a2ensite {{ http_conf }} notify: Reload Apache - name: Disable default Apache site shell: /usr/sbin/a2dissite 000-default.conf when: disable_default notify: Reload Apache # MySQL Configuration - name: Start MariaDB service service: name: mariadb state: started - name: Sets the root password mysql_user: name: root password: "{{ mysql_root_password }}" login_unix_socket: /var/run/mysqld/mysqld.sock ignore_errors: yes - name: Removes all anonymous user accounts mysql_user: name: '' host_all: yes state: absent login_user: root login_password: "{{ mysql_root_password }}" - name: Removes the MySQL test database mysql_db: name: test state: absent login_user: root login_password: "{{ mysql_root_password }}" - name: Sets Up PHP Info Page template: src: "files/info.php.j2" dest: "/var/www/{{ http_host }}/info.php" - name: Sets Up Index page template: src: "files/root_index.html.j2" dest: "/var/www/{{ http_host }}/index.html" vars: item: - "{{ matiere }}" - name: Enable userdir shell: /usr/sbin/a2enmod userdir notify: Reload Apache