Merge ~afreiberger/charm-juju-controller:functional-test-lxd-profile into charm-juju-controller:master

Proposed by Drew Freiberger
Status: Merged
Approved by: Alvaro Uria
Approved revision: c7987cce5857a4c91d200cce3a44e4f16a9d98cc
Merged at revision: 923c8e1b4d8cb3f948315c78b2bead4e414d54ae
Proposed branch: ~afreiberger/charm-juju-controller:functional-test-lxd-profile
Merge into: charm-juju-controller:master
Diff against target: 75 lines (+17/-3)
6 files modified
Makefile (+5/-0)
src/tests/functional/lxd-profile.yaml (+4/-0)
src/tests/functional/tests/bundles/base.yaml (+0/-1)
src/tests/functional/tests/bundles/overlays/local-charm-overlay.yaml.j2 (+3/-0)
src/tests/functional/tests/tests_juju_controller.py (+2/-1)
src/tests/unit/conftest.py (+3/-1)
Reviewer Review Type Date Requested Status
Alvaro Uria (community) Approve
Review via email: mp+392542@code.launchpad.net

Commit message

Added lxd-profile for functional testing

To post a comment you must log in.
Revision history for this message
Drew Freiberger (afreiberger) wrote :

This creates an ubuntu charm with nested lxd-profile.yaml for functional testing in a lxd environment.

Revision history for this message
🤖 Canonical IS Merge Bot (canonical-is-mergebot) wrote :

This merge proposal is being monitored by mergebot. Change the status to Approved to merge.

Revision history for this message
Drew Freiberger (afreiberger) wrote :

passed functional tests with the release of ~bootstack-charmers-next/juju-local from MR 392541.

Revision history for this message
Alvaro Uria (aluria) wrote :

lgtm.

review: Approve
Revision history for this message
🤖 Canonical IS Merge Bot (canonical-is-mergebot) wrote :

Change successfully merged at revision 923c8e1b4d8cb3f948315c78b2bead4e414d54ae

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
diff --git a/Makefile b/Makefile
index 0a84b5f..69cd363 100644
--- a/Makefile
+++ b/Makefile
@@ -70,6 +70,11 @@ unittests:
70 @cd src && tox -e unit70 @cd src && tox -e unit
7171
72functional: build72functional: build
73 @echo "Pulling prereqs for functional testing"
74 @-rm -rf testing-charms # ignore errors as this may not exist
75 @mkdir testing-charms
76 @cd testing-charms && charm pull cs:ubuntu ubuntu-lxd-profile && cd ..
77 @cp src/tests/functional/lxd-profile.yaml testing-charms/ubuntu-lxd-profile
73 @echo "Executing functional tests in ${CHARM_BUILD_DIR}"78 @echo "Executing functional tests in ${CHARM_BUILD_DIR}"
74 @cd src && CHARM_BUILD_DIR=${CHARM_BUILD_DIR} tox -e func79 @cd src && CHARM_BUILD_DIR=${CHARM_BUILD_DIR} tox -e func
7580
diff --git a/src/tests/functional/lxd-profile.yaml b/src/tests/functional/lxd-profile.yaml
76new file mode 10064481new file mode 100644
index 0000000..56f8e4d
--- /dev/null
+++ b/src/tests/functional/lxd-profile.yaml
@@ -0,0 +1,4 @@
1# LXD Profile supporting privileged container for juju controller lxd on lxd
2config:
3 security.privileged: "true"
4 security.nesting: "true"
diff --git a/src/tests/functional/tests/bundles/base.yaml b/src/tests/functional/tests/bundles/base.yaml
index 81a95d1..d87988f 100644
--- a/src/tests/functional/tests/bundles/base.yaml
+++ b/src/tests/functional/tests/bundles/base.yaml
@@ -1,7 +1,6 @@
1description: "juju-controller charm test bundle"1description: "juju-controller charm test bundle"
2applications:2applications:
3 ubuntu:3 ubuntu:
4 charm: "ubuntu"
5 num_units: 14 num_units: 1
6 juju-local:5 juju-local:
7 charm: "cs:~bootstack-charmers-next/juju-local"6 charm: "cs:~bootstack-charmers-next/juju-local"
diff --git a/src/tests/functional/tests/bundles/overlays/local-charm-overlay.yaml.j2 b/src/tests/functional/tests/bundles/overlays/local-charm-overlay.yaml.j2
8new file mode 1006447new file mode 100644
index 0000000..4d6e8b6
--- /dev/null
+++ b/src/tests/functional/tests/bundles/overlays/local-charm-overlay.yaml.j2
@@ -0,0 +1,3 @@
1applications:
2 ubuntu:
3 charm: {{ CHARM_BUILD_DIR }}/../testing-charms/ubuntu-lxd-profile
diff --git a/src/tests/functional/tests/tests_juju_controller.py b/src/tests/functional/tests/tests_juju_controller.py
index da69629..110cb20 100644
--- a/src/tests/functional/tests/tests_juju_controller.py
+++ b/src/tests/functional/tests/tests_juju_controller.py
@@ -86,7 +86,8 @@ class JujuControllerTestBase(unittest.TestCase):
86 """Deploy juju-controller charm."""86 """Deploy juju-controller charm."""
87 model.scp_to_unit(cls.unit, str(BUILT_CHARM), "/home/ubuntu", scp_opts="-r")87 model.scp_to_unit(cls.unit, str(BUILT_CHARM), "/home/ubuntu", scp_opts="-r")
88 cls.run_remote_juju(88 cls.run_remote_juju(
89 "deploy", "-n 3 --to 0,1,2 /home/ubuntu/juju-controller juju-controller",89 "deploy",
90 "-n 3 --to 0,1,2 /home/ubuntu/juju-controller juju-controller",
90 )91 )
91 block_until_inner_app(cls.unit, "controller", "juju-controller")92 block_until_inner_app(cls.unit, "controller", "juju-controller")
9293
diff --git a/src/tests/unit/conftest.py b/src/tests/unit/conftest.py
index 64f110c..620a77d 100644
--- a/src/tests/unit/conftest.py
+++ b/src/tests/unit/conftest.py
@@ -95,7 +95,9 @@ def agent_conf_sample(agent_conf_sample_path):
9595
96@pytest.fixture96@pytest.fixture
97def jujucontroller(97def jujucontroller(
98 mock_hookenv_config, monkeypatch, agent_conf_sample,98 mock_hookenv_config,
99 monkeypatch,
100 agent_conf_sample,
99):101):
100 """Mock the JujuControllerHelper.102 """Mock the JujuControllerHelper.
101103

Subscribers

People subscribed via source and target branches

to all changes: