commit
0c9c04172c
26
.travis.yml
26
.travis.yml
@ -1,7 +1,8 @@
|
|||||||
sudo: true
|
sudo: true
|
||||||
dist: xenial
|
dist: xenial
|
||||||
language: python
|
language: python
|
||||||
install: pip install tox-travis
|
install:
|
||||||
|
- pip install tox-travis
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
- name: "Python 3.6"
|
- name: "Python 3.6"
|
||||||
@ -10,5 +11,26 @@ matrix:
|
|||||||
- name: "Python 3.7"
|
- name: "Python 3.7"
|
||||||
python: 3.7
|
python: 3.7
|
||||||
env: ENV=pep8,py3
|
env: ENV=pep8,py3
|
||||||
|
- name: "Functional test"
|
||||||
|
env: ENV=func-smoke
|
||||||
script:
|
script:
|
||||||
- tox -c tox.ini -e $ENV
|
- if [ $ENV = 'func-smoke' ]; then
|
||||||
|
sudo apt update;
|
||||||
|
sudo apt install -y distro-info;
|
||||||
|
sudo apt remove -y --purge lxd lxd-client;
|
||||||
|
sudo snap install lxd;
|
||||||
|
sudo snap install juju --classic;
|
||||||
|
sudo sh -c 'echo PATH=/snap/bin:$PATH >> /etc/environment';
|
||||||
|
sudo lxd waitready;
|
||||||
|
sudo lxd init --auto;
|
||||||
|
sudo usermod -a -G lxd travis;
|
||||||
|
sudo su travis -c 'juju bootstrap --no-gui localhost';
|
||||||
|
echo "export PATH=$PATH;cd $(pwd)" > $HOME/saved_path;
|
||||||
|
sudo su - travis -c "source $HOME/saved_path; tox -e build";
|
||||||
|
sudo su - travis -c "source $HOME/saved_path; tox -c build/builds/ovn-chassis/tox.ini -e $ENV -- --log DEBUG";
|
||||||
|
else
|
||||||
|
tox -c tox.ini -e $ENV;
|
||||||
|
fi
|
||||||
|
- if [ $ENV = 'func-smoke' ]; then
|
||||||
|
sudo su travis -c 'juju status -m $(juju models --format yaml|grep "^- name:.*zaza"|cut -f2 -d/)';
|
||||||
|
fi
|
||||||
|
11
src/test-requirements.txt
Normal file
11
src/test-requirements.txt
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
# This file is managed centrally. If you find the need to modify this as a
|
||||||
|
# one-off, please don't. Intead, consult #openstack-charms and ask about
|
||||||
|
# requirements management in charms via bot-control. Thank you.
|
||||||
|
charm-tools>=2.4.4
|
||||||
|
coverage>=3.6
|
||||||
|
mock>=1.2
|
||||||
|
flake8>=2.2.4,<=2.4.1
|
||||||
|
stestr>=2.2.0
|
||||||
|
requests>=2.18.4
|
||||||
|
git+https://github.com/openstack-charmers/zaza.git#egg=zaza
|
||||||
|
git+https://github.com/openstack-charmers/zaza-openstack-tests.git@add-ovn#egg=zaza.openstack
|
30
src/tests/bundles/bionic.yaml
Normal file
30
src/tests/bundles/bionic.yaml
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
series: bionic
|
||||||
|
relations:
|
||||||
|
- - vault:shared-db
|
||||||
|
- mysql:shared-db
|
||||||
|
- - ovn-central:certificates
|
||||||
|
- vault:certificates
|
||||||
|
- - ubuntu
|
||||||
|
- ovn-chassis
|
||||||
|
- - ovn-chassis:ovsdb
|
||||||
|
- ovn-central:ovsdb
|
||||||
|
- - ovn-chassis:certificates
|
||||||
|
- vault:certificates
|
||||||
|
applications:
|
||||||
|
mysql:
|
||||||
|
charm: cs:~openstack-charmers-next/percona-cluster
|
||||||
|
num_units: 1
|
||||||
|
vault:
|
||||||
|
charm: cs:~openstack-charmers-next/vault
|
||||||
|
num_units: 1
|
||||||
|
ovn-central:
|
||||||
|
charm: cs:~openstack-charmers-next/ovn-central
|
||||||
|
num_units: 3
|
||||||
|
options:
|
||||||
|
source: cloud:bionic-stein
|
||||||
|
ubuntu:
|
||||||
|
charm: cs:ubuntu
|
||||||
|
num_units: 1
|
||||||
|
ovn-chassis:
|
||||||
|
series: bionic
|
||||||
|
charm: cs:~openstack-charmers-next/ovn-chassis
|
28
src/tests/bundles/disco.yaml
Normal file
28
src/tests/bundles/disco.yaml
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
series: disco
|
||||||
|
relations:
|
||||||
|
- - vault:shared-db
|
||||||
|
- mysql:shared-db
|
||||||
|
- - ovn-central:certificates
|
||||||
|
- vault:certificates
|
||||||
|
- - ubuntu
|
||||||
|
- ovn-chassis
|
||||||
|
- - ovn-chassis:ovsdb
|
||||||
|
- ovn-central:ovsdb
|
||||||
|
- - ovn-chassis:certificates
|
||||||
|
- vault:certificates
|
||||||
|
applications:
|
||||||
|
mysql:
|
||||||
|
charm: cs:~openstack-charmers-next/percona-cluster
|
||||||
|
num_units: 1
|
||||||
|
vault:
|
||||||
|
charm: cs:~openstack-charmers-next/vault
|
||||||
|
num_units: 1
|
||||||
|
ovn-central:
|
||||||
|
charm: cs:~openstack-charmers-next/ovn-central
|
||||||
|
num_units: 3
|
||||||
|
ubuntu:
|
||||||
|
charm: cs:ubuntu
|
||||||
|
num_units: 1
|
||||||
|
ovn-chassis:
|
||||||
|
series: disco
|
||||||
|
charm: cs:~openstack-charmers-next/ovn-chassis
|
20
src/tests/tests.yaml
Normal file
20
src/tests/tests.yaml
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
charm_name: ovn-chassis
|
||||||
|
gate_bundles:
|
||||||
|
- disco
|
||||||
|
- bionic
|
||||||
|
smoke_bundles:
|
||||||
|
- bionic
|
||||||
|
target_deploy_status:
|
||||||
|
ovn-central:
|
||||||
|
workload-status: blocked
|
||||||
|
workload-status-message: "'certificates' missing"
|
||||||
|
ovn-chassis:
|
||||||
|
workload-status: blocked
|
||||||
|
workload-status-message: "'certificates' missing"
|
||||||
|
vault:
|
||||||
|
workload-status: blocked
|
||||||
|
workload-status-message: Vault needs to be initialized
|
||||||
|
configure:
|
||||||
|
- zaza.openstack.charm_tests.vault.setup.auto_initialize_no_validation
|
||||||
|
tests:
|
||||||
|
- zaza.charm_tests.noop.tests.NoopTest
|
36
src/tox.ini
Normal file
36
src/tox.ini
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
[tox]
|
||||||
|
envlist = pep8
|
||||||
|
skipsdist = True
|
||||||
|
|
||||||
|
[testenv]
|
||||||
|
download = true
|
||||||
|
setenv = VIRTUAL_ENV={envdir}
|
||||||
|
PYTHONHASHSEED=0
|
||||||
|
whitelist_externals = juju
|
||||||
|
passenv = HOME TERM CS_API_* OS_* AMULET_*
|
||||||
|
deps = -r{toxinidir}/test-requirements.txt
|
||||||
|
install_command =
|
||||||
|
pip install {opts} {packages}
|
||||||
|
|
||||||
|
[testenv:pep8]
|
||||||
|
basepython = python3
|
||||||
|
deps=charm-tools
|
||||||
|
commands = charm-proof
|
||||||
|
|
||||||
|
[testenv:func-noop]
|
||||||
|
basepython = python3
|
||||||
|
commands =
|
||||||
|
true
|
||||||
|
|
||||||
|
[testenv:func]
|
||||||
|
basepython = python3
|
||||||
|
commands =
|
||||||
|
functest-run-suite {posargs} --keep-model
|
||||||
|
|
||||||
|
[testenv:func-smoke]
|
||||||
|
basepython = python3
|
||||||
|
commands =
|
||||||
|
functest-run-suite {posargs} --keep-model --smoke
|
||||||
|
|
||||||
|
[testenv:venv]
|
||||||
|
commands = {posargs}
|
Loading…
Reference in New Issue
Block a user