Skip to content

Commit

Permalink
Add tests to cover the no-venv case
Browse files Browse the repository at this point in the history
The change in #167 to use --force-reinstall, while significantly safer
overall does fail on bionic and earlier when using `use_venv: false`.
This was missed in the existing functional tests, so this adds tests to
cover that.
  • Loading branch information
johnsca committed May 12, 2020
1 parent e72fd1d commit 2ed8dc9
Show file tree
Hide file tree
Showing 5 changed files with 48 additions and 1 deletion.
10 changes: 9 additions & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,5 +47,13 @@ script:
fi
after_failure:
- if [ $ENV = 'func' ]; then
for application in trusty xenial bionic eoan focal; do juju ssh -m $(juju models --format yaml|grep "^- name:.*zaza"|cut -f2 -d/) minimal-${application}/0 "sudo cat /var/log/juju/unit*.log";done;
model=$(juju models --format yaml|grep "^- name:.*zaza"|cut -f2 -d/)
for application in trusty xenial bionic eoan focal; do
if juju status -m $model minimal-${application} | grep -q error; then
juju ssh -m $model minimal-${application}/0 "sudo cat /var/log/juju/unit*.log"
fi
if juju status -m $model minimal-no-venv-${application} | grep -q error; then
juju ssh -m $model minimal-no-venv-${application}/0 "sudo cat /var/log/juju/unit*.log"
fi
done;
fi
20 changes: 20 additions & 0 deletions tests/bundles/minimal.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,23 @@ applications:
series: focal
charm: /tmp/charm-builds/minimal
num_units: 1
minimal-no-venv-trusty:
series: trusty
charm: /tmp/charm-builds/minimal-no-venv
num_units: 1
minimal-no-venv-xenial:
series: xenial
charm: /tmp/charm-builds/minimal-no-venv
num_units: 1
minimal-no-venv-bionic:
series: bionic
charm: /tmp/charm-builds/minimal-no-venv
num_units: 1
minimal-no-venv-eoan:
series: eoan
charm: /tmp/charm-builds/minimal-no-venv
num_units: 1
minimal-no-venv-focal:
series: focal
charm: /tmp/charm-builds/minimal-no-venv
num_units: 1
4 changes: 4 additions & 0 deletions tests/charm-minimal-no-venv/layer.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
includes: [layer:charm-minimal]
options:
basic:
use_venv: false
12 changes: 12 additions & 0 deletions tests/charm-minimal-no-venv/metadata.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
name: minimal-no-venv
summary: minimal charm used to functionally test layer-basic
description: reactive charm with some tricky deps to test venv bootstrapping
maintainer: Juju Developers <juju@lists.ubuntu.com>
tags:
- CI
series:
- trusty
- xenial
- bionic
- eoan
- focal
3 changes: 3 additions & 0 deletions tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,10 @@ setenv = CHARM_LAYERS_DIR=/tmp/charm-builds/_tmp/layers
passenv = HOME
commands =
/bin/rm -rf /tmp/charm-builds/_tmp /tmp/charm-builds/minimal
/bin/rm -rf /tmp/charm-builds/_tmp /tmp/charm-builds/minimal-no-venv
/bin/mkdir -p /tmp/charm-builds/_tmp/layers
/bin/bash -c '/bin/ln -sf $(readlink --canonicalize {toxinidir}) /tmp/charm-builds/_tmp/layers/layer-basic'
/bin/bash -c '/bin/ln -sf $(readlink --canonicalize {toxinidir}/tests/charm-minimal) /tmp/charm-builds/_tmp/layers/charm-minimal'
charm-build tests/charm-minimal
charm-build tests/charm-minimal-no-venv
functest-run-suite --keep-model

0 comments on commit 2ed8dc9

Please sign in to comment.