Add kitchen tests + travis ci
- add dependencies, req. for CI (make test)
- spec. mysql version per platform
- keystone client to create endpoints
diff --git a/.kitchen.yml b/.kitchen.yml
new file mode 100644
index 0000000..29774f4
--- /dev/null
+++ b/.kitchen.yml
@@ -0,0 +1,96 @@
+---
+driver:
+ name: docker
+ hostname: keystone.ci.local
+ use_sudo: true
+
+provisioner:
+ name: salt_solo
+ salt_install: bootstrap
+ salt_bootstrap_url: https://bootstrap.saltstack.com
+ salt_version: latest
+ require_chef: false
+ log_level: info
+ formula: keystone
+ grains:
+ noservices: False
+ dependencies:
+ - name: linux
+ repo: git
+ source: https://github.com/salt-formulas/salt-formula-linux
+ - name: mysql
+ repo: git
+ source: https://github.com/salt-formulas/salt-formula-mysql
+ - name: apache
+ repo: git
+ source: https://github.com/salt-formulas/salt-formula-apache
+ - name: memcached
+ repo: git
+ source: https://github.com/salt-formulas/salt-formula-memcached
+ - name: cadf
+ repo: git
+ source: https://github.com/salt-formulas/salt-formula-cadf
+ - name: rabbitmq
+ repo: git
+ source: https://github.com/salt-formulas/salt-formula-rabbitmq
+ state_top:
+ base:
+ "*":
+ - linux
+ - mysql
+ - keystone
+ pillars:
+ top.sls:
+ base:
+ "*":
+ - linux_repo_openstack
+ - keystone
+ - mysql_platform_specific
+ mysql_platform_specific.sls: {}
+ pillars-from-files:
+ linux_repo_openstack.sls: tests/pillar/repo_mos9.sls
+
+verifier:
+ name: inspec
+ sudo: true
+
+platforms:
+ - name: <%=ENV['PLATFORM'] || 'ubuntu-xenial'%>
+ driver_config:
+ image: <%=ENV['PLATFORM'] || 'trevorj/salty-whales:xenial'%>
+ platform: ubuntu
+ provisioner:
+ pillars:
+ mysql_platform_specific.sls:
+ mysql:
+ server:
+ # workaround, formula not yet handle platform default version
+ version: "<%=ENV['MYSQL_VERSION'] || '5.7'%>"
+
+suites:
+
+ - name: single
+ provisioner:
+ pillars-from-files:
+ keystone.sls: tests/pillar/single.sls
+
+ - name: single_fernet
+ provisioner:
+ pillars-from-files:
+ keystone.sls: tests/pillar/single_fernet.sls
+
+ - name: under-apache
+ provisioner:
+ grains:
+ noservices: True
+ pillars-from-files:
+ keystone.sls: tests/pillar/apache_wsgi.sls
+ state_top:
+ base:
+ "*":
+ - linux
+ - mysql
+ - apache
+ - keystone
+
+# vim: ft=yaml sw=2 ts=2 sts=2 tw=125