---
driver:
  name: docker
  hostname: {{ cookiecutter.kitchen_formula }}.ci.local
  #socket: tcp://127.0.0.1:2376
  use_sudo: false

provisioner:
  name: salt_solo
  salt_install: bootstrap
  salt_bootstrap_url: https://bootstrap.saltstack.com
  salt_version: latest
  require_chef: false
  formula: {{ cookiecutter.kitchen_formula }}
  log_level: info
  state_top:
    base:
      "*":
        - {{ cookiecutter.kitchen_formula }}
  pillars:
    top.sls:
      base:
        "*":
          - {{ cookiecutter.kitchen_formula }}
  grains:
    noservices: {{ 'True' if cookiecutter.kitchen_driver =='docker' else 'False' }}

{%- if cookiecutter.kitchen_driver =='docker' %}

platforms:
  - name: xenial-stable
    driver_config:
      image: docker-dev-local.docker.mirantis.net/epcim/salt/saltstack-ubuntu-xenial-salt-stable/salt:2018_11_19
      platform: ubuntu

  - name: xenial-2017.7
    driver_config:
      image: docker-dev-local.docker.mirantis.net/epcim/salt/saltstack-ubuntu-xenial-salt-2017.7/salt:2018_11_19
      platform: ubuntu

verifier:
  name: {{ cookiecutter.kitchen_verifier }}
  sudo: true

suites:
  {%- if cookiecutter.kitchen_suites == "" %}
  - name: {{ cookiecutter.role_name }}-single
    provisioner:
      pillars-from-files:
        {{ cookiecutter.kitchen_formula }}.sls: tests/pillar/{{ cookiecutter.role_name }}_single.sls
  {%- else %}
  {%- for suite in cookiecutter.kitchen_suites.split() %}

  - name: {{ suite }}
    provisioner:
      pillars-from-files:
        {{ cookiecutter.kitchen_formula }}.sls: tests/pillar/{{ suite }}.sls
  {%- endfor %}
  {%- endif %}

{%- endif %}

# vim: ft=yaml sw=2 ts=2 sts=2 tw=125
