blob: 74b1faa607fc8ab4b96bf65cbbde3a102f14421a [file] [log] [blame]
Ales Komarek698929e2014-09-07 15:05:58 +02001{%- set server = pillar.sphinx.server %}
2{%- if server.enabled %}
Ales Komarek75cdb6f2013-12-12 14:48:22 +01003
4sphinx_packages:
5 pkg.installed:
6 - names:
7 - python-sphinx
8
Ales Komarek66b04372014-09-07 15:00:07 +02009/srv/static/sites:
Ales Komarek30eecea2014-09-07 14:52:36 +020010 file.directory:
Ales Komarek75cdb6f2013-12-12 14:48:22 +010011 - mode: 755
12 - makedirs: true
13
Ales Komarek66b04372014-09-07 15:00:07 +020014/srv/static/extern:
Ales Komarek30eecea2014-09-07 14:52:36 +020015 file.directory:
16 - mode: 755
17 - makedirs: true
Ales Komarek75cdb6f2013-12-12 14:48:22 +010018
Ales Komarek30eecea2014-09-07 14:52:36 +020019{%- for doc_name, doc in server.doc.iteritems() %}
20
Ales Komarek66b04372014-09-07 15:00:07 +020021/srv/static/sites/{{ doc_name }}:
Ales Komarek30eecea2014-09-07 14:52:36 +020022 file.directory:
Ales Komarek75cdb6f2013-12-12 14:48:22 +010023 - mode: 755
24 - makedirs: true
25 - require:
Ales Komarek66b04372014-09-07 15:00:07 +020026 - file: /srv/static/sites
Ales Komarek75cdb6f2013-12-12 14:48:22 +010027
Ales Komarek30eecea2014-09-07 14:52:36 +020028{%- if doc.source.engine == 'git' %}
29
30sphinx_source_{{ doc_name }}:
31 {{ doc.source.engine }}.latest:
32 - name: {{ doc.source.address }}
Ales Komarek66b04372014-09-07 15:00:07 +020033 - target: /srv/static/extern/{{ doc_name }}
Ales Komarek30eecea2014-09-07 14:52:36 +020034 - rev: {{ plugin.source.revision }}
Ales Komarek75cdb6f2013-12-12 14:48:22 +010035 - require:
Ales Komarek66b04372014-09-07 15:00:07 +020036 - file: /srv/static/extern
Ales Komarek30eecea2014-09-07 14:52:36 +020037 - require_in:
38 - cmd: generate_sphinx_doc_{{ doc_name }}
39
40generate_sphinx_doc_{{ doc_name }}:
41 cmd.run:
Ales Komarek66b04372014-09-07 15:00:07 +020042 - name: sphinx-build -b {{ doc.builder }} /srv/static/extern/{{ doc_name }} /srv/static/sites/{{ doc_name }}
Ales Komarek30eecea2014-09-07 14:52:36 +020043 - require:
44 - git: sphinx_source_{{ doc_name }}
Ales Komarek66b04372014-09-07 15:00:07 +020045 - file: /srv/static/sites/{{ doc_name }}
Ales Komarek30eecea2014-09-07 14:52:36 +020046
47{%- endif -%}
48
49{%- if doc.source.engine == 'local' %}
50
51generate_sphinx_doc_{{ doc_name }}:
52 cmd.run:
Ales Komarek66b04372014-09-07 15:00:07 +020053 - name: sphinx-build -b {{ doc.builder }} {{ doc.source.path }} /srv/static/sites/{{ doc_name }}
Ales Komarek30eecea2014-09-07 14:52:36 +020054 - require:
Ales Komarek66b04372014-09-07 15:00:07 +020055 - file: /srv/static/sites/{{ doc_name }}
Ales Komarek30eecea2014-09-07 14:52:36 +020056
57{%- endif %}
Ales Komarek75cdb6f2013-12-12 14:48:22 +010058
59{%- endfor %}
60
61{%- endif %}