Filip Pytloun | 410abc4 | 2015-10-06 16:28:31 +0200 | [diff] [blame] | 1 | |
| 2 | {% set server = salt['grains.filter_by']({ |
| 3 | 'Debian': { |
| 4 | 'pkgs': ['apache2'], |
| 5 | 'service': 'apache2', |
| 6 | 'mod_wsgi': 'libapache2-mod-wsgi', |
| 7 | 'mod_php': 'libapache2-mod-php5', |
Martin819 | 828f49a | 2017-03-14 11:13:28 +0100 | [diff] [blame] | 8 | 'mod_perl': 'libapache2-mod-perl2', |
| 9 | 'mod_xsendfile': 'libapache2-mod-xsendfile', |
| 10 | 'mod_auth_kerb': 'libapache2-mod-auth-kerb', |
Filip Pytloun | 590b579 | 2016-01-27 11:24:29 +0100 | [diff] [blame] | 11 | 'htpasswd_dir': '/etc/apache2', |
Filip Pytloun | 410abc4 | 2015-10-06 16:28:31 +0200 | [diff] [blame] | 12 | 'vhost_dir': '/etc/apache2/sites-available', |
Filip Pytloun | affb18d | 2016-02-22 13:58:27 +0100 | [diff] [blame] | 13 | 'conf_dir': '/etc/apache2/conf-available', |
Filip Pytloun | 410abc4 | 2015-10-06 16:28:31 +0200 | [diff] [blame] | 14 | 'conf_ext': '.conf', |
| 15 | 'log_dir': '/var/log/apache2', |
Filip Pytloun | c0d263b | 2016-04-06 11:19:34 +0200 | [diff] [blame] | 16 | 'www_dir': '/var/www', |
Filip Pytloun | 5e9662e | 2016-02-04 11:14:41 +0100 | [diff] [blame] | 17 | 'service_user': 'www-data', |
| 18 | 'service_group': 'www-data', |
sgarbuz | 950c64d | 2018-04-26 12:14:38 +0300 | [diff] [blame] | 19 | 'logrotate': { |
| 20 | 'start_period': '1', |
| 21 | 'end_period': '3600', |
| 22 | }, |
Filip Pytloun | 410abc4 | 2015-10-06 16:28:31 +0200 | [diff] [blame] | 23 | }, |
| 24 | 'Arch': { |
| 25 | 'pkgs': ['apache'], |
| 26 | 'service': 'httpd', |
| 27 | 'mod_wsgi': 'wsgi-apache', |
| 28 | 'mod_php': 'php-apache', |
| 29 | 'vhost_dir': '/etc/httpd/conf/extra', |
Filip Pytloun | 590b579 | 2016-01-27 11:24:29 +0100 | [diff] [blame] | 30 | 'htpasswd_dir': '/etc/httpd', |
Filip Pytloun | 410abc4 | 2015-10-06 16:28:31 +0200 | [diff] [blame] | 31 | 'conf_dir': '/etc/httpd/conf', |
| 32 | 'conf_ext': '.conf', |
| 33 | 'log_dir': '/var/log/httpd', |
Filip Pytloun | c0d263b | 2016-04-06 11:19:34 +0200 | [diff] [blame] | 34 | 'www_dir': '/var/www', |
Filip Pytloun | 5e9662e | 2016-02-04 11:14:41 +0100 | [diff] [blame] | 35 | 'service_user': 'apache', |
| 36 | 'service_group': 'apache', |
Filip Pytloun | 410abc4 | 2015-10-06 16:28:31 +0200 | [diff] [blame] | 37 | }, |
| 38 | 'RedHat': { |
| 39 | 'pkgs': ['httpd'], |
| 40 | 'service': 'httpd', |
| 41 | 'mod_wsgi': 'mod_wsgi', |
| 42 | 'vhost_dir': '/etc/httpd/conf.d', |
Filip Pytloun | 590b579 | 2016-01-27 11:24:29 +0100 | [diff] [blame] | 43 | 'htpasswd_dir': '/etc/httpd', |
Filip Pytloun | 410abc4 | 2015-10-06 16:28:31 +0200 | [diff] [blame] | 44 | 'conf_dir': '/etc/httpd/conf.d', |
| 45 | 'conf_ext': '.conf', |
| 46 | 'log_dir': '/var/log/httpd', |
| 47 | 'www_dir': '/var/www', |
Filip Pytloun | 5e9662e | 2016-02-04 11:14:41 +0100 | [diff] [blame] | 48 | 'service_user': 'apache', |
| 49 | 'service_group': 'apache', |
Filip Pytloun | 410abc4 | 2015-10-06 16:28:31 +0200 | [diff] [blame] | 50 | }, |
| 51 | 'FreeBSD': { |
| 52 | 'pkgs': ['apache22'], |
| 53 | 'service': 'apache22', |
| 54 | 'mod_wsgi': 'ap22-mod_wsgi3', |
| 55 | 'vhost_dir': '/usr/local/etc/apache22/Includes', |
Filip Pytloun | 590b579 | 2016-01-27 11:24:29 +0100 | [diff] [blame] | 56 | 'htpasswd_dir': '/usr/local/etc/apache22', |
Filip Pytloun | 410abc4 | 2015-10-06 16:28:31 +0200 | [diff] [blame] | 57 | 'conf_dir': '/usr/local/etc/apache22/Includes', |
| 58 | 'conf_ext': '', |
| 59 | 'log_dir': '/var/log/', |
| 60 | 'www_dir': '/usr/local/www/apache22/', |
Filip Pytloun | 5e9662e | 2016-02-04 11:14:41 +0100 | [diff] [blame] | 61 | 'service_user': 'apache', |
| 62 | 'service_group': 'apache', |
Filip Pytloun | 410abc4 | 2015-10-06 16:28:31 +0200 | [diff] [blame] | 63 | }, |
Martin819 | 828f49a | 2017-03-14 11:13:28 +0100 | [diff] [blame] | 64 | }, merge=salt['grains.filter_by']({ |
| 65 | 'trusty': { |
| 66 | 'pkgs': ['apache2', 'apache2-utils'], |
| 67 | 'service': 'apache2', |
| 68 | 'mod_wsgi': 'libapache2-mod-wsgi', |
| 69 | 'mod_php': 'libapache2-mod-php5', |
| 70 | 'module_php': 'php5', |
| 71 | 'mod_perl': 'libapache2-mod-perl2', |
| 72 | 'mod_xsendfile': 'libapache2-mod-xsendfile', |
| 73 | 'mod_auth_kerb': 'libapache2-mod-auth-kerb', |
| 74 | 'htpasswd_dir': '/etc/apache2', |
| 75 | 'vhost_dir': '/etc/apache2/sites-available', |
| 76 | 'conf_dir': '/etc/apache2/conf-available', |
| 77 | 'conf_ext': '.conf', |
| 78 | 'log_dir': '/var/log/apache2', |
| 79 | 'www_dir': '/var/www', |
| 80 | 'service_user': 'www-data', |
| 81 | 'service_group': 'www-data', |
sgarbuz | 950c64d | 2018-04-26 12:14:38 +0300 | [diff] [blame] | 82 | 'logrotate': { |
| 83 | 'start_period': '1', |
| 84 | 'end_period': '3600', |
| 85 | }, |
Martin819 | 828f49a | 2017-03-14 11:13:28 +0100 | [diff] [blame] | 86 | }, |
| 87 | 'xenial': { |
| 88 | 'pkgs': ['apache2'], |
| 89 | 'service': 'apache2', |
| 90 | 'mod_wsgi': 'libapache2-mod-wsgi', |
| 91 | 'mod_php': 'libapache2-mod-php7.0', |
| 92 | 'module_php': 'php7.0', |
| 93 | 'mod_perl': 'libapache2-mod-perl2', |
| 94 | 'mod_xsendfile': 'libapache2-mod-xsendfile', |
| 95 | 'mod_auth_kerb': 'libapache2-mod-auth-kerb', |
| 96 | 'htpasswd_dir': '/etc/apache2', |
| 97 | 'vhost_dir': '/etc/apache2/sites-available', |
| 98 | 'conf_dir': '/etc/apache2/conf-available', |
| 99 | 'conf_ext': '.conf', |
| 100 | 'log_dir': '/var/log/apache2', |
| 101 | 'www_dir': '/var/www', |
| 102 | 'service_user': 'www-data', |
| 103 | 'service_group': 'www-data', |
sgarbuz | 950c64d | 2018-04-26 12:14:38 +0300 | [diff] [blame] | 104 | 'logrotate': { |
| 105 | 'start_period': '1', |
| 106 | 'end_period': '3600', |
| 107 | }, |
Martin819 | 828f49a | 2017-03-14 11:13:28 +0100 | [diff] [blame] | 108 | }, |
| 109 | }, grain='oscodename', merge=salt['pillar.get']('apache:server'))) %} |
Filip Pytloun | 7cf8996 | 2016-01-28 17:12:27 +0100 | [diff] [blame] | 110 | |
| 111 | {%- set listen_ports = {} %} |
| 112 | {%- if server.site is defined %} |
| 113 | {%- for site_name, site in server.site.iteritems() %} |
Vasyl Saienko | f4d65a6 | 2018-02-06 17:35:51 +0200 | [diff] [blame] | 114 | {# TODO: move away from managing listen in ports.conf, instead add this directive #} |
| 115 | {# to specific service config. Currently it conflits with horizon formula, that manage #} |
| 116 | {# port.conf by theirown, it leads to races when applying horizon/apache states. #} |
Oleksii Grudev | 260d872 | 2018-04-11 17:20:00 +0300 | [diff] [blame] | 117 | {%- if site.get('type', '') not in ['wsgi', 'proxy', 'static'] %} |
Filip Pytloun | 7cf8996 | 2016-01-28 17:12:27 +0100 | [diff] [blame] | 118 | {%- if site.host.get('port', 80) %} |
Vasyl Saienko | f4d65a6 | 2018-02-06 17:35:51 +0200 | [diff] [blame] | 119 | {%- do listen_ports.update({site.host.get('port', 80): None}) %} |
| 120 | {%- endif %} |
Filip Pytloun | 7cf8996 | 2016-01-28 17:12:27 +0100 | [diff] [blame] | 121 | {%- endif %} |
| 122 | |
| 123 | {%- endfor %} |
| 124 | {%- endif %} |