update link to upper-constraints.txt
[dmaap/messagerouter/messageservice.git] / src / main / swm / descriptor.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <!--
3      ============LICENSE_START=======================================================
4      org.onap.dmaap
5      ================================================================================
6      Copyright © 2017 AT&T Intellectual Property. All rights reserved.
7      ================================================================================
8      Licensed under the Apache License, Version 2.0 (the "License");
9      you may not use this file except in compliance with the License.
10      You may obtain a copy of the License at
11            http://www.apache.org/licenses/LICENSE-2.0
12      
13      Unless required by applicable law or agreed to in writing, software
14      distributed under the License is distributed on an "AS IS" BASIS,
15      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16      See the License for the specific language governing permissions and
17      limitations under the License.
18      ============LICENSE_END=========================================================
19    
20      ECOMP is a trademark and service mark of AT&T Intellectual Property.
21      
22  -->
23
24 <!-- This file is the main deployment descriptor for the SWM package generated 
25         for the project. -->
26         
27 <!-- For installing multiple versions of a Service onto the same SOA Cloud Node and maintaining former versions to switch between the
28         versions installed, you will have to change the following line to this:
29         
30         <descriptor version="1" concurrent="true" xmlns="http://aft.att.com/swm/descriptor"> 
31         
32         Adding the 'concurrent="true"' will allow for the concurrency of this Service. Please, NOTE, however, before creating a SWM Package
33         with this Service, you MUST update your Service through SWMCLI with the following command:
34         swmcli component update -c <componentName> -conc true
35         Once your Service has been updated to be concurrent, you MUST add the 'concurrent="true"' to ALL Versions of the Service -->
36         
37 <descriptor version="1" xmlns="http://aft.att.com/swm/descriptor">
38         <!-- This section describes what OS's and architectures are supported. Since 
39                 this is Java, we'll default to supporting any OS and architecture. -->
40         <platforms>
41                 <platform os="*" architecture="*" osVersions="*" />
42         </platforms>
43         <!-- This section describes the file locations and permissions and ownership 
44                 of those files. Only authorized users and groups for the component may be 
45                 used. -->
46         <paths>
47         <path name="${absoluteDistFilesRoot}" type="d"
48                         user="${installOwnerUser}" group="${installOwnerGroup}" permissions="0755,0644"
49                         recursive="true" />
50                 <path name="${distFilesRoot}" type="d"
51                         user="${installOwnerUser}" group="${installOwnerGroup}" permissions="0755,0644"
52                         recursive="true" />
53                 <path name="${distFilesRoot}/bundleconfig" type="d"
54                         user="${installOwnerUser}" group="${installOwnerGroup}" permissions="0755"
55                         recursive="true" />
56                 <path name="${distFilesRoot}/etc" type="d"
57                         user="${installOwnerUser}" group="${installOwnerGroup}" permissions="0755"
58                         recursive="true" />
59                 <path name="${distFilesRoot}/extJars" type="d"
60                         user="${installOwnerUser}" group="${installOwnerGroup}" permissions="0755"
61                         recursive="true" />
62                 <path name="${distFilesRoot}/extApps" type="d"
63                         user="${installOwnerUser}" group="${installOwnerGroup}" permissions="0755"
64                         recursive="true" />
65                 <path name="${distFilesRoot}/conf" type="d"
66                         user="${installOwnerUser}" group="${installOwnerGroup}" permissions="0755"
67                         recursive="true" />
68                 <path name="${distFilesRoot}/lib" type="d"
69                         user="${installOwnerUser}" group="${installOwnerGroup}" permissions="0755"
70                         recursive="true" />
71                 <path name="${distFilesRoot}/docs" type="d"
72                         user="${installOwnerUser}" group="${installOwnerGroup}" permissions="0755"
73                         recursive="true" />
74                 <path name="${distFilesRoot}/runtime" type="d"
75                         user="${installOwnerUser}" group="${installOwnerGroup}" permissions="0755"
76                         recursive="true" />
77                 <path name="${distFilesRoot}/services" type="d"
78                         user="${installOwnerUser}" group="${installOwnerGroup}" permissions="0755"
79                         recursive="true" />
80
81         </paths>
82         <!-- This section describes the package lifecycle scripts and the users 
83                 and groups they should run as. Only authorized users and groups for the component 
84                 may be used. -->
85         <actions>
86                 <action type="DINST">
87                         <proc stage="POST" user="${installOwnerUser}" group="${installOwnerGroup}" />
88                         <proc stage="PRE" user="${installOwnerUser}" group="${installOwnerGroup}" />
89                 </action>
90                 <action type="FALL">
91                         <proc stage="POST" user="${installOwnerUser}" group="${installOwnerGroup}" />
92                         <proc stage="PRE" user="${installOwnerUser}" group="${installOwnerGroup}" />
93                 </action>
94                 <action type="INIT">
95                         <proc stage="POST" user="${installOwnerUser}" group="${installOwnerGroup}" />
96                         <proc stage="PRE" user="${installOwnerUser}" group="${installOwnerGroup}" />
97                 </action>
98                 <action type="INST">
99                         <proc stage="POST" user="${installOwnerUser}" group="${installOwnerGroup}" />
100                         <proc stage="PRE" user="${installOwnerUser}" group="${installOwnerGroup}" />
101                 </action>
102         </actions>
103         <!-- This section describes the variables that are used during package installation. 
104                 Where required=true, the installer must ensure the environment contains this 
105                 variable by attaching a value for the variable to the SWM node or a node 
106                 group which the SWM node is a member of. The installer may also override 
107                 items that have a defaultValue. Additional variables can be added to this 
108                 list and used in template.* files in your project. To use one, put template 
109                 replacement text starting and ending with double-underscores and the variable 
110                 key in between. Example: __MY_VAR_KEY__. During installation, these are replaced 
111                 in the template.* file and the template.* file is renamed to remove the template. 
112                 from the name. -->
113         <variableDescriptions>
114                 <variableDescription key="JAVA_VERSION"
115                         description="The Java version to use." defaultValue="1.7" required="false" />
116                 <variableDescription key="JAVA_PRE_CLASSPATH"
117                         description="Additional classpath information to preprend to the installed classpath."
118                         defaultValue=":" required="false" />
119                 <variableDescription key="JAVA_POST_CLASSPATH"
120                         description="Additional classpath information to preprend to the installed classpath."
121                         defaultValue=":" required="false" />
122                 <variableDescription key="PRE_JVM_ARGS"
123                         description="Additional JVM arguments to prepend to the JVM startup command."
124                         defaultValue=" " required="false" />
125                 <variableDescription key="POST_JVM_ARGS"
126                         description="Additional JVM arguments to append to the end of the JVM startup command."
127                         defaultValue=" " required="false" />
128                 <variableDescription key="MAX_PERM_SIZE"
129                         description="The maximum perm size to use when starting the JVM"
130                         defaultValue="256m" required="false" />
131                 <variableDescription key="PERM_SIZE"
132                         description="The initial perm size to use when starting the JVM"
133                         defaultValue="32m" required="false" />
134                 <variableDescription key="MIN_HEAP_SIZE"
135                         description="The mimimum heap size to use when starting the JVM."
136                         defaultValue="512m" required="false" />
137                 <variableDescription key="MAX_HEAP_SIZE"
138                         description="The maximum heap size to use when starting the JVM."
139                         defaultValue="512m" required="false" />
140                 <variableDescription key="LRM_VALIDATEPID_WAITTIME_SECONDS"
141                         description="The amount of time LRM should wait to validate the health of the PID after startup"
142                         defaultValue="4" required="false" />
143                 <variableDescription key="LRM_RESOURCE_START_TYPE"
144                         description="The type of startup LRM should perform on the resource."
145                         defaultValue="MANUAL" required="false" />
146                 <variableDescription key="LRM_START_PRIORITY"
147                         description="The priority sequence to use when starting the resource."
148                         defaultValue="0" required="false" />
149                 <variableDescription key="LRM_START_TIMEOUT"
150                         description="The timeout on the startup." defaultValue="100"
151                         required="false" />
152                 <variableDescription key="RESOURCE_MIN_COUNT"
153                         description="The default minimum number of instances LRM should maintain."
154                         defaultValue="1" required="false" />
155                         
156                         <variableDescription key="LRM_START_SVC"
157                         description="To auto start the service."
158                         defaultValue="true" required="false" />
159                         
160                         
161                 <variableDescription key="RESOURCE_MAX_COUNT"
162                         description="The maximum number of instances LRM should allow."
163                         defaultValue="5" required="false" />
164                 <variableDescription key="LRM_RESOURCE_MAX_RESTART"
165                         description="The maximum number of restarts LRM should perform before giving up."
166                         defaultValue="10" required="false" />
167                 <variableDescription key="LRM_RESOURCE_HEARTBEAT"
168                         description="Time in seconds indicating how long to wait between heartbeat attempts."
169                         defaultValue="180" required="false" />
170                 <variableDescription key="LRM_RESOURCE_HEARTBEAT_FAILED_LIMIT"
171                         description="Consecutive heartbeat failure threshold before an error is assumed and appropriate action taken."
172                         defaultValue="3" required="false" />
173                 <variableDescription key="LRM_RESOURCE_HEARTBEAT_TIMEOUT"
174                         description="Timeout of heartbeats" defaultValue="2" required="false" />
175                 <variableDescription key="RESOURCE_MANAGER_WAIT_TIME_IN_SECONDS"
176                         description="Indicates the time in seconds that LRM waits for the resource to shutdown."
177                         defaultValue="180" required="false" />
178                 <variableDescription key="LRM_RESOURCE_REGISTRATION"
179                         description="Flag that indicates if resource needs to be registered in the SOA Cloud."
180                         defaultValue="true" required="false" />
181                 <variableDescription key="PROC_SKIP_START_NEW_ON_ZERO_INSTANCES"
182                         description="Indicates that the postproc should not start an initial instance of the service during installation."
183                         defaultValue="false" required="false" />
184                 <variableDescription key="AJSC_RUNTIME_VERSION"
185                         description="the version of ajsc" defaultValue="${ajscRuntimeVersion}"
186                         required="false" />
187                 <variableDescription key="AJSC_CONF_HOME"
188                         description="External location where AJSC can locate all required config files for its boot up"
189                         defaultValue="$INSTALL_ROOT${distFilesRoot}/bundleconfig" required="false" />
190                 <variableDescription key="AJSC_SHARED_CONFIG"
191                         description="External location where AJSC can locate the logback configuration file for system wide logging"
192                         defaultValue="$INSTALL_ROOT${distFilesRoot}/bundleconfig" required="false" />                   
193                 <variableDescription key="AJSC_CONTEXT"
194                         description="The context in which the service will run. Defaults to the root context, /"
195                         defaultValue="/" required="false" />
196                 <variableDescription key="AJSC_APP_SERVLET_URL_PATTERN"
197                         description="This is required for proper GRM Registration of your att-dme2-serlet endpoints. This should match the value from ajsc-override-web.xml"
198                         defaultValue="/services" required="false" />
199                 <variableDescription key="AJSC_SVC_PORT"
200                         description="the port for the embedded jetty server to listen on. A value of 0 will utilize ephemeral port selection"
201                         defaultValue="${serverPort}" required="false" />
202                 <variableDescription key="AJSC_SSL_PORT"
203                         description="the port for SSL" defaultValue="${sslport}" required="false" />
204                 <variableDescription key="AJSC_AUTH_SCHEME"
205                         description="AJSC Basic Authentication scheme - authentication-scheme-1 turns on, authentication-scheme-2 turns off" defaultValue="authentication-scheme-2"
206                         required="false" />
207                 <variableDescription key="AJSC_PERSISTENCE"
208                         description="meta data persistence. Can be riak, cassandra, or file" defaultValue="file"
209                         required="false" />
210                 <variableDescription key="AJSC_ENABLE_SSL"
211                         description="ssl true/false. A value of true will enable, and will register your service as https" defaultValue="false"
212                         required="false" />
213                 <variableDescription key="CSI_ENABLE"
214                         description="csi logging true/false. A value of true will enable, and a value of false will disable" defaultValue="true"
215                         required="false" />
216                 <variableDescription key="IS_CAET_ENABLE"
217                         description="CAET enable/disable " defaultValue="true"
218                         required="false" />                     
219                 <variableDescription key="ENABLE_EJB"
220                         description="enable EJB container true/false. A value of true will enable, and a value of false will disable the container" defaultValue="false"
221                         required="false" />
222                 <variableDescription key="OSGI_ENABLE"
223                         description="enable OSGI container true/false. A value of true will enable OSGI, and a value of false will disable OSGI" defaultValue="false"
224                         required="false" />
225                 <variableDescription key="JMS_TIBCO_PROVIDER_URL"
226                         description="JMS TIBCO PROVIDER URL" defaultValue="tcp://q27csi1c3.vci.att.com:27812"
227                         required="false" />
228                 <variableDescription key="JMS_LOGGER_USER_NAME"
229                         description="JMS LOGGER USER NAME" defaultValue="sg"
230                         required="false" />
231                 <variableDescription key="JMS_LOGGER_PASSWORD"
232                         description="JMS LOGGER PASSWORD" defaultValue="its4test"
233                         required="false" />
234                 <variableDescription key="JMS_LOGGER_AUDIT_QUEUE_BINDING"
235                         description="JMS LOGGER AUDIT QUEUE_BINDING" defaultValue="pub.m2e.AJSC.Audit.logger.queue"
236                         required="false" />
237                 <variableDescription key="JMS_LOGGER_PERF_QUEUE_BINDING"
238                         description="JMS LOGGER PERF QUEUE BINDING" defaultValue="pub.m2e.AJSC.Perf.logger.queue"
239                         required="false" />
240                 <variableDescription key="LOGBACK_CONFIG_FILE"
241                         description="The location of the logback.xml file which controls the loggin configuration."
242                         defaultValue="$INSTALL_ROOT${distFilesRoot}/bundleconfig/etc/logback.xml" required="false" />
243                 <variableDescription key="LOGBACK_LOG_LEVEL"
244                         description="The logging level to use when configuring logback logging backend."
245                         defaultValue="INFO" required="false" />
246                 <variableDescription key="END_POINT_LEVEL_LOGGING"
247                         description="endpointLogging true/false. A value of true will enable, and a value of false will disable" defaultValue="false"
248                         required="false" />
249                 <variableDescription key="AJSC_CADI_AUTHN"
250                         description="Cadi enabled/disabled. If you are using GLO Cadi filter, use authentication-scheme-1.
251                                 If you do NOT want to use the Cadi filter, use authentication-scheme-2" defaultValue="authentication-scheme-1"
252                         required="false" />
253                 <variableDescription key="AJSC_SERVICE_NAMESPACE"
254                         description="AJSC Service Namespace" defaultValue="${module.ajsc.namespace.name}"
255                         required="false" />
256                 <variableDescription key="AJSC_SERVICE_VERSION"
257                         description="AJSC Service Version" defaultValue="${module.ajsc.namespace.version}"
258                         required="false" />
259                 <variableDescription key="AJSC_JETTY_ThreadCount_MIN"
260                         description="AJSC Jetty Min Thread Count" defaultValue="10" required="false" />
261                 <variableDescription key="AJSC_JETTY_ThreadCount_MAX"
262                         description="AJSC Jetty Max Thread Count" defaultValue="200"
263                         required="false" />
264                 <variableDescription key="AJSC_JETTY_IDLETIME_MAX"
265                         description="AJSC Jetty Max Idle TimeOut" defaultValue="60000"
266                         required="false" />
267                 <variableDescription key="SOA_CLOUD_NAMESPACE"
268                         description="the Namespace used for GRM service registrations"
269                         defaultValue="org.onap.dmaap" required="false" />
270                 <variableDescription key="AFT_SERVICE_ENV"
271                         description="the AFT Servie Env found within CSI used for GRM service registrations (routeOffer)"
272                         defaultValue="DEFAULT" required="false" />
273                 <variableDescription key="SOA_CLOUD_ENV"
274                         description="Set to TRUE for service to register with DME2 in a SOA Cloud Environment"
275                         defaultValue="TRUE" required="false" />
276                 <variableDescription key="SOACLOUD_ENV_CONTEXT"
277                         description="This is the value that will be used as envContext in DME2 registration of service and should match the SCLD_ENV of the Node already set"
278                         defaultValue="DEV" required="false" />
279                 <variableDescription key="AJSC_ENV"
280                         description="Production Environment for the AJSC. Select from SOACLOUD, DEV, QA, PROD, and PREPROD"
281                         defaultValue="DEV" required="false" />
282                 <variableDescription key="SOACLOUD_PROTOCOL"
283                         description="Protocol being used by the service"
284                         defaultValue="http" required="false" />
285                 <variableDescription key="SCAMPER_ENABLED"
286                         description="Indicate if Scamper config file generation is enabled"
287                         defaultValue="false" required="false" />
288                 <variableDescription key="DME2_LIB"
289                         description="DME2 Library Location for external dme2 library"
290                         defaultValue="$INSTALL_ROOT/opt/app/aft/dme2/lib" required="false" />
291                 <variableDescription key="CSM_LIB"
292                         description="CSM Library Location for external dme2 library"
293                         defaultValue="$INSTALL_ROOT/appl/external_libs/csi-csm/1.1.1/lib" required="false" />
294                 <variableDescription key="AJSC_SSF_FILE_MONITOR_POLLING_INTERVAL"
295                         description="AJSC Internal File Monitor Polling Interval in Seconds" defaultValue="5"
296                         required="false" />     
297                 <variableDescription key="AJSC_SSF_FILE_MONITOR_THREAD_POOL_SIZE"
298                         description="AJSC Internal File Monitor ThreadPool Size" defaultValue="10"
299                         required="false" />
300                 <variableDescription key="AFT_DME2_CONN_IDLE_TIMEOUTMS"
301                         description="DME2 Idle Connection TimeOut In ms" defaultValue="5000"
302                         required="false" />
303                 <variableDescription key="HAWTIO_AUTHENTICATION_ENABLED"
304                         description="HawtIO Authentication Flag" defaultValue="false"
305                         required="false" />
306                 <variableDescription key="HAWTIO_CONFIG_PULLONSTARTUP"
307                         description="HawtIO Config Pull on Startup" defaultValue="false"
308                         required="false" />
309                 <variableDescription key="CAMEL_POOL_SIZE"
310                         description="Pool size to set in default threadPool profile for Camel Context" defaultValue="10"
311                         required="false" />
312                 <variableDescription key="CAMEL_MAX_POOL_SIZE"
313                         description="Max pool size to set in default threadPool profile for Camel Context" defaultValue="20"
314                         required="false" />
315                 <variableDescription key="CAMEL_KEEP_ALIVE_TIME"
316                         description="Idle time (in Seconds) for excess threads to wait before they are discarded." defaultValue="60"
317                         required="false" />
318                 <variableDescription key="CAMEL_MAX_QUEUE_SIZE"
319                         description="The task queue can contain up to n tasks before the pool is exhausted." defaultValue="1000"
320                         required="false" />                                                                     
321                 <variableDescription key="LOGBACK_CONFIG_FILE"
322                         description="Logback configuration file location" defaultValue="${distFilesRoot}/etc/logback.xml"
323                         required="false" />             
324                 <variableDescription key="RESTLET_COMPONENT_CONTROLLER_DAEMON"
325                         description="Indicates if the controller thread should be a daemon (not blocking JVM exit)." defaultValue="true"
326                         required="false" />
327                 <variableDescription key="RESTLET_COMPONENT_CONTROLLER_SLEEP_TIME_MS"
328                         description="Time for the controller thread to sleep between each control." defaultValue="100"
329                         required="false" />
330                 <variableDescription key="RESTLET_COMPONENT_INBOUND_BUFFER_SIZE"
331                         description="The size of the buffer when reading messages." defaultValue="8192"
332                         required="false" />             
333                 <variableDescription key="RESTLET_COMPONENT_MIN_THREADS"
334                         description="Minimum threads waiting to service requests." defaultValue="1"
335                         required="false" />
336                 <variableDescription key="RESTLET_COMPONENT_MAX_THREADS"
337                         description="Maximum threads that will service requests." defaultValue="10"
338                         required="false" />     
339                 <variableDescription key="RESTLET_COMPONENT_LOW_THREADS"
340                         description="Number of worker threads determining when the connector is considered overloaded." defaultValue="8"
341                         required="false" />     
342                 <variableDescription key="RESTLET_COMPONENT_MAX_QUEUED"
343                         description="Maximum number of calls that can be queued if there aren't any worker thread available to service them." defaultValue="0"
344                         required="false" />     
345                 <variableDescription key="RESTLET_COMPONENT_MAX_CONNECTIONS_PER_HOST"
346                         description="Maximum number of concurrent connections per host (IP address)." defaultValue="-1"
347                         required="false" />
348                 <variableDescription key="RESTLET_COMPONENT_MAX_TOTAL_CONNECTIONS"
349                         description="Maximum number of concurrent connections in total." defaultValue="-1"
350                         required="false" />     
351                 <variableDescription key="RESTLET_COMPONENT_OUTBOUND_BUFFER_SIZE"
352                         description="The size of the buffer when writing messages." defaultValue="8192"
353                         required="false" />
354                 <variableDescription key="RESTLET_COMPONENT_PERSISTING_CONNECTIONS"
355                         description="Indicates if connections should be kept alive after a call." defaultValue="true"
356                         required="false" />     
357                 <variableDescription key="RESTLET_COMPONENT_PIPELINING_CONNECTIONS"
358                         description="Indicates if pipelining connections are supported." defaultValue="false"
359                         required="false" />
360                 <variableDescription key="RESTLET_COMPONENT_THREAD_MAX_IDLE_TIME_MS"
361                         description="Time for an idle thread to wait for an operation before being collected." defaultValue="60000"
362                         required="false" />     
363                 <variableDescription key="RESTLET_COMPONENT_USE_FORWARDED_HEADER"
364                         description="Lookup the X-Forwarded-For header supported by popular proxies and caches and uses it to populate the Request.getClientAddresses() method result." defaultValue="false"
365                         required="false" />
366                 <variableDescription key="RESTLET_COMPONENT_REUSE_ADDRESS"
367                         description="Enable/disable the SO_REUSEADDR socket option. See java.io.ServerSocket#reuseAddress property for additional details." defaultValue="true"
368                         required="false" />     
369                 <variableDescription key="AJSC_EXTERNAL_LIB_FOLDERS"
370                         description="Location of external libs to be used by AJSC. Values here will be in addition to libs in template.sys-props.properties." defaultValue=""
371                         required="false" />     
372                 <variableDescription key="AJSC_EXTERNAL_PROPERTIES_FOLDERS"
373                         description="Location of external property folders that may be needed on the classpath (ex: csm) to be used by AJSC. Values here will be in addition to libs in template.sys-props.properties." defaultValue=""
374                         required="false" />             
375                 <variableDescription key="ENABLE_TRAIL_LOGGING"
376                         description="enable logging of the routes" defaultValue="false"
377                         required="false" />     
378                 <variableDescription key="ENABLE_TRAIL_LOGGING_SUMMARY"
379                         description="enable logging of the routes and summary" defaultValue="false"
380                         required="false" />     
381                 <variableDescription key="API_DOC"
382                         description="enable generation of metadata for swagger UI" defaultValue="false"
383                         required="false" />     
384         </variableDescriptions>
385 </descriptor>
386