9
9
from juju.providers.common.cloudinit import (
10
10
CloudInit, parse_juju_origin, get_default_origin)
11
11
from juju.providers.dummy import DummyMachine
12
from juju.machine import ProviderMachine
59
60
"Incomplete cloud-init: you need to call add_ssh_key, "
60
"set_machine_id, set_provider_type, set_zookeeper_machines")
61
"set_zookeeper_machines")
62
63
def test_render_validate_bootstrap(self):
63
64
cloud_init = CloudInit()
68
69
"Incomplete cloud-init: you need to call add_ssh_key, "
69
"set_machine_id, set_provider_type, set_instance_id_accessor, "
70
"set_provider_type, set_instance_id_accessor, "
70
71
"set_zookeeper_secret, set_constraints")
72
73
def test_source_validate(self):
139
140
self.construct_bootstrap(True),
140
141
"cloud_init_bootstrap_zookeepers")
143
def test_render_no_machine_id(self):
144
self.patch(juju, "__file__", "/not/installed/under/usr")
145
cloud_init = CloudInit()
146
cloud_init.add_ssh_key("chubb")
147
cloud_init.set_provider_type("dummy")
148
cloud_init.set_zookeeper_machines([
149
DummyMachine("blah", "blah", "cotswold"),
150
DummyMachine("blah", "blah", "longleat")])
151
cloud_init.set_juju_source(distro=True)
152
self.assert_render(cloud_init, "cloud_init_no_machine_id")
154
def test_render_apt_proxy(self):
155
cloud_init = self.construct_normal()
156
cloud_init.set_juju_source(ppa=True)
157
cloud_init.set_apt_proxy('superproxy:37337')
158
self.assert_render(cloud_init, "cloud_init_ppa_apt_proxy")
160
def test_set_zookeeper_machines(self):
161
machine1 = ProviderMachine('i-100', 'foo1', 'foo1.private')
162
machine2 = ProviderMachine('i-200', 'foo2', 'foo2.private')
163
cloud_init = CloudInit()
164
cloud_init.set_zookeeper_machines([machine1, machine2])
165
self.assertEqual(['foo1.private', 'foo2.private'], cloud_init._zookeeper_hosts)
167
def test_set_zookeeper_hosts(self):
168
cloud_init = CloudInit()
169
cloud_init.set_zookeeper_hosts(['bar1.private', 'bar2.private'])
170
self.assertEqual(['bar1.private', 'bar2.private'], cloud_init._zookeeper_hosts)
172
def test_set_zookeeper_hosts_tuple(self):
173
cloud_init = CloudInit()
174
cloud_init.set_zookeeper_hosts([('bar1.private', 9999)])
175
self.assertEqual('bar1.private:9999', cloud_init._join_zookeeper_hosts())
143
177
class ParseJujuOriginTest(TestCase):