components/openstack/swift/files/swift-object-server.xml
author Rich Burridge <rich.burridge@oracle.com>
Tue, 02 May 2017 17:33:26 -0700
changeset 7964 d9801318ed3d
parent 3998 5bd484384122
permissions -rw-r--r--
25981468 Build ilmbase and openexr with the GNU compilers

<?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="swift-object-server">

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

    <dependency name='memcached' grouping='require_all' restart_on='error'
      type='service'>
      <service_fmri value='svc:/application/database/memcached:default' />
    </dependency>

    <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/swift/swift-upgrade' />
    </dependency>

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

    <logfile_attributes permissions='600'/>

    <exec_method timeout_seconds="60" type="method" name="start"
      exec="/lib/svc/method/swift-object-server %m">
      <method_context>
        <method_credential user='swift' group='swift'
          privileges='basic,{zone}:/system/volatile/swift' />
      </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.swift' />
        <propval name='value_authorization' type='astring'
                 value='solaris.smf.value.swift' />
      </property_group>
    </instance>

    <template>
      <common_name>
        <loctext xml:lang="C">
          OpenStack Swift Object Service
        </loctext>
      </common_name>
      <description>
        <loctext xml:lang="C">
          Swift object servers manage actual objects (i.e., files) on the
          storage nodes.
        </loctext>
      </description>
      <documentation>
        <manpage title="swift-object-server" section="1" />
        <manpage title="object-server.conf" section="4" />
      </documentation>
    </template>
  </service>
</service_bundle>