diff --git a/roles/php_website/tasks/main.yml b/roles/php_website/tasks/main.yml new file mode 100644 index 0000000000000000000000000000000000000000..6c2ab307365e5da5b25a6a4b5aa9a145d48d3772 --- /dev/null +++ b/roles/php_website/tasks/main.yml @@ -0,0 +1,45 @@ +--- + +- set_fact: + user: "web-{{ fqdn | replace('.', '_') }}" + home: "/var/www/{{ fqdn }}" + +- name: Create PHP website group + group: name="{{ user }}" gid="{{ uid }}" state=present + +- name: Create home directory for the user (avoid populating with skeleton) + file: path="{{ home }}" state=directory + owner="{{ admin }}" group="{{ user }}" mode=2750 + +- name: Create PHP website user + user: name="{{ user }}" uid="{{ uid }}" group="{{ user }}" + system=yes createhome=no state=present + +- name: Add nginx user to site group + user: name="www-data" groups="{{ user }}" append="yes" + notify: + - Restart nginx + +- name: Add admin to site group + user: name="{{ admin }}" groups="{{ user }}" append="yes" + +- name: Install extra packages for site + apt: name="{{ item }}" state=installed + with_items: packages + +- name: Deploy PHP FPM configuration file for site + template: src="fpm_site.conf.j2" dest="/etc/php5/fpm/pool.d/{{ fqdn }}.conf" validate="php5-fpm -t -y %s" + notify: + - Restart php5-fpm + +- name: Deploy nginx configuration file for site + template: src="nginx_site.j2" dest="/etc/nginx/sites-available/{{ fqdn }}" + owner=root group=root mode=640 + notify: + - Restart nginx + +- name: Enable site + file: src="/etc/nginx/sites-available/{{ fqdn }}" dest="/etc/nginx/sites-enabled/{{ fqdn }}" + state=link + notify: + - Restart nginx