components/openstack/neutron/files/neutron-server.xml
author Drew Fisher <drew.fisher@oracle.com>
Fri, 19 Jun 2015 07:15:22 -0600
branchs11u2-sru
changeset 4524 1d366b8c5c2d
parent 4156 4b1def16fe9b
child 4476 230dcd277ef6
permissions -rw-r--r--
21209844 heat-db method timeout is too short, can cause corruption on upgrade

<?xml version="1.0" ?>
<!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'>
<!--
 Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.

 Licensed under the Apache License, Version 2.0 (the "License"); you may
 not use this file except in compliance with the License. You may obtain
 a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 License for the specific language governing permissions and limitations
 under the License.

 NOTE:  This service manifest is not editable; its contents will
 be overwritten by package or patch operations, including
 operating system upgrade.  Make customizations in a different
 file.
-->
<service_bundle type="manifest" name="neutron-server">

  <service version="1" type="service"
    name="application/openstack/neutron/neutron-server">

    <dependency name='multiuser' grouping='require_all' restart_on='error'
      type='service'>
      <service_fmri value='svc:/milestone/multi-user:default' />
    </dependency>

    <dependency name='upgrade' grouping='require_all' restart_on='none'
      type='service'>
      <service_fmri
        value='svc:/application/openstack/neutron/neutron-upgrade' />
    </dependency>

    <dependency name='ntp' grouping='optional_all' restart_on='none'
      type='service'>
      <service_fmri value='svc:/network/ntp'/>
    </dependency>

    <dependency name='mysql' grouping='optional_all' restart_on='none'
      type='service'>
      <service_fmri value='svc:/application/database/mysql'/>
    </dependency>

    <dependency name='rabbitmq' grouping='optional_all' restart_on='none'
      type='service'>
      <service_fmri value='svc:/network/amqp/rabbitmq'/>
    </dependency>

    <logfile_attributes permissions='600'/>

    <exec_method timeout_seconds="600" type="method" name="start"
      exec="/lib/svc/method/neutron-server %m %{config/config_path} %{config/plugin_config_path}">
      <method_context>
        <method_credential user='neutron' group='neutron' />
      </method_context>
    </exec_method>
    <exec_method timeout_seconds="60" type="method" name="stop"
      exec=":kill"/>

    <instance name='default' enabled='false'>
      <!-- to start/stop/refresh the service -->
      <property_group name='general' type='framework'>
        <propval name='action_authorization' type='astring'
                 value='solaris.smf.manage.neutron' />
        <propval name='value_authorization' type='astring'
                 value='solaris.smf.value.neutron' />
      </property_group>

      <property_group name='config' type='application'>
        <propval name='config_path' type='astring'
          value='/etc/neutron/neutron.conf'/>
        <propval name='plugin_config_path' type='astring'
          value='/etc/neutron/plugins/evs/evs_plugin.ini'/>
      </property_group>
    </instance>

    <template>
      <common_name>
        <loctext xml:lang="C">
          OpenStack Neutron Network Service
        </loctext>
      </common_name>
      <description>
        <loctext xml:lang="C">
          neutron-server provides a webserver that exposes the Neutron API, and
          passes all webservice calls to the Neutron plugin for processing.
        </loctext>
      </description>
      <pg_pattern name='config' type='application' required='true'>
        <prop_pattern name='config_path' type='astring'
          required='true'>
          <common_name>
            <loctext xml:lang='C'>
              Filesystem path to Neutron configuration file
            </loctext>
          </common_name>
        </prop_pattern>
        <prop_pattern name='plugin_config_path' type='astring'
          required='true'>
          <common_name>
            <loctext xml:lang='C'>
              Filesystem path to Neutron plugin .ini file
            </loctext>
          </common_name>
        </prop_pattern>
      </pg_pattern>
    </template>
  </service>
</service_bundle>