Browse Source

Merge branch 'generic-apache'

master
Seth House 11 years ago
parent
commit
ee72d30b06
8 changed files with 103 additions and 79 deletions
  1. +28
    -29
      README.rst
  2. +46
    -0
      apache/debian_full.sls
  3. +2
    -2
      apache/fcgid.sls
  4. +10
    -44
      apache/init.sls
  5. +2
    -2
      apache/php5.sls
  6. +3
    -0
      apache/register_site.sls
  7. +2
    -2
      apache/rewrite.sls
  8. +10
    -0
      pillar.example

+ 28
- 29
README.rst View File

@@ -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

+ 46
- 0
apache/debian_full.sls View File

@@ -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

+ 2
- 2
apache/fcgid.sls View File

@@ -1,8 +1,8 @@
{% if grains['os_family']=="Debian" %}

include:
- apt

{% if grains['os']=="Ubuntu" %}

mod-fcgid:
pkg.installed:
- name: libapache2-mod-fcgid

+ 10
- 44
apache/init.sls View File

@@ -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

+ 2
- 2
apache/php5.sls View File

@@ -1,8 +1,8 @@
{% if grains['os_family']=="Debian" %}

include:
- apt

{% if grains['os']=="Ubuntu" %}

mod-php5:
pkg.installed:
- name: libapache2-mod-php5

+ 3
- 0
apache/register_site.sls View File

@@ -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

+ 2
- 2
apache/rewrite.sls View File

@@ -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

+ 10
- 0
pillar.example View File

@@ -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'

Loading…
Cancel
Save