LEFT | RIGHT |
1 import logging | 1 import logging |
2 import os | 2 import os |
3 | 3 |
4 from twisted.internet.defer import inlineCallbacks | 4 from twisted.internet.defer import inlineCallbacks |
5 | 5 |
6 from juju.machine.unit import get_deploy_factory | 6 from juju.machine.unit import get_deploy_factory |
7 from juju.state.charm import CharmStateManager | 7 from juju.state.charm import CharmStateManager |
8 from juju.state.environment import GlobalSettingsStateManager | 8 from juju.state.environment import GlobalSettingsStateManager |
9 from juju.state.service import ServiceStateManager | 9 from juju.state.service import ServiceStateManager |
10 from juju.unit.charm import download_charm | 10 from juju.unit.charm import download_charm |
(...skipping 21 matching lines...) Expand all Loading... |
32 self.env_id = None | 32 self.env_id = None |
33 | 33 |
34 @property | 34 @property |
35 def charms_directory(self): | 35 def charms_directory(self): |
36 return os.path.join(self.juju_directory, "charms") | 36 return os.path.join(self.juju_directory, "charms") |
37 | 37 |
38 @inlineCallbacks | 38 @inlineCallbacks |
39 def start(self, provider_type=None): | 39 def start(self, provider_type=None): |
40 """Starts the unit deployer.""" | 40 """Starts the unit deployer.""" |
41 # Find out what provided the machine, and how to deploy units. | 41 # Find out what provided the machine, and how to deploy units. |
| 42 settings = GlobalSettingsStateManager(self.client) |
42 if provider_type is None: | 43 if provider_type is None: |
43 settings = GlobalSettingsStateManager(self.client) | |
44 provider_type = yield settings.get_provider_type() | 44 provider_type = yield settings.get_provider_type() |
45 | 45 |
46 self.deploy_factory = get_deploy_factory(provider_type) | 46 self.deploy_factory = get_deploy_factory(provider_type) |
47 self.env_id = yield settings.get_environment_id() | 47 self.env_id = yield settings.get_environment_id() |
48 | 48 |
49 if not os.path.exists(self.charms_directory): | 49 if not os.path.exists(self.charms_directory): |
50 os.makedirs(self.charms_directory) | 50 os.makedirs(self.charms_directory) |
51 | 51 |
52 def download_charm(self, charm_state): | 52 def download_charm(self, charm_state): |
53 """Retrieve a charm from the provider storage to the local machine. | 53 """Retrieve a charm from the provider storage to the local machine. |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
99 def kill_service_unit(self, service_unit_name): | 99 def kill_service_unit(self, service_unit_name): |
100 """Stop service unit and destroy disk state, ala SIGKILL or lxc-destroy | 100 """Stop service unit and destroy disk state, ala SIGKILL or lxc-destroy |
101 | 101 |
102 :param str service_unit_name: Service unit name to be killed | 102 :param str service_unit_name: Service unit name to be killed |
103 """ | 103 """ |
104 deployment = self.deploy_factory( | 104 deployment = self.deploy_factory( |
105 service_unit_name, self.juju_directory) | 105 service_unit_name, self.juju_directory) |
106 log.info("Stopping service unit %s...", service_unit_name) | 106 log.info("Stopping service unit %s...", service_unit_name) |
107 yield deployment.destroy() | 107 yield deployment.destroy() |
108 log.info("Stopped service unit %s", service_unit_name) | 108 log.info("Stopped service unit %s", service_unit_name) |
LEFT | RIGHT |