diff --git a/pillar/webserver-legacy/sites.sls b/pillar/webserver-legacy/sites.sls --- a/pillar/webserver-legacy/sites.sls +++ b/pillar/webserver-legacy/sites.sls @@ -39,6 +39,19 @@ - trustspace # ------------------------------------------------------------- +# PHP sites +# +# Username must be unique and use max 31 characters. +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +web_php_sites: + www.dereckson.be: + user: web-be-dereckson-www + source: wwwroot/dereckson.be/www + target: /var/wwwroot/dereckson.be/www + autochmod: True + +# ------------------------------------------------------------- # Tweaks # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/roles/webserver-legacy/be/dereckson/init.sls b/roles/webserver-legacy/be/dereckson/init.sls --- a/roles/webserver-legacy/be/dereckson/init.sls +++ b/roles/webserver-legacy/be/dereckson/init.sls @@ -7,3 +7,4 @@ include: - .assets + - .www diff --git a/roles/webserver-legacy/directories.sls b/roles/webserver-legacy/directories.sls --- a/roles/webserver-legacy/directories.sls +++ b/roles/webserver-legacy/directories.sls @@ -22,3 +22,8 @@ - dir_mode: 711 {% endfor %} {% endfor %} + +/var/run/web: + file.directory: + - group: web + - dir_mode: 711 diff --git a/roles/webserver-legacy/init.sls b/roles/webserver-legacy/init.sls --- a/roles/webserver-legacy/init.sls +++ b/roles/webserver-legacy/init.sls @@ -12,6 +12,7 @@ - .directories - .zr - .static-sites + - .php-sites - .tweaks - .be/dereckson - .org/nasqueron diff --git a/roles/webserver-legacy/php-sites/account.sls b/roles/webserver-legacy/php-sites/account.sls new file mode 100644 --- /dev/null +++ b/roles/webserver-legacy/php-sites/account.sls @@ -0,0 +1,22 @@ +# ------------------------------------------------------------- +# Salt — Provision PHP websites +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +# Project: Nasqueron +# License: Trivial work, not eligible to copyright +# ------------------------------------------------------------- + +# ------------------------------------------------------------- +# Sites user accounts +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +{% for domain, site in pillar['web_php_sites'].iteritems() %} + +web_account_{{ site['user'] }}: + user.present: + - name: {{ site['user' ]}} + - fullname: {{ domain }} + - gid: web + - system: True + - home: /var/run/web/{{ domain }} + +{% endfor %} diff --git a/roles/webserver-legacy/php-sites/files.sls b/roles/webserver-legacy/php-sites/files.sls new file mode 100644 --- /dev/null +++ b/roles/webserver-legacy/php-sites/files.sls @@ -0,0 +1,24 @@ +# ------------------------------------------------------------- +# Salt — Provision PHP websites +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +# Project: Nasqueron +# License: Trivial work, not eligible to copyright +# ------------------------------------------------------------- + +# ------------------------------------------------------------- +# Sites content +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +{% for domain, site in pillar['web_php_sites'].iteritems() %} + +{{ site['target'] }}: + file.recurse: + - source: salt://{{ site['source'] }} + - exclude_pat: E@.git + - include_empty: True + - dir_mode: 711 + - file_mode: keep + - user: {{ site['user'] }} + - group: web + +{% endfor %} diff --git a/roles/webserver-legacy/be/dereckson/init.sls b/roles/webserver-legacy/php-sites/init.sls copy from roles/webserver-legacy/be/dereckson/init.sls copy to roles/webserver-legacy/php-sites/init.sls --- a/roles/webserver-legacy/be/dereckson/init.sls +++ b/roles/webserver-legacy/php-sites/init.sls @@ -1,9 +1,10 @@ # ------------------------------------------------------------- -# Salt — Provision *.dereckson.be sites +# Salt — Provision PHP websites # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -# Project: DcK Area +# Project: Nasqueron # License: Trivial work, not eligible to copyright # ------------------------------------------------------------- include: - - .assets + - .account + - .files