Browse Source

Updated testing suite

clean-build-dependencies
Ales Komarek 6 years ago
parent
commit
ca84f741e3
7 changed files with 174 additions and 0 deletions
  1. +5
    -0
      .gitignore
  2. +41
    -0
      .kitchen.openstack.yml
  3. +30
    -0
      .kitchen.vagrant.yml
  4. +46
    -0
      .kitchen.yml
  5. +46
    -0
      .travis.yml
  6. +3
    -0
      metadata.yml
  7. +3
    -0
      tests/pillar/single.sls

+ 5
- 0
.gitignore View File

*.swp *.swp
*.pyc *.pyc
.ropeproject .ropeproject
.kitchen
.bundle
.vendor
.kitchen/
.kitchen.local.yml

+ 41
- 0
.kitchen.openstack.yml View File


# usage: `KITCHEN_LOCAL_YAML=.kitchen.openstack.yml kitchen test`

# https://docs.chef.io/config_yml_kitchen.html
# https://github.com/test-kitchen/kitchen-openstack

---
driver:
name: openstack
openstack_auth_url: <%= ENV['OS_AUTH_URL'] %>/tokens
openstack_username: <%= ENV['OS_USERNAME'] || 'ci' %>
openstack_api_key: <%= ENV['OS_PASSWORD'] || 'ci' %>
openstack_tenant: <%= ENV['OS_TENANT_NAME'] || 'ci_jenkins' %>

#floating_ip_pool: <%= ENV['OS_FLOATING_IP_POOL'] || 'nova' %>
key_name: <%= ENV['BOOTSTRAP_SSH_KEY_NAME'] || 'bootstrap_insecure' %>
private_key_path: <%= ENV['BOOTSTRAP_SSH_KEY_PATH'] || "#{ENV['HOME']}/.ssh/id_rsa_bootstrap_insecure" %>


platforms:
- name: ubuntu-14.04
driver:
username: <%= ENV['OS_UBUNTU_IMAGE_USER'] || 'root' %>
image_ref: <%= ENV['OS_UBUNTU_IMAGE_REF'] || 'ubuntu-14-04-x64-1455869035' %>
flavor_ref: m1.medium
network_ref:
<% if ENV['OS_NETWORK_REF'] -%>
- <% ENV['OS_NETWORK_REF'] %>
<% else -%>
- ci-net
<% end -%>
# force update apt cache on the image
run_list:
- recipe[apt]
attributes:
apt:
compile_time_update: true
transport:
username: <%= ENV['OS_UBUNTU_IMAGE_USER'] || 'root' %>

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

+ 30
- 0
.kitchen.vagrant.yml View File

---
driver:
name: vagrant
vm_hostname: .ci.local
use_sudo: false
customize:
memory: 512


provisioner:
name: salt_solo
salt_install: bootstrap
salt_bootstrap_url: https://bootstrap.saltstack.com
salt_version: latest
require_chef: false
formula:
log_level: info
state_top:
base:
"*":
-
pillars:
top.sls:
base:
"*":
-
grains:
noservices: True

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

+ 46
- 0
.kitchen.yml View File

---
driver:
name: docker
hostname: home_assistant.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: home_assistant
log_level: info
state_top:
base:
"*":
- home_assistant
pillars:
top.sls:
base:
"*":
- home_assistant
grains:
noservices: True


platforms:
- name: <%=ENV['PLATFORM'] || 'ubuntu-xenial'%>
driver_config:
image: <%=ENV['PLATFORM'] || 'trevorj/salty-whales:xenial'%>
platform: ubuntu

verifier:
name: inspec
sudo: true

suites:
- name: single
provisioner:
pillars-from-files:
home_assistant.sls: tests/pillar/single.sls

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

+ 46
- 0
.travis.yml View File

sudo: required
services:
- docker

addons:
apt:
packages:
- apt-transport-https

install:
- pip install PyYAML
- pip install virtualenv
- |
test -e Gemfile || cat <<EOF > Gemfile
source 'https://rubygems.org'
gem 'rake'
gem 'test-kitchen'
gem 'kitchen-docker'
gem 'kitchen-inspec'
gem 'inspec'
gem 'kitchen-salt' #, :git => 'https://github.com/salt-formulas/kitchen-salt.git'
- bundle install

env:
- PLATFORM=trevorj/salty-whales:xenial
- PLATFORM=trevorj/salty-whales:bionic

before_script:
- set -o pipefail
- make test | tail
- reno lint $PWD | tail

script:
- test ! -e .kitchen.yml || bundle exec kitchen converge ${SUITE} || true
- test ! -e .kitchen.yml || bundle exec kitchen verify ${SUITE} -t tests/integration

notifications:
webhooks:
urls:
- https://webhooks.gitter.im/e/6123573504759330786b
on_success: change # options: [always|never|change] default: always
on_failure: never # options: [always|never|change] default: always
on_start: never # options: [always|never|change] default: always
on_cancel: never # options: [always|never|change] default: always
on_error: never # options: [always|never|change] default: always
email: false

+ 3
- 0
metadata.yml View File

name: "home_assistant"
version: "0.1"
source: "https://github.com/salt-formulas/salt-formula-home-assistant"

+ 3
- 0
tests/pillar/single.sls View File

home_assistant:
client:
enabled: true

Loading…
Cancel
Save