# this job template requires a bootstrap.sh script (which installs chefdk and other dependencies)
# and a Rakefile with the tests that should be executed in the cookbook
- job-template:
    name: 'gate-{name}-chef-rake'
    node: ubuntu-xenial

    wrappers:
      - build-timeout:
          timeout: 60
      - timestamps

    builders:
      - print-template-name:
          template-name: '{template-name}'
      - zuul-git-prep
      - install-distro-packages
      - chef-bootstrap
      - revoke-sudo
      - chef-rake-test

    publishers:
      - console-log

# this job template requires a bootstrap.sh script (which installs chefdk and other dependencies)
# and a Rakefile with the integration tests that should be executed
# sudo privileges for jenkins are not revoked, since they are needed during the chef run executed for integration testing
- job-template:
    name: gate-{name}-chef-rake-integration-{node}-nv
    node: '{node}'

    wrappers:
      - build-timeout:
          timeout: 60
      - timestamps

    builders:
      - print-template-name:
          template-name: '{template-name}'
      - zuul-git-prep
      - install-distro-packages
      - chef-bootstrap
      - chef-rake-integration

    publishers:
      - devstack-logs
      - console-log

- job-template:
    name: gate-{name}-chef-rake-integration-multinode-{node-release}-nv
    node: '{node}'

    wrappers:
      - build-timeout:
          timeout: 60
      - timestamps

    builders:
      - print-template-name:
          template-name: '{template-name}'
      - zuul-git-prep
      - install-distro-packages
      - chef-bootstrap-multinode
      - chef-rake-integration

    publishers:
      - devstack-logs
      - console-log

- job-group:
    name: chef-rake-jobs
    jobs:
      - gate-{name}-chef-rake
      - gate-{name}-chef-rake-integration-{node}-nv:
          node:
            - centos-7
            - ubuntu-xenial
      - 'gate-{name}-chef-rake-integration-multinode-{node-release}-nv':
          node-release: centos-7
          node: centos-7-2-node
      - 'gate-{name}-chef-rake-integration-multinode-{node-release}-nv':
          node-release: ubuntu-xenial
          node: ubuntu-xenial-2-node