Skip to content

Instantly share code, notes, and snippets.

@xlcommunity
Last active August 29, 2015 14:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save xlcommunity/c2b146b662c58a883b79 to your computer and use it in GitHub Desktop.
Save xlcommunity/c2b146b662c58a883b79 to your computer and use it in GitHub Desktop.
Install XL Release as a Windows Service
# THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS
# FOR A PARTICULAR PURPOSE. THIS CODE AND INFORMATION ARE NOT SUPPORTED BY XEBIALABS.
# WARNING - Do not modify any of the properties when an application
# using this configuration file has been installed as a service or daemon.
# Please uninstall the service before modifying this file. The
# service must then be reinstalled.
JAVA_HOME=C:\\Program Files\\Java\\jre7
DEPLOYIT_HOME=C:\\XebiaLabs\\xlrelease-4.0-beta-7-server
#********************************************************************
# Java Executable Properties
#********************************************************************
# Java Application
wrapper.java.command=${JAVA_HOME}\\bin\\java
# or define conditions for YAJSW searching for a JVM
# currently only valid for windows
#wrapper.java.command.minVersion=1.6
#wrapper.java.command.maxVersion=1.7
#wrapper.java.command.jreOnly=true
#wrapper.java.command.jdkOnly=true
#wrapper.java.command.preferJre=true
#wrapper.java.command.preferJdk=true
#wrapper.java.command.javaw=true
# copy java.exe to <tmp>/java_<customProcName>_nnnn.exe
#wrapper.java.customProcName=
#********************************************************************
# working directory
#********************************************************************
wrapper.working.dir=${DEPLOYIT_HOME}
# Java Main class.
# YAJSW: default is "org.rzo.yajsw.app.WrapperJVMMain"
# DO NOT SET THIS PROPERTY UNLESS YOU HAVE YOUR OWN IMPLEMENTATION
# wrapper.java.mainclass=
#********************************************************************
# tmp folder
# yajsw creates temporary files named in_.. out_.. err_.. jna..
# per default these are placed in jna.tmpdir.
# jna.tmpdir is set in setenv batch file to <yajsw>/tmp
#********************************************************************
#wrapper.tmp.path = ${jna.tmpdir}
wrapper.tmp.path = ${jna_tmpdir}
#********************************************************************
# Application main class or native executable
# One of the following properties MUST be defined
#********************************************************************
# Java Application main class
wrapper.java.app.mainclass=com.xebialabs.xlrelease.XLReleaseBootstrapper
#if you have set a repository keystore password
#wrapper.app.parameter.1=-repository-keystore-password
#wrapper.app.parameter.2=xxxxxxxx
# or jar file
#wrapper.java.app.jar=
# or groovy script file
#wrapper.groovy=
#or a native executable
#wrapper.image=
#********************************************************************
# Application process cpu priority and affinity
#********************************************************************
# Process priority: LOW, BELOW_NORMAL, NORMAL, ABOVE_NORMAL, HIGH
#wrapper.priority
# CPU affinity of the process. this is a bit-array representing the cpus
#wrapper.affinity=
#********************************************************************
# Application Account
# Equivalent to Posix sudo or windows runas
# Note Posix:
# <group>\<user> (note: use \\ in configuration file).
# If no group is configured default group of the user is used
#********************************************************************
#wrapper.app.account=
#wrapper.app.password=
#********************************************************************
# Java/Groovy Application Properties
#********************************************************************
# Java Classpath (include wrapper.jar) Add class path elements as
# needed starting from 1
# YAJSW: all libs required by YAJSW are in the manifest of the wrapper.jar -> only classpath of your application is required
wrapper.java.classpath.1=${DEPLOYIT_HOME}\\conf
wrapper.java.classpath.2=${DEPLOYIT_HOME}\\ext
wrapper.java.classpath.3=${DEPLOYIT_HOME}\\hotfix\\*.jar
wrapper.java.classpath.4=${DEPLOYIT_HOME}\\lib\\*.jar
wrapper.java.classpath.5=${DEPLOYIT_HOME}\\plugins\\*.jar
# Java Library Path
# YAJSW: required dll are encapsulated in jar files -> only library path of your application required
# wrapper.java.library.path.1=../lib
# Java Additional Parameters
wrapper.java.additional.1=-Ddeployit.home="${DEPLOYIT_HOME}"
wrapper.java.additional.2=-Dlogback.configurationFile=conf\\logback.xml
wrapper.java.additional.3=-Dderby.stream.error.file=log\\derby.log
#kerberos integration for WinRM using command line
#wrapper.java.additional.4=-Djava.security.krb5.realm=A.REALM.COM
#wrapper.java.additional.5=-Djava.security.krb5.kdc=A.KDC
# Initial Java Heap Size (in MB)
# alternative for wrapper.java.additional.<n>=-Xms
#wrapper.java.initmemory=3
# % of total RAM
#wrapper.java.initmemory.relative=10
# Maximum Java Heap Size (in MB)
# alternative for wrapper.java.additional.<n>=-Xmx
wrapper.java.maxmemory=1024
# % of total RAM
#wrapper.java.maxmemory.relative=30
# JSW requires that main class is set as app.parameter property
# YAJSW: to specify the main class please use wrapper.java.app.mainclass=
#********************************************************************
# Application environment properties.
#********************************************************************
# Adds an environment to the application
#wrapper.app.env.<key>=<value>
#********************************************************************
# Wrapper Logging Properties
#********************************************************************
# Format of output for the console. (See docs for formats)
# wrapper.console.format=PM
# Log Level for console output. (See docs for log levels)
wrapper.console.loglevel=INFO
# Log file to use for wrapper output logging.
wrapper.logfile=${DEPLOYIT_HOME}/log/wrapper.log
# Format of output for the log file. (See docs for formats)
#wrapper.logfile.format=LPTM
# Log Level for log file output. (See docs for log levels)
#wrapper.logfile.loglevel=INFO
# Maximum size that the log file will be allowed to grow to before
# the log is rolled. Size is specified in bytes. The default value
# of 0, disables log rolling by size. May abbreviate with the 'k' (kB) or
# 'm' (mB) suffix. For example: 10m = 10 megabytes.
# If wrapper.logfile does not contain the string ROLLNUM it will be automatically added as suffix of the file name
wrapper.logfile.maxsize=10m
# Maximum number of rolled log files which will be allowed before old
# files are deleted. The default value of 0 implies no limit.
wrapper.logfile.maxfiles=10
# Controls the roll mode of the log file
# possible values: DATE, WRAPPER, JVM
# If DATE is set wrapper.logfile should contain the string YYYYMMDD
# If DATE is set and wrapper.logfile.maxsize is set the log file will be rolled by size and date
# If DATE is set and wrapper.logfile.maxfiles older files rolled by size or date are deleted
#wrapper.logfile.rollmode=DATE
#********************************************************************
# Application Console Properties
#********************************************************************
# Indicate if console of the application is visible.
#wrapper.console.visible=false
# Title to use when running as a console
wrapper.console.title=XL Release
# Name of the service
wrapper.ntservice.name=XL Release 4.0.0-beta-7-server
# Display name of the service
wrapper.ntservice.displayname=${wrapper.ntservice.name}
# Description of the service
wrapper.ntservice.description=Deployit Deployment Automation Platform by XebiaLabs
# Service dependencies. Add dependencies as needed starting from 1
# wrapper.ntservice.dependency.1=
# Mode in which the service is installed. AUTO_START or DEMAND_START
wrapper.ntservice.starttype=DEMAND_START
# Allow the service to interact with the desktop.
# wrapper.ntservice.interactive=false
# wrapper service user. only for windows. on *nix system this is root.
# see also wrapper.app.account
#wrapper.ntservice.account=
#wrapper.ntservice.password=
#********************************************************************
# Wrapper Posix Daemon Properties
#********************************************************************
# Directory in which to create and execute daemon init scripts. Default: /etc/init.d
#wrapper.daemon.dir =
# Directory where to store the wrapper pid file. Default: /var/run
#wrapper.daemon.pid.dir =
# Directory in which to create K... and S... links.
# Default: <wrapper.daemon.dir>/rcX.d
# For Ubuntu set to /etc/rcX.d
# The following grooy script should set it correctly for most distros
wrapper.daemon.run_level_dir=${if (new File('\/etc\/rc0.d').exists()) return '\/etc\/rcX.d' else return '\/etc\/init.d\/rcX.d'}
# Setting the runlevels and priorities for automatic startup and stop of the daemon.
# Similar syntax as the update_rc.d command
# Default: equivalent to default of update_rc.d
#wrapper.update_rc = start 20 2 3 4 . start 30 5 . stop 80 0 1 6
#********************************************************************
# Wrapper System Tray Properties
#********************************************************************
# enable system tray
wrapper.tray = true
# TCP/IP port. If none is defined multicast discovery is used to find the port
# Set the port in case multicast is not possible.
wrapper.tray.port = 15002
# icon file to use, per default a console icon is used
#wrapper.tray.icon=
#********************************************************************
# Exit Code Properties
# Restart on non zero exit code
#********************************************************************
wrapper.on_exit.0=SHUTDOWN
wrapper.on_exit.default=RESTART
#********************************************************************
# Trigger actions on console output
#********************************************************************
# On Exception show message in system tray
wrapper.filter.trigger.0=Exception
wrapper.filter.script.0=scripts\/trayMessage.gv
wrapper.filter.script.0.args=Exception
#********************************************************************
# Wrapper JMX
#
# connect using for example jconsole per remote access using the url
#
# service:jmx:rmi:///jndi/rmi://localhost:1099/server
#
# eventl. change port and server name
#********************************************************************
# Enable wrapper JMX
#wrapper.jmx = true
# JMX RMI port. default is 1099
#wrapper.jmx.rmi.port =
# JMX RMI credentials
# mandatory if accessing from remote server
#wrapper.jmx.rmi.user =
#wrapper.jmx.rmi.password =
#********************************************************************
# Wrapper timeouts
#********************************************************************
# Number of seconds to allow between the time that the Wrapper starts the application
# and the application logon to the wrapper.
# Default: 30 seconds
wrapper.startup.timeout = 60
# Number of seconds to allow between the time that the Wrapper asks the application to shutdown and the time that the JVM shuts down.
# Default: 30 seconds
wrapper.shutdown.timeout = 60
# Number of seconds the wrapper waits for a ping message from the java application.
# If no heart beat is received within a timeout the wrapper assumes that the application
# is non responsive and will restart it.
# Default: 30 seconds
wrapper.ping.timeout = 60
#********************************************************************
# genConfig: further Properties generated by genConfig
#********************************************************************
placeHolderSoGenPropsComeHere=
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment