1 | @echo off
|
---|
2 | pushd "%CD%"
|
---|
3 | CD /D "%~dp0"
|
---|
4 |
|
---|
5 | set extdesc=the Solr Extension
|
---|
6 | if "%GSDL3SRCHOME%" == "" echo Run the toplevel gs3-setup.bat before calling this script& goto End
|
---|
7 |
|
---|
8 | rem IF USING TOMCAT SERVER FOR SOLR
|
---|
9 | :: If using tomcat, read the tomcat host and port from the toplevel GS3 build.properties
|
---|
10 | :: http://en.kioskea.net/faq/1757-how-to-read-a-file-line-by-line
|
---|
11 | :: The following reads build.properties line by line, tokenizing it around the = sign, then
|
---|
12 | :: sets the SOLR_PORT and SOLR_HOST to the values of tomcat.port and tomcat.host properties
|
---|
13 |
|
---|
14 | set SOLR_PORT=8383
|
---|
15 | set SOLR_HOST=127.0.0.1
|
---|
16 |
|
---|
17 | setlocal enabledelayedexpansion
|
---|
18 | set FOUNDPROPS=
|
---|
19 | :: The Solr servlet should only be locally accessible, thus restricting the protocol to http as
|
---|
20 | :: https certificates can't be issued for localhost/127.0.0.1 (https://letsencrypt.org/docs/certificates-for-localhost/)
|
---|
21 | :: This means we use the properties localhost.server.http (defaults to 127.0.0.1) and localhost.port.http
|
---|
22 | :: to construct the solr servlet url, rather than properties tomcat.server and tomcat.port.https
|
---|
23 | :: Loosely based on
|
---|
24 | :: http://stackoverflow.com/questions/7708681/how-to-read-from-a-properties-file-using-batch-script
|
---|
25 | :: for with usebackq option allows spaces in filepath to be protected with double quotes
|
---|
26 | :: (backquotes will be used for executing the commands)
|
---|
27 | :: See also https://stackoverflow.com/questions/5553040/batch-file-for-loop-with-spaces-in-dir-name
|
---|
28 | :: for alternative suggestions useful in other instances
|
---|
29 | FOR /F "usebackq tokens=1,2 delims==" %%G IN ("%GSDL3SRCHOME%\build.properties") DO (
|
---|
30 | if "%%G"=="localhost.server.http" set SOLR_HOST=%%H& set FOUNDPROPS=!FOUNDPROPS!found
|
---|
31 | if "%%G"=="localhost.port.http" set SOLR_PORT=%%H& set FOUNDPROPS=!FOUNDPROPS!found
|
---|
32 | :: break out of the loop as soon as both properties are found
|
---|
33 | if "!FOUNDPROPS!" == "foundfound" goto foundall
|
---|
34 | )
|
---|
35 |
|
---|
36 | :foundall
|
---|
37 | endlocal& set SOLR_HOST=%SOLR_HOST%& set SOLR_PORT=%SOLR_PORT%
|
---|
38 | echo Tomcat host: %SOLR_HOST%
|
---|
39 | echo Tomcat port: %SOLR_PORT%
|
---|
40 |
|
---|
41 |
|
---|
42 | rem IF USING JETTY SERVER FOR SOLR
|
---|
43 | :: The port Jetty runs on:
|
---|
44 | set SOLR_JETTY_PORT=8983
|
---|
45 |
|
---|
46 | :: The port Jetty listens on for a "stop" command
|
---|
47 | set JETTY_STOP_PORT=8079
|
---|
48 |
|
---|
49 | if "%OS%" == "Windows_NT" goto WinNT
|
---|
50 | if "%OS%" == "" goto Win95
|
---|
51 | if "%GSDLLANG%" == "en" echo Setup failed - your PATH has not been set
|
---|
52 | if "%GSDLLANG%" == "es" echo No se pudo realizar la configuraci¢n - no se ha establecido la RUTA.
|
---|
53 | if "%GSDLLANG%" == "fr" echo Echc de l'installation - votre variable PATH n'a pas t ajuste
|
---|
54 | if "%GSDLLANG%" == "ru" echo áâ ®¢ª ¥ 〠« áì - ¥ ¡ë« ãáâ ®¢«¥
|
---|
55 | goto End
|
---|
56 |
|
---|
57 | :WinNT
|
---|
58 | set GEXT_SOLR=%CD%
|
---|
59 | set PATH=%GEXT_SOLR%\bin\script;%PATH%
|
---|
60 | set PATH=%GEXT_SOLR%\lib;%PATH%
|
---|
61 | set GS_CP_SET=yes
|
---|
62 | goto Success
|
---|
63 |
|
---|
64 | :Win95
|
---|
65 | if "%1" == "SetEnv" goto Win95Env
|
---|
66 | REM We'll invoke a second copy of the command processor to make
|
---|
67 | REM sure there's enough environment space
|
---|
68 | COMMAND /E:2048 /K %0 SetEnv
|
---|
69 | goto End
|
---|
70 |
|
---|
71 | :Win95Env
|
---|
72 | set GEXT_SOLR=%CD%
|
---|
73 | set PATH="%GEXT_SOLR%\bin\script";"%PATH%"
|
---|
74 | set PATH="%GEXT_SOLR%\lib";"%PATH%"
|
---|
75 | set GS_CP_SET=yes
|
---|
76 | goto Success
|
---|
77 |
|
---|
78 | :Success
|
---|
79 |
|
---|
80 | set fulldir=%~dp0
|
---|
81 |
|
---|
82 | :: strip off everything up to (and including) ext dir
|
---|
83 | set extdir=%fulldir:*ext\=%
|
---|
84 |
|
---|
85 | :: remove trailing slash
|
---|
86 | set extdir=%extdir:\=%
|
---|
87 |
|
---|
88 | setlocal enabledelayedexpansion
|
---|
89 | if "x%GSDL3EXTS%" == "x" (
|
---|
90 | set GSDL3EXTS=!extdir!
|
---|
91 | ) else (
|
---|
92 | set GSDL3EXTS=!GSDL3EXTS!:!extdir!
|
---|
93 | )
|
---|
94 | endlocal & set GSDL3EXTS=%GSDL3EXTS%
|
---|
95 |
|
---|
96 | echo +Your environment is now setup for %extdesc%
|
---|
97 |
|
---|
98 | :: Back to delayed expansion to avoid problems with environment
|
---|
99 | :: variables with brackets in them, such as "Program Files (x86)"
|
---|
100 |
|
---|
101 | ::echo ++Solr/Jetty server will run on port %SOLR_JETTY_PORT% (+ port %JETTY_STOP_PORT% for shutdown command)
|
---|
102 | echo ++Solr will run off the tomcat server on port %SOLR_PORT%
|
---|
103 | echo --This port value can be changed by editing tomcat.port in build.properties
|
---|
104 | ::echo -- %0
|
---|
105 |
|
---|
106 |
|
---|
107 |
|
---|
108 | :End
|
---|
109 |
|
---|
110 | popd |
---|