|
1 <?xml version="1.0" ?> |
|
2 <!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'> |
|
3 <!-- |
|
4 Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved. |
|
5 |
|
6 Licensed under the Apache License, Version 2.0 (the "License"); you may |
|
7 not use this file except in compliance with the License. You may obtain |
|
8 a copy of the License at |
|
9 |
|
10 http://www.apache.org/licenses/LICENSE-2.0 |
|
11 |
|
12 Unless required by applicable law or agreed to in writing, software |
|
13 distributed under the License is distributed on an "AS IS" BASIS, WITHOUT |
|
14 WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the |
|
15 License for the specific language governing permissions and limitations |
|
16 under the License. |
|
17 |
|
18 NOTE: This service manifest is not editable; its contents will |
|
19 be overwritten by package or patch operations, including |
|
20 operating system upgrade. Make customizations in a different |
|
21 file. |
|
22 --> |
|
23 <service_bundle type="manifest" name="neutron-dhcp-agent"> |
|
24 |
|
25 <service version="1" type="service" |
|
26 name="application/openstack/neutron/neutron-dhcp-agent"> |
|
27 |
|
28 <dependency name='multiuser' grouping='require_all' restart_on='error' |
|
29 type='service'> |
|
30 <service_fmri value='svc:/milestone/multi-user:default' /> |
|
31 </dependency> |
|
32 |
|
33 <!-- neutron-dhcp-agent uses dnsmasq which is incompatible with running |
|
34 BIND, ISC DHCP, and TFTP --> |
|
35 <dependency name='exclude-bind' |
|
36 grouping='exclude_all' |
|
37 restart_on='none' |
|
38 type='service'> |
|
39 <service_fmri value='svc:/network/dns/server'/> |
|
40 </dependency> |
|
41 |
|
42 <dependency name='exclude-dhcp-relay' |
|
43 grouping='exclude_all' |
|
44 restart_on='none' |
|
45 type='service'> |
|
46 <service_fmri value='svc:/network/dhcp/relay'/> |
|
47 </dependency> |
|
48 |
|
49 <dependency name='exclude-dhcp-server' |
|
50 grouping='exclude_all' |
|
51 restart_on='none' |
|
52 type='service'> |
|
53 <service_fmri value='svc:/network/dhcp/server'/> |
|
54 </dependency> |
|
55 |
|
56 <dependency name='exclude-tftp' |
|
57 grouping='exclude_all' |
|
58 restart_on='none' |
|
59 type='service'> |
|
60 <service_fmri value='svc:/network/tftp/udp6'/> |
|
61 </dependency> |
|
62 |
|
63 <dependency name='exclude-dnsmasq' |
|
64 grouping='exclude_all' |
|
65 restart_on='none' |
|
66 type='service'> |
|
67 <service_fmri value='svc:/network/dnsmasq'/> |
|
68 </dependency> |
|
69 |
|
70 <exec_method timeout_seconds="60" type="method" name="start" |
|
71 exec="/lib/svc/method/neutron-dhcp-agent %m %{config/config_path} %{config/dhcp_config_path}"> |
|
72 <method_context> |
|
73 <method_credential user='neutron' group='neutron' |
|
74 privileges='basic,{net_privaddr}:53/udp,{net_privaddr}:53/tcp,{net_privaddr}:67/udp,{net_privaddr}:69/udp,{net_privaddr}:547/udp,net_icmpaccess,sys_ip_config' /> |
|
75 </method_context> |
|
76 </exec_method> |
|
77 <exec_method timeout_seconds="60" type="method" name="stop" |
|
78 exec=":kill"/> |
|
79 |
|
80 <instance name='default' enabled='false'> |
|
81 <!-- to start/stop/refresh the service --> |
|
82 <property_group name='general' type='framework'> |
|
83 <propval name='action_authorization' type='astring' |
|
84 value='solaris.smf.manage.neutron' /> |
|
85 <propval name='value_authorization' type='astring' |
|
86 value='solaris.smf.value.neutron' /> |
|
87 </property_group> |
|
88 |
|
89 <property_group name='config' type='application'> |
|
90 <propval name='config_path' type='astring' |
|
91 value='/etc/neutron/quantum.conf'/> |
|
92 <propval name='dhcp_config_path' type='astring' |
|
93 value='/etc/neutron/dhcp_agent.ini'/> |
|
94 </property_group> |
|
95 </instance> |
|
96 |
|
97 <template> |
|
98 <common_name> |
|
99 <loctext xml:lang="C"> |
|
100 OpenStack Neutron DHCP Agent |
|
101 </loctext> |
|
102 </common_name> |
|
103 <description> |
|
104 <loctext xml:lang="C"> |
|
105 neutron-dhcp-agent is a server daemon that provides DHCP services to |
|
106 tenant networks. |
|
107 </loctext> |
|
108 </description> |
|
109 <pg_pattern name='config' type='application' required='true'> |
|
110 <prop_pattern name='config_path' type='astring' |
|
111 required='true'> |
|
112 <common_name> |
|
113 <loctext xml:lang='C'> |
|
114 Filesystem path to Neutron configuration file |
|
115 </loctext> |
|
116 </common_name> |
|
117 </prop_pattern> |
|
118 <prop_pattern name='dhcp_config_path' type='astring' |
|
119 required='true'> |
|
120 <common_name> |
|
121 <loctext xml:lang='C'> |
|
122 Filesystem path to Neutron DHCP .ini file |
|
123 </loctext> |
|
124 </common_name> |
|
125 </prop_pattern> |
|
126 </pg_pattern> |
|
127 </template> |
|
128 </service> |
|
129 </service_bundle> |