Ales Komarek | 75cdb6f | 2013-12-12 14:48:22 +0100 | [diff] [blame] | 1 | {%- if pillar.sphinx.server.enabled %} |
| 2 | |
| 3 | sphinx_packages: |
| 4 | pkg.installed: |
| 5 | - names: |
| 6 | - python-sphinx |
| 7 | |
| 8 | /srv/sphinx/sites: |
Ales Komarek | 30eecea | 2014-09-07 14:52:36 +0200 | [diff] [blame] | 9 | file.directory: |
Ales Komarek | 75cdb6f | 2013-12-12 14:48:22 +0100 | [diff] [blame] | 10 | - mode: 755 |
| 11 | - makedirs: true |
| 12 | |
Ales Komarek | 30eecea | 2014-09-07 14:52:36 +0200 | [diff] [blame] | 13 | /srv/sphinx/extern: |
| 14 | file.directory: |
| 15 | - mode: 755 |
| 16 | - makedirs: true |
Ales Komarek | 75cdb6f | 2013-12-12 14:48:22 +0100 | [diff] [blame] | 17 | |
Ales Komarek | 30eecea | 2014-09-07 14:52:36 +0200 | [diff] [blame] | 18 | {%- for doc_name, doc in server.doc.iteritems() %} |
| 19 | |
| 20 | /srv/sphinx/sites/{{ doc_name }}: |
| 21 | file.directory: |
Ales Komarek | 75cdb6f | 2013-12-12 14:48:22 +0100 | [diff] [blame] | 22 | - mode: 755 |
| 23 | - makedirs: true |
| 24 | - require: |
| 25 | - file: /srv/sphinx/sites |
| 26 | |
Ales Komarek | 30eecea | 2014-09-07 14:52:36 +0200 | [diff] [blame] | 27 | {%- if doc.source.engine == 'git' %} |
| 28 | |
| 29 | sphinx_source_{{ doc_name }}: |
| 30 | {{ doc.source.engine }}.latest: |
| 31 | - name: {{ doc.source.address }} |
| 32 | - target: /srv/sphinx/extern/{{ doc_name }} |
| 33 | - rev: {{ plugin.source.revision }} |
Ales Komarek | 75cdb6f | 2013-12-12 14:48:22 +0100 | [diff] [blame] | 34 | - require: |
Ales Komarek | 30eecea | 2014-09-07 14:52:36 +0200 | [diff] [blame] | 35 | - file: /srv/sphinx/extern |
| 36 | - require_in: |
| 37 | - cmd: generate_sphinx_doc_{{ doc_name }} |
| 38 | |
| 39 | generate_sphinx_doc_{{ doc_name }}: |
| 40 | cmd.run: |
| 41 | - name: sphinx-build -b {{ doc.builder }} /srv/sphinx/extern/{{ doc_name }} /srv/sphinx/sites/{{ doc_name }} |
| 42 | - require: |
| 43 | - git: sphinx_source_{{ doc_name }} |
| 44 | - file: /srv/sphinx/sites/{{ doc_name }} |
| 45 | |
| 46 | {%- endif -%} |
| 47 | |
| 48 | {%- if doc.source.engine == 'local' %} |
| 49 | |
| 50 | generate_sphinx_doc_{{ doc_name }}: |
| 51 | cmd.run: |
| 52 | - name: sphinx-build -b {{ doc.builder }} {{ doc.source.path }} /srv/sphinx/sites/{{ doc_name }} |
| 53 | - require: |
| 54 | - file: /srv/sphinx/sites/{{ doc_name }} |
| 55 | |
| 56 | {%- endif %} |
Ales Komarek | 75cdb6f | 2013-12-12 14:48:22 +0100 | [diff] [blame] | 57 | |
| 58 | {%- endfor %} |
| 59 | |
| 60 | {%- endif %} |