index.html

Report generated on 12-May-2020 at 15:56:14 by pytest-html v2.1.1

Environment

Packages {"pluggy": "0.13.1", "py": "1.8.1", "pytest": "5.4.2"}
Platform Linux-5.3.0-42-lowlatency-x86_64-with-Ubuntu-19.10-eoan
Plugins {"asyncio": "0.12.0", "html": "2.1.1", "metadata": "1.9.0", "timeout": "1.3.4"}
Python 3.7.5

Summary

0 tests ran in 4.18 seconds.

0 passed, 0 skipped, 0 failed, 1 errors, 0 expected failures, 0 unexpected passes

Results

Result Test Duration Links
Error tests/functional/test_deploy.py::test_charmetckeeper_deploy[xenial-local]::setup 3.86
args = (), kwargs = {}, request = <SubRequest 'controller' for <Function test_charmetckeeper_deploy[xenial-local]>>, setup = <function pytest_fixture_setup.<locals>.wrapper.<locals>.setup at 0x7efdfb030e60>
finalizer = <function pytest_fixture_setup.<locals>.wrapper.<locals>.finalizer at 0x7efdfb030dd0>

def wrapper(*args, **kwargs):
request = kwargs['request']
if strip_request:
del kwargs['request']

gen_obj = generator(*args, **kwargs)

async def setup():
res = await gen_obj.__anext__()
return res

def finalizer():
"""Yield again, to finalize."""
async def async_finalizer():
try:
await gen_obj.__anext__()
except StopAsyncIteration:
pass
else:
msg = "Async generator fixture didn't stop."
msg += "Yield only once."
raise ValueError(msg)
asyncio.get_event_loop().run_until_complete(async_finalizer())

request.addfinalizer(finalizer)
> return asyncio.get_event_loop().run_until_complete(setup())

.tox/functional/lib/python3.7/site-packages/pytest_asyncio/plugin.py:102:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.7/asyncio/base_events.py:579: in run_until_complete
return future.result()
.tox/functional/lib/python3.7/site-packages/pytest_asyncio/plugin.py:85: in setup
res = await gen_obj.__anext__()
tests/functional/conftest.py:39: in controller
await _controller.connect()
.tox/functional/lib/python3.7/site-packages/juju/controller.py:111: in connect
await self._connector.connect_controller(controller_name, **kwargs)
.tox/functional/lib/python3.7/site-packages/juju/client/connector.py:101: in connect_controller
specified_facades=specified_facades,
.tox/functional/lib/python3.7/site-packages/juju/client/connector.py:69: in connect
self._connection = await Connection.connect(**kwargs)
.tox/functional/lib/python3.7/site-packages/juju/client/connection.py:299: in connect
await self._connect_with_redirect([(endpoint, cacert)])
.tox/functional/lib/python3.7/site-packages/juju/client/connection.py:671: in _connect_with_redirect
self._build_facades(login_result.get('facades', {}))
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <juju.client.connection.Connection object at 0x7efdfaee0150>
facades = [{'name': 'Bundle', 'versions': [1]}, {'name': 'Cloud', 'versions': [1, 2, 3, 4, 5]}, {'name': 'Controller', 'versions...'JIMM', 'versions': [1]}, {'name': 'ModelManager', 'versions': [2, 3, 4, 5]}, {'name': 'Pinger', 'versions': [1]}, ...]

def _build_facades(self, facades):
self.facades.clear()
for facade in facades:
name = facade['name']
# the following attempts to get the best facade version for the
# client. The client knows about the best facade versions it speaks,
# so in order to be compatible forwards and backwards we speak a
# common facade versions.
if (name not in client_facades) and (name not in self.specified_facades):
# if a facade is required but the client doesn't know about
# it, then log a warning.
log.warning('unknown facade {}'.format(name))

try:
known = []
# allow the ability to specify a set of facade versions, so the
# client can define the non-conservitive facade client pinning.
if name in self.specified_facades:
known = self.specified_facades[name]['versions']
else:
> known = client_facades[name]['versions']
E KeyError: 'JIMM'

.tox/functional/lib/python3.7/site-packages/juju/client/connection.py:694: KeyError
-------------------------------Captured log setup-------------------------------
WARNING  juju.client.connection:connection.py:685 unknown facade JIMM