projects
/
osm
/
N2VC.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add unit tests to N2VC refactor
[osm/N2VC.git]
/
n2vc
/
libjuju.py
diff --git
a/n2vc/libjuju.py
b/n2vc/libjuju.py
index
daedc3b
..
22ba182
100644
(file)
--- a/
n2vc/libjuju.py
+++ b/
n2vc/libjuju.py
@@
-29,6
+29,8
@@
from n2vc.n2vc_conn import N2VCConnector
from n2vc.exceptions import (
JujuMachineNotFound,
JujuApplicationNotFound,
from n2vc.exceptions import (
JujuMachineNotFound,
JujuApplicationNotFound,
+ JujuLeaderUnitNotFound,
+ JujuActionNotFound,
JujuModelAlreadyExists,
JujuControllerFailedConnecting,
JujuApplicationExists,
JujuModelAlreadyExists,
JujuControllerFailedConnecting,
JujuApplicationExists,
@@
-70,7
+72,10
@@
class Libjuju:
self.log = log or logging.getLogger("Libjuju")
self.db = db
self.log = log or logging.getLogger("Libjuju")
self.db = db
- self.endpoints = self._get_api_endpoints_db() or [endpoint]
+ db_endpoints = self._get_api_endpoints_db()
+ self.endpoints = db_endpoints or [endpoint]
+ if db_endpoints is None:
+ self._update_api_endpoints_db(self.endpoints)
self.api_proxy = api_proxy
self.username = username
self.password = password
self.api_proxy = api_proxy
self.username = username
self.password = password
@@
-295,7
+300,7
@@
class Libjuju:
machine_id, model_name
)
)
machine_id, model_name
)
)
- machine = m
odel.m
achines[machine_id]
+ machine = machines[machine_id]
else:
raise JujuMachineNotFound("Machine {} not found".format(machine_id))
else:
raise JujuMachineNotFound("Machine {} not found".format(machine_id))
@@
-567,7
+572,6
@@
class Libjuju:
:param: application_name: Application name
:param: model_name: Model name
:param: application_name: Application name
:param: model_name: Model name
- :param: cloud_name: Cloud name
:param: action_name: Name of the action
:param: db_dict: Dictionary with data of the DB to write the updates
:param: progress_timeout: Maximum time between two updates in the model
:param: action_name: Name of the action
:param: db_dict: Dictionary with data of the DB to write the updates
:param: progress_timeout: Maximum time between two updates in the model
@@
-598,12
+602,12
@@
class Libjuju:
if await u.is_leader_from_status():
unit = u
if unit is None:
if await u.is_leader_from_status():
unit = u
if unit is None:
- raise
Exception
("Cannot execute action: leader unit not found")
+ raise
JujuLeaderUnitNotFound
("Cannot execute action: leader unit not found")
actions = await application.get_actions()
if action_name not in actions:
actions = await application.get_actions()
if action_name not in actions:
- raise
Exception
(
+ raise
JujuActionNotFound
(
"Action {} not in available actions".format(action_name)
)
"Action {} not in available actions".format(action_name)
)
@@
-634,8
+638,6
@@
class Libjuju:
action_name, action.status, application_name, model_name
)
)
action_name, action.status, application_name, model_name
)
)
- except Exception as e:
- raise e
finally:
await self.disconnect_model(model)
await self.disconnect_controller(controller)
finally:
await self.disconnect_model(model)
await self.disconnect_controller(controller)
@@
-816,7
+818,7
@@
class Libjuju:
"""
machines = await model.get_machines()
if machine_id in machines:
"""
machines = await model.get_machines()
if machine_id in machines:
- machine = m
odel.m
achines[machine_id]
+ machine = machines[machine_id]
await machine.destroy(force=True)
# max timeout
end = time.time() + total_timeout
await machine.destroy(force=True)
# max timeout
end = time.time() + total_timeout