components/openstack/nova/files/zone-vnc-console.xml
author Niall Power <niall.power@oracle.com>
Tue, 20 Jan 2015 14:02:18 -0800
changeset 3652 7e731a1b0b39
child 4046 47a996abe340
permissions -rw-r--r--
PSARC/2014/377 noVNC - A browser based VNC client 19557488 The noVNC client should be added to Userland 20202461 Websockify is broken on SPARC because of unnecessary byte swapping 20202582 Solaris zones nova compute driver needs console access support

<?xml version="1.0" ?>
<!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'>
<!--
 Copyright (c) 2014, 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="zone-vnc-console">

  <service version="1" type="service"
    name="application/openstack/nova/zone-vnc-console">

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

    <dependency name='compute' grouping='require_all' restart_on='error'
      type='service'>
      <service_fmri 
        value='svc:/application/openstack/nova/nova-compute:default' />
    </dependency>

    <logfile_attributes permissions='600'/>

    <exec_method timeout_seconds="10" type="method" name="start"
      exec="/lib/svc/method/zone-vnc-console %m">
      <method_context>
        <method_credential user='nova' group='nova' />
      </method_context>
    </exec_method>

    <exec_method timeout_seconds="10" type="method" name="stop"
      exec="/lib/svc/method/zone-vnc-console %m %{restarter/contract}">
      <method_context>
        <method_credential user='nova' group='nova' />
      </method_context>
    </exec_method>

    <property_group name='startd' type='framework'>
      <propval name='duration' type='astring'
        value='contract' />
    </property_group>

    <!-- to start/stop/refresh the service -->
    <property_group name='general' type='framework'>
      <propval name='action_authorization' type='astring'
        value='solaris.smf.manage.nova' />
      <propval name='value_authorization' type='astring'
        value='solaris.smf.value.nova' />
    </property_group>
   
    <property_group name="vnc" type="application">
      <propval name='host' type='astring' value='localhost'
        override='true'/>
      <propval name='port' type='integer' value='0'
        override='true'/>
      <propval name='action_authorization' type='astring'
        value='solaris.smf.manage.nova' />
      <propval name='value_authorization' type='astring'
        value='solaris.smf.value.nova' />
    </property_group>

    <template>
      <common_name>
        <loctext xml:lang="C">
          OpenStack Nova VNC Console Service for Solaris Zones
        </loctext>
      </common_name>
      <description>
        <loctext xml:lang="C">
          Manages VNC consoles relating to Solaris Zones as Nova instances.
        </loctext>
      </description>
    </template>
  </service>
</service_bundle>