148
148
@patch.object(hooks, 'configure_https')
149
149
@patch.object(hooks, 'git_install_requested')
150
def test_config_changed(self, git_requested, conf_https):
150
@patch.object(hooks, 'config_value_changed')
151
def test_config_changed(self, config_val_changed,
152
git_requested, conf_https):
151
153
'It writes out all config'
152
154
git_requested.return_value = False
153
155
self.openstack_upgrade_available.return_value = False
156
158
self.assertTrue(conf_https.called)
157
159
self.configure_lvm_storage.assert_called_with(['sdb'],
158
160
'cinder-volumes',
161
163
@patch.object(hooks, 'configure_https')
162
164
@patch.object(hooks, 'git_install_requested')
163
def test_config_changed_block_devices(self, git_requested, conf_https):
165
@patch.object(hooks, 'config_value_changed')
166
def test_config_changed_block_devices(self, config_val_changed,
167
git_requested, conf_https):
164
168
'It writes out all config'
165
169
git_requested.return_value = False
166
170
self.openstack_upgrade_available.return_value = False
174
178
self.configure_lvm_storage.assert_called_with(
175
179
['sdb', '/dev/sdc', 'sde'],
179
@patch.object(hooks, 'configure_https')
180
@patch.object(hooks, 'git_install_requested')
181
def test_config_changed_upgrade_available(self, git_requested, conf_https):
183
@patch.object(hooks, 'configure_https')
184
@patch.object(hooks, 'git_install_requested')
185
@patch.object(hooks, 'config_value_changed')
186
def test_config_changed_uses_remove_missing_force(self,
190
'It uses the remove-missing-force config option'
191
git_requested.return_value = False
192
self.openstack_upgrade_available.return_value = False
193
self.test_config.set('block-device', 'sdb')
194
self.test_config.set('remove-missing-force', True)
195
hooks.hooks.execute(['hooks/config-changed'])
196
self.configure_lvm_storage.assert_called_with(
201
@patch.object(hooks, 'configure_https')
202
@patch.object(hooks, 'git_install_requested')
203
@patch.object(hooks, 'config_value_changed')
204
def test_config_changed_upgrade_available(self, config_val_changed,
205
git_requested, conf_https):
182
206
'It writes out all config with an available OS upgrade'
183
207
git_requested.return_value = False
184
208
self.openstack_upgrade_available.return_value = True
211
235
self.assertFalse(self.do_openstack_upgrade.called)
212
236
self.assertTrue(conf_https.called)
238
@patch('charmhelpers.core.host.service')
239
@patch.object(hooks, 'configure_https')
240
@patch.object(hooks, 'git_install_requested')
241
@patch.object(hooks, 'config_value_changed')
242
def test_config_changed_overwrite_changed(self, config_val_changed,
243
git_requested, conf_https,
245
'It uses the overwrite config option'
246
git_requested.return_value = False
247
self.openstack_upgrade_available.return_value = False
248
config_val_changed.return_value = True
249
hooks.hooks.execute(['hooks/config-changed'])
250
self.assertTrue(self.CONFIGS.write_all.called)
251
self.assertTrue(conf_https.called)
252
self.configure_lvm_storage.assert_called_with(['sdb'],
255
self.service_restart.assert_called_with('cinder-volume')
257
@patch.object(hooks, 'git_install_requested')
258
@patch.object(hooks, 'config_value_changed')
259
def test_config_changed_with_openstack_upgrade_action(self,
260
config_value_changed,
262
git_requested.return_value = False
263
self.openstack_upgrade_available.return_value = True
264
self.test_config.set('action-managed-upgrade', True)
266
hooks.hooks.execute(['hooks/config-changed'])
268
self.assertFalse(self.do_openstack_upgrade.called)
214
270
def test_db_changed(self):
215
271
'It writes out cinder.conf on db changed'
216
272
self.relation_get.return_value = 'cinder/0 cinder/1'
310
366
hooks.configure_https()
311
367
calls = [call('a2dissite', 'openstack_https_frontend'),
312
368
call('service', 'apache2', 'reload')]
313
self.check_call.assert_called_has_calls(calls)
369
self.check_call.assert_has_calls(calls)
314
370
identity_joined.assert_called_with(rid='identity-service:0')
316
372
@patch.object(hooks, 'identity_joined')
321
377
hooks.configure_https()
322
378
calls = [call('a2dissite', 'openstack_https_frontend'),
323
379
call('service', 'apache2', 'reload')]
324
self.check_call.assert_called_has_calls(calls)
380
self.check_call.assert_has_calls(calls)
325
381
identity_joined.assert_called_with(rid='identity-service:0')
327
383
def test_image_service_changed(self):
367
423
self.test_config.set('prefer-ipv6', True)
368
424
self.test_config.set('vip', 'dummy_vip')
369
425
hooks.hooks.execute(['hooks/shared-db-relation-joined'])
370
self.sync_db_with_multi_ipv6_addresses.assert_called_with_once(
426
self.sync_db_with_multi_ipv6_addresses.assert_called_with(
371
427
'cinder', 'cinder')
373
429
def test_db_joined_with_postgresql(self):