components/openstack/neutron/files/neutron-l3-agent.xml
author saurabh.vyas@oracle.com
Tue, 02 Jun 2015 12:43:22 -0600
branchs11-update
changeset 4430 5858809d8d01
parent 4072 db0cec748ec0
child 4476 230dcd277ef6
child 6035 c9748fcc32de
permissions -rw-r--r--
21086485 neutron-l3-agent service should not report online if trace dump happened 21157386 dhcp & metadata agents trace dump due to report state failure

<?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-l3-agent">

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

    <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='ipfilter' grouping='require_all' restart_on='error'
      type='service'>
      <service_fmri value='svc:/network/ipfilter:default' />
    </dependency>

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

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

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

    <logfile_attributes permissions='600'/>

    <exec_method timeout_seconds="60" type="method" name="start"
      exec="/lib/svc/method/neutron-l3-agent %m %{config/config_path} %{config/l3_config_path}">
      <method_context>
        <!-- sys_ip_config is required to set 'hostmodel' ipadm property -->
        <method_credential user='neutron' group='neutron' privileges='basic,sys_ip_config' />
      </method_context>
    </exec_method>
    <exec_method timeout_seconds="600" type="method" name="stop"
      exec="/lib/svc/method/neutron-l3-agent %m %{restarter/contract}">
      <method_context>
        <!-- sys_ip_config is required to set 'hostmodel' ipadm property -->
        <method_credential user='neutron' group='neutron' privileges='basic,sys_ip_config' />
      </method_context>
    </exec_method>

    <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='l3_config_path' type='astring'
          value='/etc/neutron/l3_agent.ini'/>
      </property_group>
    </instance>

    <template>
      <common_name>
        <loctext xml:lang="C">
          OpenStack Neutron Layer 3 Agent
        </loctext>
      </common_name>
      <description>
        <loctext xml:lang="C">
          neutron-l3-agent is a server daemon that supports Layer 3 and NAT
          forwarding to provide external network access for VMs on tenant
          networks.
        </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='l3_config_path' type='astring'
          required='true'>
          <common_name>
            <loctext xml:lang='C'>
              Filesystem path to Neutron L3 .ini file
            </loctext>
          </common_name>
        </prop_pattern>
      </pg_pattern>
    </template>
  </service>
</service_bundle>