~gnuoy/charms/trusty/neutron-openvswitch/neutron-contexts

« back to all changes in this revision

Viewing changes to hooks/charmhelpers/contrib/openstack/neutron.py

  • Committer: james.page at ubuntu
  • Date: 2014-12-15 09:12:45 UTC
  • mfrom: (36.1.8 neutron-openvswitch)
  • Revision ID: james.page@ubuntu.com-20141215091245-jm3e66yel69u7zbh
[corey.bryant,r=james-page] Sort out charmhelpers issues.

Show diffs side-by-side

added added

removed removed

Lines of Context:
14
14
def headers_package():
15
15
    """Ensures correct linux-headers for running kernel are installed,
16
16
    for building DKMS package"""
17
 
    kver = check_output(['uname', '-r']).strip()
 
17
    kver = check_output(['uname', '-r']).decode('UTF-8').strip()
18
18
    return 'linux-headers-%s' % kver
19
19
 
20
20
QUANTUM_CONF_DIR = '/etc/quantum'
22
22
 
23
23
def kernel_version():
24
24
    """ Retrieve the current major kernel version as a tuple e.g. (3, 13) """
25
 
    kver = check_output(['uname', '-r']).strip()
 
25
    kver = check_output(['uname', '-r']).decode('UTF-8').strip()
26
26
    kver = kver.split('.')
27
27
    return (int(kver[0]), int(kver[1]))
28
28
 
138
138
                                        relation_prefix='neutron',
139
139
                                        ssl_dir=NEUTRON_CONF_DIR)],
140
140
            'services': [],
141
 
            'packages': [['neutron-plugin-cisco']],
 
141
            'packages': [[headers_package()] + determine_dkms_package(),
 
142
                         ['neutron-plugin-cisco']],
142
143
            'server_packages': ['neutron-server',
143
144
                                'neutron-plugin-cisco'],
144
145
            'server_services': ['neutron-server']
 
146
        },
 
147
        'Calico': {
 
148
            'config': '/etc/neutron/plugins/ml2/ml2_conf.ini',
 
149
            'driver': 'neutron.plugins.ml2.plugin.Ml2Plugin',
 
150
            'contexts': [
 
151
                context.SharedDBContext(user=config('neutron-database-user'),
 
152
                                        database=config('neutron-database'),
 
153
                                        relation_prefix='neutron',
 
154
                                        ssl_dir=NEUTRON_CONF_DIR)],
 
155
            'services': ['calico-compute', 'bird', 'neutron-dhcp-agent'],
 
156
            'packages': [[headers_package()] + determine_dkms_package(),
 
157
                         ['calico-compute', 'bird', 'neutron-dhcp-agent']],
 
158
            'server_packages': ['neutron-server', 'calico-control'],
 
159
            'server_services': ['neutron-server']
145
160
        }
146
161
    }
147
162
    if release >= 'icehouse':
162
177
    elif manager == 'neutron':
163
178
        plugins = neutron_plugins()
164
179
    else:
165
 
        log('Error: Network manager does not support plugins.')
 
180
        log("Network manager '%s' does not support plugins." % (manager),
 
181
            level=ERROR)
166
182
        raise Exception
167
183
 
168
184
    try: