diff --git a/pillar/webserver-legacy/sites.sls b/pillar/webserver-legacy/sites.sls index 60c48b6..9ac7f9a 100644 --- a/pillar/webserver-legacy/sites.sls +++ b/pillar/webserver-legacy/sites.sls @@ -1,46 +1,59 @@ # ------------------------------------------------------------- # Salt — Sites to provision on the legacy web server # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # Project: Nasqueron # License: Trivial work, not eligible to copyright # ------------------------------------------------------------- # ------------------------------------------------------------- # Domains we deploy # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - web_domains: # # Directly managed by Nasqueron # nasqueron: - nasqueron.org # # Nasqueron members # nasqueron_members: - dereckson.be # # Wolfplex # wolfplex: - wolfplex.be # ------------------------------------------------------------- # Static sites # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - web_static_sites: nasqueron.org: - www - assets - docker - ftp - 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 # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - web_autochmod: - /var/wwwroot/dereckson.be/www diff --git a/roles/webserver-legacy/be/dereckson/init.sls b/roles/webserver-legacy/be/dereckson/init.sls index ba4a3ab..82322bf 100644 --- a/roles/webserver-legacy/be/dereckson/init.sls +++ b/roles/webserver-legacy/be/dereckson/init.sls @@ -1,9 +1,10 @@ # ------------------------------------------------------------- # Salt — Provision *.dereckson.be sites # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # Project: DcK Area # License: Trivial work, not eligible to copyright # ------------------------------------------------------------- include: - .assets + - .www diff --git a/roles/webserver-legacy/directories.sls b/roles/webserver-legacy/directories.sls index e34c3cf..edc83c9 100644 --- a/roles/webserver-legacy/directories.sls +++ b/roles/webserver-legacy/directories.sls @@ -1,24 +1,29 @@ # ------------------------------------------------------------- # Salt — Sites to provision on the legacy web server # # Currently, this is deployed to ysul.nasqueron.org # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # Project: Nasqueron # License: Trivial work, not eligible to copyright # ------------------------------------------------------------- /var/wwwroot: file.directory: - group: web - dir_mode: 711 {% for domains_group in pillar['web_domains'] %} {% for domain in pillar['web_domains'][domains_group] %} webserver_directory_{{ domain }}: file.directory: - name: /var/wwwroot/{{ domain }} - user: {{ domain }} - group: web - 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 index 868daa1..ed8e9f5 100644 --- a/roles/webserver-legacy/init.sls +++ b/roles/webserver-legacy/init.sls @@ -1,17 +1,18 @@ # ------------------------------------------------------------- # Salt — Sites to provision on the legacy web server # # Currently, this is deployed to ysul.nasqueron.org # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # Project: Nasqueron # License: Trivial work, not eligible to copyright # ------------------------------------------------------------- include: - .account - .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 index 0000000..fb9d534 --- /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 index 0000000..11fba76 --- /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 similarity index 74% copy from roles/webserver-legacy/be/dereckson/init.sls copy to roles/webserver-legacy/php-sites/init.sls index ba4a3ab..1c08e83 100644 --- 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