Skip to content

Instantly share code, notes, and snippets.

@eliasp

eliasp/error Secret

Last active August 29, 2015 14:19
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save eliasp/022de464b17b322a5ab7 to your computer and use it in GitHub Desktop.
Save eliasp/022de464b17b322a5ab7 to your computer and use it in GitHub Desktop.
local:
Data failed to compile:
----------
Cannot extend ID 'otrs.webserver.config.apache2_httpd' in 'base:otrs.webserver.config'. It is not part of the high state.
This is likely due to a missing include statement or an incorrectly typed ID.
Ensure that a state with an ID of 'otrs.webserver.config.apache2_httpd' is available
in environment 'base' and to SLS 'otrs.webserver.config'
{% from "otrs/map.jinja" import otrs with context %}
{% set webserver_type = otrs.web.server.get('server_type', false) %}
{% if webserver_type is defined and webserver_type %}
{% set webserver_data = otrs.web.server.get(webserver_type, false) %}
{% if webserver_data is defined and webserver_data and webserver_data.formula is defined %}
{% set webserver_formula = webserver_data.formula %}
{% endif %}
{% else %}
no-webserver-type:
test.configurable_test_state:
- name: "No webserver type provided"
- changes: false
- result: false
- comment: |
To configure OTRS' web interface, the used webserver type needs
to be provided through the pillar:
>> 'otrs:lookup:web:server_type'
See the available SLS in 'otrs/webserver/config/' for out-of-the-box
supported webserver types.
{% endif %}
include:
- otrs.packages
{% if webserver_type is defined and webserver_type %}
- otrs.webserver.config.{{ webserver_type }}
{% if webserver_formula is defined and webserver_formula %}
- {{ webserver_formula }}
{% endif %}
# install additional packages required to run OTRS (e.g. mod_perl)
# not covered by the webserver formula
{% if webserver_data.otrs_dependencies is defined and webserver_data.otrs_dependencies %}
otrs-webserver-packages:
pkg.installed:
- pkgs: {{ webserver_data.otrs_dependencies|yaml }}
- require_in:
- sls: {{ webserver_formula }}
- sls: otrs.webserver.config.{{ webserver_type }}
{% endif %}
{% if webserver_formula is not defined or not webserver_formula %}
no-webserver-formula:
test.configurable_test_state:
- name: "No webserver formula provided"
- changes: false
- result: false
- comment: |
To configure OTRS' web interface, the name of a webserver formula
needs to be provided through the pillar:
'otrs:lookup:web:{{ webserver_type }}:formula'
Otherwise, OTRS will most likely be unusable!
{% endif %}
{% endif %}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment