- job-template:
    name: '{name}-infra-docs'
    node: ubuntu-xenial

    builders:
        - print-template-name:
            template-name: "{template-name}"
        - zuul-git-prep
        - install-distro-packages
        - revoke-sudo
        - docs

    publishers:
        - afs:
            site: 'afs-docs'
            source: 'doc/build/html/**'
            target: 'infra/{doc-publisher-folder}'
            remove-prefix: 'doc/build/html'
        - console-log

- job-template:
    name: '{name}-infra-docs-tags-only'
    description: Publish infra documents, use when only publish on tag
    node: ubuntu-xenial

    builders:
        - print-template-name:
            template-name: "{template-name}"
        - zuul-git-prep
        - install-distro-packages
        - revoke-sudo
        - docs-tags-only-env:
            env: venv

    publishers:
        - afs:
            site: 'afs-docs'
            source: 'doc/build/html/**'
            target: 'infra/{doc-publisher-folder}'
            remove-prefix: 'doc/build/html'
        - console-log

- job:
    name: publish-infra-docs-index
    description: Render and publish the infra docs index.
    node: ubuntu-xenial

    builders:
      - zuul-git-prep
      - install-distro-packages
      - revoke-sudo
      - run-tox:
          envlist: infra-docs
      - add-docs-root-marker:
          docsrootdir: docs-site/output/

    publishers:
      - afs:
          site: 'afs-docs'
          source: 'docs-site/output/**'
          target: 'infra/'
          remove-prefix: 'docs-site/output/'
      - console-log

- job:
    name: gate-infra-docs-index
    description: Render the infra docs index without publishing it.
    node: ubuntu-xenial

    builders:
      - zuul-git-prep
      - install-distro-packages
      - revoke-sudo
      - run-tox:
          envlist: infra-docs

    publishers:
      - console-log

- job-group:
    name: infra-publish-jobs
    jobs:
        - '{name}-infra-docs'
        - '{name}-infra-docs-tags-only'