- Added support for deb networking-plumgrid install
 - plumlib.ini changes

Signed-off-by: plumgrid <Junaid Ali>
This commit is contained in:
plumgrid 2016-08-19 20:02:58 -04:00
parent 4c4cd9c000
commit 62d25d9be8
5 changed files with 44 additions and 12 deletions

View File

@ -57,3 +57,17 @@ options:
type: string
default: Default
description: Keystone project domain name
enable-deb-networking-install:
type: boolean
default: False
description: |
If enabled networking plumgrid is installed from deb package on LCM instead of
installation using pip
enable-flow-tap:
type: boolean
default: True
description: Toggles reverse flow creation for tap based policies
enable-metaconfig:
type: boolean
default: True
description: Enables/disables nova communication for metaconfig

View File

@ -120,6 +120,8 @@ class NeutronPGPluginContext(context.NeutronContext):
pg_ctxt['connector_type'] = config('connector-type')
pg_ctxt['user_domain_name'] = config('user-domain-name')
pg_ctxt['project_domain_name'] = config('project-domain-name')
pg_ctxt['enable_reverse_flow_tap'] = config('enable-flow-tap')
pg_ctxt['nova_metaconfig'] = config('enable-metaconfig')
if enable_metadata:
plumgrid_edge_ctxt = _edge_context()
pg_ctxt['nova_metadata_proxy_secret'] = \

View File

@ -12,6 +12,7 @@ from charmhelpers.contrib.openstack import templating
from charmhelpers.contrib.openstack.neutron import neutron_plugin_attribute
from charmhelpers.contrib.python.packages import pip_install
from charmhelpers.fetch import (
apt_install,
apt_cache
)
from charmhelpers.core.hookenv import (
@ -166,18 +167,23 @@ def install_networking_plumgrid():
'''
Installs networking-plumgrid package
'''
release = os_release('neutron-common', base='kilo')
if config('networking-plumgrid-version') is None:
package_version = NETWORKING_PLUMGRID_VERSION[release]
if not config('enable-deb-networking-install'):
release = os_release('neutron-common', base='kilo')
if config('networking-plumgrid-version') is None:
package_version = NETWORKING_PLUMGRID_VERSION[release]
else:
package_version = config('networking-plumgrid-version')
package_name = 'networking-plumgrid==%s' % package_version
if config('pip-proxy') != "None":
pip_install(package_name, fatal=True, proxy=config('pip-proxy'))
else:
pip_install(package_name, fatal=True)
if is_leader() and package_version != '2015.1.1.1':
migrate_neutron_db()
else:
package_version = config('networking-plumgrid-version')
package_name = 'networking-plumgrid==%s' % package_version
if config('pip-proxy') != "None":
pip_install(package_name, fatal=True, proxy=config('pip-proxy'))
else:
pip_install(package_name, fatal=True)
if is_leader() and package_version != '2015.1.1.1':
migrate_neutron_db()
apt_install('networking-plumgrid', options=['--force-yes'], fatal=True)
if is_leader():
migrate_neutron_db()
def migrate_neutron_db():

View File

@ -14,9 +14,15 @@ enable_pg_security = True
# Reverse Flow Flag
enable_reverse_flow = True
# Reverse Flow Flag Tap
enable_reverse_flow_tap = {{ enable_reverse_flow_tap }}
# Flag to enable/disable virtual appliance creation
vapp_flag = False
# Flag to enable/disable nova communication for metaconfig
nova_metaconfig = {{ nova_metaconfig }}
# Metadata Flags. If "metadata_ns" is set to false, respective
# namespace for metadata won't be created on this node
[PLUMgridMetadata]

View File

@ -61,7 +61,9 @@ class NeutronPGContextTest(CharmTestCase):
'switch-password': 'plumgrid',
'connector-type': 'service',
'user-domain-name': 'Default',
'project-domain-name': 'Default'
'project-domain-name': 'Default',
'enable-flow-tap': 'True',
'enable-metaconfig': 'True',
}
def mock_config(key=None):
@ -98,5 +100,7 @@ class NeutronPGContextTest(CharmTestCase):
'pg_metadata_ip': '169.254.169.254',
'pg_metadata_subnet': '169.254.169.254/30',
'pg_metadata_port': '8775',
'enable_reverse_flow_tap': 'True',
'nova_metaconfig': 'True',
}
self.assertEquals(expect, napi_ctxt())