def test_restart_map_nvp(self):
     self.config.return_value = 'nvp'
     ex_map = {
         quantum_utils.NEUTRON_DHCP_AGENT_CONF: ['neutron-dhcp-agent'],
         quantum_utils.NOVA_CONF: ['nova-api-metadata'],
         quantum_utils.NEUTRON_CONF: ['neutron-dhcp-agent',
                                      'neutron-metadata-agent'],
         quantum_utils.NEUTRON_METADATA_AGENT_CONF:
         ['neutron-metadata-agent'],
     }
     self.assertEquals(quantum_utils.restart_map(), ex_map)
 def test_restart_map_ovs(self):
     self.config.return_value = 'ovs'
     ex_map = {
         quantum_utils.NEUTRON_L3_AGENT_CONF: ['neutron-l3-agent'],
         quantum_utils.NEUTRON_OVS_PLUGIN_CONF:
         ['neutron-plugin-openvswitch-agent'],
         quantum_utils.NOVA_CONF: ['nova-api-metadata'],
         quantum_utils.NEUTRON_METADATA_AGENT_CONF:
         ['neutron-metadata-agent'],
         quantum_utils.NEUTRON_DHCP_AGENT_CONF: ['neutron-dhcp-agent'],
         quantum_utils.NEUTRON_CONF: ['neutron-l3-agent',
                                      'neutron-dhcp-agent',
                                      'neutron-metadata-agent',
                                      'neutron-plugin-openvswitch-agent']
     }
     self.assertEquals(quantum_utils.restart_map(), ex_map)
Example #3
0
            src == 'distro'):
        src = 'cloud:precise-folsom'
    configure_installation_source(src)
    apt_update(fatal=True)
    if valid_plugin():
        apt_install(filter_installed_packages(get_early_packages()),
                    fatal=True)
        apt_install(filter_installed_packages(get_packages()),
                    fatal=True)
    else:
        log('Please provide a valid plugin config', level=ERROR)
        sys.exit(1)


@hooks.hook('config-changed')
@restart_on_change(restart_map())
def config_changed():
    if openstack_upgrade_available(get_common_package()):
        do_openstack_upgrade(CONFIGS)
    if valid_plugin():
        CONFIGS.write_all()
        configure_ovs()
    else:
        log('Please provide a valid plugin config', level=ERROR)
        sys.exit(1)
    if config('plugin') == 'n1kv':
        if config('l3-agent') == 'enable':
            if not service_running('neutron-l3-agent'):
                service_start('neutron-l3-agent')
        else:
            if service_running('neutron-l3-agent'):