Skip to content

Jorge-Rodriguez/apache-formula

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 

Repository files navigation

apache

Formulas to set up and configure the Apache HTTP server.

Available states

Installs the Apache package and starts the service.

Installs the mod_wsgi package and enables the Apache module.

Configures Apache name-based virtual hosts using data from Pillar.

Example Pillar:

apache:
  sites:
    # Default values below are used unless disabled by setting to 'None'.
    example.com: # must be unique; used as an ID declaration in Salt; also passed to the template context as {{ id }}
      template_file: salt://apache/vhosts/standard.tmpl
      template_engine: jinja

      interface: '*'
      port: '80'

      ServerName: {{ id }} # uses the unique ID above unless specified
      ServerAlias: www.{{ id }}

      ServerAdmin: webmaster@{{ id }}

      LogLevel: warn
      ErrorLog: {{ logdir }}/{{ id }}-error.log # E.g.: /var/log/apache2/example.com-error.log
      CustomLog: {{ logdir }}/{{ id }}-access.log # E.g.: /var/log/apache2/example.com-access.log

      DocumentRoot: {{ wwwdir }}/{{ id }} # E.g., /var/www/example.com

      Directory:
        {{ wwwdir }}/{{ id }}: # E.g.: /var/www/example.com:
          Options: -Indexes FollowSymLinks
          Order: allow,deny
          Allow: from all
          AllowOverride: All
          Formula_Append: |
            Additional config as a
            multi-line string here

      Formula_Append: |
        Additional config as a
        multi-line string here

    example.net:
      template_file: salt://apache/vhosts/minimal.tmpl

Installs and configures Apache on Debian and Ubuntu systems.

These states are ordered using the order declaration. Different stages are divided into the following number ranges:

  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

Dependencies:

Optional dependencies:

  1. php

Example Pillar:

apache:
  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'

Releases

No releases published

Packages

No packages published

Languages

  • Scheme 100.0%