@@ -1,41 +1,40 @@ | |||
apache | |||
====== | |||
DEPENDENCIES: | |||
These salt-states are required: | |||
1) apt | |||
Formulas to set up and configure the Apache HTTP server | |||
POSSIBLE DEPENDENCIES | |||
These salt-states may be required depending on what your doing: | |||
.. note:: | |||
1) php | |||
See the full `Salt Formulas installation and usage instructions | |||
<http://docs.saltstack.com/topics/conventions/formulas.html>`_. | |||
ORDERING: | |||
Available states | |||
---------------- | |||
The ordering of the states for apache falls into block ranges which are: | |||
``apache`` | |||
Installs the Apache package and starts the service. | |||
``apache.debian_full`` | |||
Installs and configures Apache on Debian and Ubuntu systems. | |||
1) apache will use 1-500 for ordering | |||
2) apache will reserve 1 -100 as unused | |||
3) apache will reserve 101-150 for pre pkg install | |||
4) apache will reserve 151-200 for pkg install | |||
5) apache will reserve 201-250 for pkg configure | |||
6) apache will reserve 251-300 for downloads, git stuff, load data | |||
7) apache will reserve 301-400 for unknown purposes | |||
8) apache will reserve 401-450 for service restart-reloads | |||
9) apache WILL reserve 451-460 for service.running | |||
10) apache will reserve 461-500 for cmd requiring operational services | |||
These states are ordered using the ``order`` declaration. Different stages | |||
are divided into the following number ranges: | |||
PILLARS: | |||
1) apache will use 1-500 for ordering | |||
2) apache will reserve 1 -100 as unused | |||
3) apache will reserve 101-150 for pre pkg install | |||
4) apache will reserve 151-200 for pkg install | |||
5) apache will reserve 201-250 for pkg configure | |||
6) apache will reserve 251-300 for downloads, git stuff, load data | |||
7) apache will reserve 301-400 for unknown purposes | |||
8) apache will reserve 401-450 for service restart-reloads | |||
9) apache WILL reserve 451-460 for service.running | |||
10) apache will reserve 461-500 for cmd requiring operational services | |||
1) No pillar data is required | |||
2) Full pillar structure: | |||
Dependencies: | |||
apache: | |||
php-ini: 'salt://path/to/file/php.ini' | |||
register-site: | |||
{{UNQIUE}}: | |||
name: 'my name' | |||
path: 'salt://path/to/sites-available/conf/file' | |||
state: 'enabled' | |||
* `apt <https://github.com/saltstack-formulas/apt-formula>`_ | |||
Optional dependencies: | |||
1) `php <https://github.com/saltstack-formulas/php-formula>`_ | |||
3) UNIQUE can be any name as an array index, and you can duplicate this section |
@@ -0,0 +1,46 @@ | |||
{% if grains['os_family']=="Debian" %} | |||
include: | |||
- apt | |||
- apache | |||
- apache.register_site | |||
extend: | |||
apache: | |||
pkg: | |||
- order: 175 | |||
service: | |||
- order: 455 | |||
a2dissite 000-default: | |||
cmd.run: | |||
- order: 225 | |||
- onlyif: ls /etc/apache2/sites-enabled/000-default | |||
- watch_in: | |||
- cmd: apache-reload | |||
- require: | |||
- pkg: apache | |||
apache-reload: | |||
cmd.wait: | |||
- name: service apache2 reload | |||
- order: 420 | |||
apache-restart: | |||
cmd.wait: | |||
- name: service apache2 restart | |||
- order: 425 | |||
/etc/apache2/sites-available/default: | |||
file.absent: | |||
- order: 230 | |||
- require: | |||
- pkg: apache | |||
/etc/apache2/sites-available/default-ssl: | |||
file.absent: | |||
- order: 230 | |||
- require: | |||
- pkg: apache | |||
{% endif %} #END: os = debian |
@@ -1,8 +1,8 @@ | |||
{% if grains['os_family']=="Debian" %} | |||
include: | |||
- apt | |||
{% if grains['os']=="Ubuntu" %} | |||
mod-fcgid: | |||
pkg.installed: | |||
- name: libapache2-mod-fcgid |
@@ -1,47 +1,13 @@ | |||
include: | |||
- apt | |||
- apache.register_site | |||
{% if grains['os']=="Ubuntu" %} | |||
{% set pkg = salt['grains.filter_by']({ | |||
'Debian': {'name': 'apache2'}, | |||
'RedHat': {'name': 'httpd'}, | |||
}) %} | |||
apache: | |||
pkg.installed: | |||
- name: apache2 | |||
- order: 175 | |||
service.running: | |||
- name: apache2 | |||
pkg: | |||
- installed | |||
- name: {{ pkg.name }} | |||
service: | |||
- running | |||
- name: {{ pkg.name }} | |||
- enable: True | |||
- order: 455 | |||
a2dissite 000-default: | |||
cmd.run: | |||
- order: 225 | |||
- onlyif: ls /etc/apache2/sites-enabled/000-default | |||
- watch_in: | |||
- cmd: apache-reload | |||
- require: | |||
- pkg: apache | |||
apache-reload: | |||
cmd.wait: | |||
- name: service apache2 reload | |||
- order: 420 | |||
apache-restart: | |||
cmd.wait: | |||
- name: service apache2 restart | |||
- order: 425 | |||
/etc/apache2/sites-available/default: | |||
file.absent: | |||
- order: 230 | |||
- require: | |||
- pkg: apache | |||
/etc/apache2/sites-available/default-ssl: | |||
file.absent: | |||
- order: 230 | |||
- require: | |||
- pkg: apache | |||
{% endif %} #END: os = ubuntu |
@@ -1,8 +1,8 @@ | |||
{% if grains['os_family']=="Debian" %} | |||
include: | |||
- apt | |||
{% if grains['os']=="Ubuntu" %} | |||
mod-php5: | |||
pkg.installed: | |||
- name: libapache2-mod-php5 |
@@ -1,3 +1,5 @@ | |||
{% if grains['os_family']=="Debian" %} | |||
{% if 'apache' in pillar and 'register-site' in pillar['apache'] %} #BEGIN: ['apache']['register-site'] | |||
{% for site in pillar['apache']['register-site'] %} | |||
@@ -44,3 +46,4 @@ a2dissite {{ pillar['apache']['register-site'][site]['name'] }}: | |||
{% endfor %} | |||
{% endif %} #END: apache-register-site | |||
{% endif %} #END: grains['os_family'] == debian |
@@ -1,8 +1,8 @@ | |||
{% if grains['os_family']=="Debian" %} | |||
include: | |||
- apt | |||
{% if grains['os']=="Ubuntu" %} | |||
a2enmod rewrite: | |||
cmd.run: | |||
- unless: ls /etc/apache2/mods-enabled/rewrite.load |
@@ -0,0 +1,10 @@ | |||
# Example for the apache.debian_full formula: | |||
apache: | |||
php-ini: 'salt://path/to/file/php.ini' | |||
register-site: | |||
# any name as an array index, and you can duplicate this section | |||
{{UNQIUE}}: | |||
name: 'my name' | |||
path: 'salt://path/to/sites-available/conf/file' | |||
state: 'enabled' |