1 #############################################################################
2 #                                                                          ##
3 #    WildFly Startup Script for starting the domain server                 ##
4 #                                                                          ##
5 #############################################################################
6 
7 $scripts = (Get-ChildItem $MyInvocation.MyCommand.Path).Directory.FullName;
8 . $scripts'\common.ps1'
9 
10 $SERVER_OPTS = Process-Script-Parameters -Params $ARGS
11 
12 $JAVA_OPTS = Get-Java-Opts
13 
14 # Read an optional running configuration file
15 $DOMAIN_CONF = $scripts +'\domain.conf.ps1'
16 $DOMAIN_CONF = Get-Env RUN_CONF $DOMAIN_CONF
17 . $DOMAIN_CONF
18 
19 Write-Debug "sec mgr: $SECMGR"
20 
21 if ($SECMGR) {
22     $MODULE_OPTS +="-secmgr";
23 }
24 
25 Set-Global-Variables-Domain
26 
27 # consolidate the host-controller and command line opts
28 $HOST_CONTROLLER_OPTS=$HOST_CONTROLLER_JAVA_OPTS+$SERVER_OPTS
29 # process the host-controller options
30 foreach($p in $HOST_CONTROLLER_OPTS){
31 	if ($p -eq $null){# odd but could happen
32 		continue
33 	}
34 	$arg = $p.Trim()
35 	if ($arg.StartsWith('-Djboss.domain.base.dir')){
36 		$JBOSS_BASE_DIR=$p.Substring('-Djboss.domain.base.dir='.Length)
37 	}elseif ($arg.StartsWith('-Djboss.domain.log.dir')){
38 		$JBOSS_LOG_DIR=$p.Substring('-Djboss.domain.log.dir='.Length)
39 	}elseif ($arg.StartsWith('-Djboss.domain.config.dir')){
40 		$JBOSS_CONFIG_DIR=$p.Substring('-Djboss.domain.config.dir='.Length)
41 	}
42 }
43 
44 # If the -Djava.security.manager is found, enable the -secmgr and include a bogus security manager for JBoss Modules to replace
45 # Note that HOST_CONTROLLER_JAVA_OPTS will not need to be handled here
46 
47 if ( $PROCESS_CONTROLLER_JAVA_OPTS -contains 'java.security.manager') {
48     echo "ERROR: The use of -Djava.security.manager has been removed. Please use the -secmgr command line argument or SECMGR=true environment variable."
49     exit
50 }
51 
52 $MODULAR_JDK = SetModularJDK
53 $PROCESS_CONTROLLER_DEFAULT_MODULAR_JVM_OPTS = Get-Default-Modular-Jvm-Options -opts $PROCESS_CONTROLLER_JAVA_OPTS -modularJDK $MODULAR_JDK
54 $HOST_CONTROLLER_DEFAULT_MODULAR_JVM_OPTS = Get-Default-Modular-Jvm-Options -opts $HOST_CONTROLLER_JAVA_OPTS -modularJDK $MODULAR_JDK
55 
56 Display-Environment
57 
58 $PROG_ARGS = @()
59 $PROG_ARGS +='-DProcessController'
60 $PROG_ARGS += $PROCESS_CONTROLLER_JAVA_OPTS
61 if ($PROCESS_CONTROLLER_DEFAULT_MODULAR_JVM_OPTS -ne $null){
62 	$PROG_ARGS += $PROCESS_CONTROLLER_DEFAULT_MODULAR_JVM_OPTS
63 }
64 $PROG_ARGS += "-Dorg.jboss.boot.log.file=$JBOSS_LOG_DIR\process-controller.log"
65 $PROG_ARGS += "-Dlogging.configuration=file:$JBOSS_CONFIG_DIR\logging.properties"
66 $PROG_ARGS += "-Djboss.home.dir=$JBOSS_HOME"
67 $PROG_ARGS += "-jar"
68 $PROG_ARGS += "$JBOSS_HOME\jboss-modules.jar"
69 if ($MODULE_OPTS -ne $null){
70 	$PROG_ARGS += $MODULE_OPTS
71 }
72 $PROG_ARGS += "-mp"
73 $PROG_ARGS += $JBOSS_MODULEPATH
74 $PROG_ARGS += "org.jboss.as.process-controller"
75 if ($MODULE_OPTS -ne $null){
76 	$PROG_ARGS += $MODULE_OPTS
77 }
78 $PROG_ARGS += "-jvm"
79 $PROG_ARGS += "$JAVA"
80 $PROG_ARGS += "-jboss-home"
81 $PROG_ARGS += "$JBOSS_HOME"
82 $PROG_ARGS += "--"
83 $PROG_ARGS += "-Dorg.jboss.boot.log.file=$JBOSS_LOG_DIR\host-controller.log"
84 $PROG_ARGS += "-Dlogging.configuration=file:$JBOSS_CONFIG_DIR\logging.properties"
85 $PROG_ARGS += $HOST_CONTROLLER_JAVA_OPTS
86 if ($HOST_CONTROLLER_DEFAULT_MODULAR_JVM_OPTS -ne $null){
87 	$PROG_ARGS += $HOST_CONTROLLER_DEFAULT_MODULAR_JVM_OPTS
88 }
89 $PROG_ARGS += "--"
90 $PROG_ARGS += "-default-jvm"
91 $PROG_ARGS += $JAVA
92 if ($SERVER_OPTS -ne $null){
93 	$PROG_ARGS += $SERVER_OPTS
94 }
95 
96 
97 $backgroundProcess = Get-Env LAUNCH_JBOSS_IN_BACKGROUND 'false'
98 $runInBackGround = $global:RUN_IN_BACKGROUND -or ($backgroundProcess -eq 'true')
99 
100 Start-WildFly-Process -programArguments $PROG_ARGS -runInBackground $runInBackGround