components/openstack/neutron/files/neutron-server
author Laszlo Peter <laszlo.peter@oracle.com>
Wed, 07 Sep 2016 14:48:41 -0700
changeset 6848 8e252a37ed0d
parent 6031 1aaf20a19738
permissions -rw-r--r--
PSARC 2016/268 Neutron EVS Plugin EOF 24465835 Update Neutron for the Mitaka release 22271305 EOF monolithic neutron plugin for Openstack 18734794 port-create --fixed-ip accepts invalid argument, creates port with wrong IP
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4049
150852e281c4 20816335 move the core OpenStack components to Python 2.7
Drew Fisher <drew.fisher@oracle.com>
parents: 1760
diff changeset
     1
#!/usr/bin/python2.7
1760
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
     2
5840
ed8b04bef26e 22878181 Neutron database tables not upgraded properly from Juno to Kilo schema
Padma Dakoju <padma.dakoju@oracle.com>
parents: 4049
diff changeset
     3
# Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
1760
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
     4
#
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
     5
#    Licensed under the Apache License, Version 2.0 (the "License"); you may
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
     6
#    not use this file except in compliance with the License. You may obtain
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
     7
#    a copy of the License at
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
     8
#
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
     9
#         http://www.apache.org/licenses/LICENSE-2.0
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    10
#
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    11
#    Unless required by applicable law or agreed to in writing, software
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    12
#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    13
#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    14
#    License for the specific language governing permissions and limitations
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    15
#    under the License.
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    16
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    17
import os
6848
8e252a37ed0d PSARC 2016/268 Neutron EVS Plugin EOF
Laszlo Peter <laszlo.peter@oracle.com>
parents: 6031
diff changeset
    18
from subprocess import CalledProcessError, check_call
1760
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    19
import sys
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    20
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    21
import smf_include
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    22
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    23
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    24
def start():
6031
1aaf20a19738 PSARC/2016/251 OpenStack Neutron ML2 framework and OVS mechanism driver
Girish Moodalbail <Girish.Moodalbail@oracle.COM>
parents: 5840
diff changeset
    25
    cfg_files = sys.argv[2:3]
6848
8e252a37ed0d PSARC 2016/268 Neutron EVS Plugin EOF
Laszlo Peter <laszlo.peter@oracle.com>
parents: 6031
diff changeset
    26
    # It is ML2 plugin for now, until we introduce another plugin
8e252a37ed0d PSARC 2016/268 Neutron EVS Plugin EOF
Laszlo Peter <laszlo.peter@oracle.com>
parents: 6031
diff changeset
    27
    cfg_files.append("/etc/neutron/plugins/ml2/ml2_conf.ini")
6031
1aaf20a19738 PSARC/2016/251 OpenStack Neutron ML2 framework and OVS mechanism driver
Girish Moodalbail <Girish.Moodalbail@oracle.COM>
parents: 5840
diff changeset
    28
1aaf20a19738 PSARC/2016/251 OpenStack Neutron ML2 framework and OVS mechanism driver
Girish Moodalbail <Girish.Moodalbail@oracle.COM>
parents: 5840
diff changeset
    29
    # verify paths are valid
1aaf20a19738 PSARC/2016/251 OpenStack Neutron ML2 framework and OVS mechanism driver
Girish Moodalbail <Girish.Moodalbail@oracle.COM>
parents: 5840
diff changeset
    30
    for f in cfg_files:
1aaf20a19738 PSARC/2016/251 OpenStack Neutron ML2 framework and OVS mechanism driver
Girish Moodalbail <Girish.Moodalbail@oracle.COM>
parents: 5840
diff changeset
    31
        if not os.path.exists(f) or not os.access(f, os.R_OK):
1aaf20a19738 PSARC/2016/251 OpenStack Neutron ML2 framework and OVS mechanism driver
Girish Moodalbail <Girish.Moodalbail@oracle.COM>
parents: 5840
diff changeset
    32
            print '%s does not exist or is not readable' % f
1aaf20a19738 PSARC/2016/251 OpenStack Neutron ML2 framework and OVS mechanism driver
Girish Moodalbail <Girish.Moodalbail@oracle.COM>
parents: 5840
diff changeset
    33
            return smf_include.SMF_EXIT_ERR_CONFIG
1aaf20a19738 PSARC/2016/251 OpenStack Neutron ML2 framework and OVS mechanism driver
Girish Moodalbail <Girish.Moodalbail@oracle.COM>
parents: 5840
diff changeset
    34
5840
ed8b04bef26e 22878181 Neutron database tables not upgraded properly from Juno to Kilo schema
Padma Dakoju <padma.dakoju@oracle.com>
parents: 4049
diff changeset
    35
    # sync the database to have the Kilo schema
6031
1aaf20a19738 PSARC/2016/251 OpenStack Neutron ML2 framework and OVS mechanism driver
Girish Moodalbail <Girish.Moodalbail@oracle.COM>
parents: 5840
diff changeset
    36
    cmd = ["/usr/bin/neutron-db-manage", "--config-file", cfg_files[0],
1aaf20a19738 PSARC/2016/251 OpenStack Neutron ML2 framework and OVS mechanism driver
Girish Moodalbail <Girish.Moodalbail@oracle.COM>
parents: 5840
diff changeset
    37
           "--config-file", cfg_files[1], "upgrade", "head"]
5840
ed8b04bef26e 22878181 Neutron database tables not upgraded properly from Juno to Kilo schema
Padma Dakoju <padma.dakoju@oracle.com>
parents: 4049
diff changeset
    38
    try:
ed8b04bef26e 22878181 Neutron database tables not upgraded properly from Juno to Kilo schema
Padma Dakoju <padma.dakoju@oracle.com>
parents: 4049
diff changeset
    39
        check_call(cmd)
ed8b04bef26e 22878181 Neutron database tables not upgraded properly from Juno to Kilo schema
Padma Dakoju <padma.dakoju@oracle.com>
parents: 4049
diff changeset
    40
    except CalledProcessError as err:
ed8b04bef26e 22878181 Neutron database tables not upgraded properly from Juno to Kilo schema
Padma Dakoju <padma.dakoju@oracle.com>
parents: 4049
diff changeset
    41
        print "Unable to create database for Neutron: %s" % err
ed8b04bef26e 22878181 Neutron database tables not upgraded properly from Juno to Kilo schema
Padma Dakoju <padma.dakoju@oracle.com>
parents: 4049
diff changeset
    42
        sys.exit(smf_include.SMF_EXIT_ERR_CONFIG)
ed8b04bef26e 22878181 Neutron database tables not upgraded properly from Juno to Kilo schema
Padma Dakoju <padma.dakoju@oracle.com>
parents: 4049
diff changeset
    43
6031
1aaf20a19738 PSARC/2016/251 OpenStack Neutron ML2 framework and OVS mechanism driver
Girish Moodalbail <Girish.Moodalbail@oracle.COM>
parents: 5840
diff changeset
    44
    cmd = "/usr/bin/pfexec /usr/lib/neutron/neutron-server --config-file %s " \
1aaf20a19738 PSARC/2016/251 OpenStack Neutron ML2 framework and OVS mechanism driver
Girish Moodalbail <Girish.Moodalbail@oracle.COM>
parents: 5840
diff changeset
    45
        "--config-file %s" % tuple(cfg_files)
1760
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    46
    smf_include.smf_subprocess(cmd)
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    47
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    48
if __name__ == "__main__":
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    49
    os.putenv("LC_ALL", "C")
353323c7bdc1 PSARC/2013/350 OpenStack for Solaris (Umbrella)
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    50
    smf_include.smf_main()