Richard Shih
6 years ago
8 changed files with 416 additions and 0 deletions
Split View
Diff Options
-
122zkweb/build.gradle
-
10zkweb/gradle.properties
-
BINzkweb/gradle/wrapper/gradle-wrapper.jar
-
6zkweb/gradle/wrapper/gradle-wrapper.properties
-
164zkweb/gradlew
-
90zkweb/gradlew.bat
-
1zkweb/settings.gradle
-
23zkweb/src/main/zkweb.iml
@ -0,0 +1,122 @@ |
|||
plugins { |
|||
id 'com.bmuschko.docker-remote-api' version '3.6.1' |
|||
id 'war' |
|||
} |
|||
sourceCompatibility = JavaVersion.VERSION_1_8 |
|||
targetCompatibility = JavaVersion.VERSION_1_8 |
|||
compileJava.options.encoding = "UTF-8" |
|||
|
|||
import com.bmuschko.gradle.docker.tasks.image.DockerBuildImage |
|||
import com.bmuschko.gradle.docker.tasks.image.DockerPushImage |
|||
import com.bmuschko.gradle.docker.tasks.image.Dockerfile |
|||
|
|||
group 'com.wanhai.tml' |
|||
version '1.0.1' |
|||
|
|||
ext{ |
|||
baseImgName="${docker_rep_url}/jboss/wildfly-base" |
|||
baseImgTag="latest" |
|||
targetImgName="${docker_rep_url}/wanhai/demo/${project.name.replaceAll("_","-").toLowerCase()}" |
|||
targetImgTag="${project.version}" |
|||
} |
|||
/***************Gardle Docker plugin setting***************************/ |
|||
docker{ |
|||
registryCredentials { |
|||
url = "http://${docker_rep_url}" |
|||
username = docker_rep_user |
|||
password = docker_rep_password |
|||
} |
|||
} |
|||
task prepareDockerBuild(type: Copy, dependsOn:build){ |
|||
from "${buildDir}/libs/${war.archiveName}" |
|||
into "${buildDir}/docker" |
|||
} |
|||
|
|||
task createDockerFile(type: Dockerfile,dependsOn: prepareDockerBuild){ |
|||
destFile=project.file("${buildDir}/docker/Dockerfile") |
|||
from "${baseImgName}:${baseImgTag}" |
|||
label(['Maintainer':'richard_shih@wanhai.com']) |
|||
copyFile "$war.archiveName",'${JBOSS_HOME}/standalone/deployments' |
|||
} |
|||
|
|||
task buildImage(type: DockerBuildImage, dependsOn: createDockerFile){ |
|||
inputDir = createDockerFile.destFile.parentFile |
|||
tag="${targetImgName}:${targetImgTag}" |
|||
} |
|||
|
|||
task pushImage(type: DockerPushImage, dependsOn: buildImage){ |
|||
imageName=buildImage.tag |
|||
} |
|||
/**********************************************************************/ |
|||
|
|||
/****************************Pipleline Tasks***************************/ |
|||
|
|||
/** |
|||
* build & deploy to server |
|||
*/ |
|||
task deploy(type: Exec,dependsOn: 'release'){ |
|||
def stackName="TML-${project.environment.toUpperCase()}" |
|||
def serviceName = "${project.name.replaceAll('_', '-')}" |
|||
def scriptPath = "${buildDir}/deploy.sh" |
|||
doFirst{ |
|||
//carete upgrade script before task start |
|||
if(project.hasProperty('isCI') && Boolean.valueOf(project.isCI)){ |
|||
File f = new File(scriptPath); |
|||
f.delete() |
|||
f.withWriter('utf-8') {writer -> |
|||
writer.writeLine "rancher export ${stackName} && cd ${stackName}" |
|||
writer.writeLine "rancher up -d --pull --upgrade --force-upgrade ${serviceName}" |
|||
writer.writeLine "cd .. && rm -rf ${stackName}" |
|||
} |
|||
f.setExecutable(true) |
|||
} |
|||
} |
|||
if(project.hasProperty('isCI') && Boolean.valueOf(project.isCI)){ |
|||
commandLine scriptPath |
|||
} |
|||
} |
|||
/** |
|||
* build & push to repository |
|||
*/ |
|||
task release(dependsOn: build){ |
|||
if(project.hasProperty('isCI') && Boolean.valueOf(project.isCI)){ |
|||
dependsOn pushImage |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* Entry point of pipleline |
|||
*/ |
|||
task pipleline(dependsOn: build){ |
|||
if(project.hasProperty('isCI') && Boolean.valueOf(project.isCI)){ |
|||
if(project.hasProperty('isRelease') && Boolean.valueOf(project.isRelease)){ |
|||
dependsOn release |
|||
} |
|||
if(project.hasProperty('isDeploy') && Boolean.valueOf(project.isDeploy)){ |
|||
dependsOn deploy |
|||
} |
|||
} |
|||
} |
|||
/**********************************************************************/ |
|||
war{ |
|||
manifest { |
|||
attributes("Implementation-Title": project.name, |
|||
"Implementation-Version": project.version, |
|||
"Implementation-Vendor":"WANHAI LINES LTD.", |
|||
"Built-By":"IT Division", |
|||
"Greated-By":"Gradle $gradle.gradleVersion", |
|||
"Java-Version": System.getProperty("java.version") + " " + "(" + System.getProperty("java.vm.vendor") + ")") |
|||
} |
|||
} |
|||
repositories { |
|||
maven { |
|||
url "http://${maven_rep_url}/repository/maven-public/" |
|||
} |
|||
} |
|||
dependencies { |
|||
providedCompile 'org.zkoss.zk:zkbind:8.0.2.2', |
|||
'org.zkoss.zk:zhtml:8.0.2.2', |
|||
'org.zkoss.zk:zkplus:8.0.2.2', |
|||
'org.zkoss.zk:zul:8.0.2.2' |
|||
providedCompile 'javax:javaee-api:7.0' |
|||
} |
@ -0,0 +1,10 @@ |
|||
environment=demos |
|||
profile=uat |
|||
docker_rep_url=khhwtml02t.wanhai.com:8182 |
|||
docker_rep_user=gradle |
|||
docker_rep_password=gradlebot |
|||
maven_rep_url=khhwtml02t.wanhai.com:8181 |
|||
maven_rep_user=gradle |
|||
maven_rep_password=gradlebot |
|||
buildAgent=gradle |
|||
isCI=false |
@ -0,0 +1,6 @@ |
|||
#Fri Aug 31 14:53:14 CST 2018 |
|||
distributionBase=GRADLE_USER_HOME |
|||
distributionPath=wrapper/dists |
|||
zipStoreBase=GRADLE_USER_HOME |
|||
zipStorePath=wrapper/dists |
|||
distributionUrl=https\://services.gradle.org/distributions/gradle-4.3.1-bin.zip |
@ -0,0 +1,164 @@ |
|||
#!/usr/bin/env bash |
|||
|
|||
############################################################################## |
|||
## |
|||
## Gradle start up script for UN*X |
|||
## |
|||
############################################################################## |
|||
|
|||
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. |
|||
DEFAULT_JVM_OPTS="" |
|||
|
|||
APP_NAME="Gradle" |
|||
APP_BASE_NAME=`basename "$0"` |
|||
|
|||
# Use the maximum available, or set MAX_FD != -1 to use that value. |
|||
MAX_FD="maximum" |
|||
|
|||
warn ( ) { |
|||
echo "$*" |
|||
} |
|||
|
|||
die ( ) { |
|||
echo |
|||
echo "$*" |
|||
echo |
|||
exit 1 |
|||
} |
|||
|
|||
# OS specific support (must be 'true' or 'false'). |
|||
cygwin=false |
|||
msys=false |
|||
darwin=false |
|||
case "`uname`" in |
|||
CYGWIN* ) |
|||
cygwin=true |
|||
;; |
|||
Darwin* ) |
|||
darwin=true |
|||
;; |
|||
MINGW* ) |
|||
msys=true |
|||
;; |
|||
esac |
|||
|
|||
# For Cygwin, ensure paths are in UNIX format before anything is touched. |
|||
if $cygwin ; then |
|||
[ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` |
|||
fi |
|||
|
|||
# Attempt to set APP_HOME |
|||
# Resolve links: $0 may be a link |
|||
PRG="$0" |
|||
# Need this for relative symlinks. |
|||
while [ -h "$PRG" ] ; do |
|||
ls=`ls -ld "$PRG"` |
|||
link=`expr "$ls" : '.*-> \(.*\)$'` |
|||
if expr "$link" : '/.*' > /dev/null; then |
|||
PRG="$link" |
|||
else |
|||
PRG=`dirname "$PRG"`"/$link" |
|||
fi |
|||
done |
|||
SAVED="`pwd`" |
|||
cd "`dirname \"$PRG\"`/" >&- |
|||
APP_HOME="`pwd -P`" |
|||
cd "$SAVED" >&- |
|||
|
|||
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar |
|||
|
|||
# Determine the Java command to use to start the JVM. |
|||
if [ -n "$JAVA_HOME" ] ; then |
|||
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then |
|||
# IBM's JDK on AIX uses strange locations for the executables |
|||
JAVACMD="$JAVA_HOME/jre/sh/java" |
|||
else |
|||
JAVACMD="$JAVA_HOME/bin/java" |
|||
fi |
|||
if [ ! -x "$JAVACMD" ] ; then |
|||
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME |
|||
|
|||
Please set the JAVA_HOME variable in your environment to match the |
|||
location of your Java installation." |
|||
fi |
|||
else |
|||
JAVACMD="java" |
|||
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. |
|||
|
|||
Please set the JAVA_HOME variable in your environment to match the |
|||
location of your Java installation." |
|||
fi |
|||
|
|||
# Increase the maximum file descriptors if we can. |
|||
if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then |
|||
MAX_FD_LIMIT=`ulimit -H -n` |
|||
if [ $? -eq 0 ] ; then |
|||
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then |
|||
MAX_FD="$MAX_FD_LIMIT" |
|||
fi |
|||
ulimit -n $MAX_FD |
|||
if [ $? -ne 0 ] ; then |
|||
warn "Could not set maximum file descriptor limit: $MAX_FD" |
|||
fi |
|||
else |
|||
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" |
|||
fi |
|||
fi |
|||
|
|||
# For Darwin, add options to specify how the application appears in the dock |
|||
if $darwin; then |
|||
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" |
|||
fi |
|||
|
|||
# For Cygwin, switch paths to Windows format before running java |
|||
if $cygwin ; then |
|||
APP_HOME=`cygpath --path --mixed "$APP_HOME"` |
|||
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` |
|||
|
|||
# We build the pattern for arguments to be converted via cygpath |
|||
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` |
|||
SEP="" |
|||
for dir in $ROOTDIRSRAW ; do |
|||
ROOTDIRS="$ROOTDIRS$SEP$dir" |
|||
SEP="|" |
|||
done |
|||
OURCYGPATTERN="(^($ROOTDIRS))" |
|||
# Add a user-defined pattern to the cygpath arguments |
|||
if [ "$GRADLE_CYGPATTERN" != "" ] ; then |
|||
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" |
|||
fi |
|||
# Now convert the arguments - kludge to limit ourselves to /bin/sh |
|||
i=0 |
|||
for arg in "$@" ; do |
|||
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` |
|||
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option |
|||
|
|||
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition |
|||
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` |
|||
else |
|||
eval `echo args$i`="\"$arg\"" |
|||
fi |
|||
i=$((i+1)) |
|||
done |
|||
case $i in |
|||
(0) set -- ;; |
|||
(1) set -- "$args0" ;; |
|||
(2) set -- "$args0" "$args1" ;; |
|||
(3) set -- "$args0" "$args1" "$args2" ;; |
|||
(4) set -- "$args0" "$args1" "$args2" "$args3" ;; |
|||
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; |
|||
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; |
|||
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; |
|||
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; |
|||
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; |
|||
esac |
|||
fi |
|||
|
|||
# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules |
|||
function splitJvmOpts() { |
|||
JVM_OPTS=("$@") |
|||
} |
|||
eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS |
|||
JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" |
|||
|
|||
exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" |
@ -0,0 +1,90 @@ |
|||
@if "%DEBUG%" == "" @echo off |
|||
@rem ########################################################################## |
|||
@rem |
|||
@rem Gradle startup script for Windows |
|||
@rem |
|||
@rem ########################################################################## |
|||
|
|||
@rem Set local scope for the variables with windows NT shell |
|||
if "%OS%"=="Windows_NT" setlocal |
|||
|
|||
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. |
|||
set DEFAULT_JVM_OPTS= |
|||
|
|||
set DIRNAME=%~dp0 |
|||
if "%DIRNAME%" == "" set DIRNAME=. |
|||
set APP_BASE_NAME=%~n0 |
|||
set APP_HOME=%DIRNAME% |
|||
|
|||
@rem Find java.exe |
|||
if defined JAVA_HOME goto findJavaFromJavaHome |
|||
|
|||
set JAVA_EXE=java.exe |
|||
%JAVA_EXE% -version >NUL 2>&1 |
|||
if "%ERRORLEVEL%" == "0" goto init |
|||
|
|||
echo. |
|||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. |
|||
echo. |
|||
echo Please set the JAVA_HOME variable in your environment to match the |
|||
echo location of your Java installation. |
|||
|
|||
goto fail |
|||
|
|||
:findJavaFromJavaHome |
|||
set JAVA_HOME=%JAVA_HOME:"=% |
|||
set JAVA_EXE=%JAVA_HOME%/bin/java.exe |
|||
|
|||
if exist "%JAVA_EXE%" goto init |
|||
|
|||
echo. |
|||
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% |
|||
echo. |
|||
echo Please set the JAVA_HOME variable in your environment to match the |
|||
echo location of your Java installation. |
|||
|
|||
goto fail |
|||
|
|||
:init |
|||
@rem Get command-line arguments, handling Windowz variants |
|||
|
|||
if not "%OS%" == "Windows_NT" goto win9xME_args |
|||
if "%@eval[2+2]" == "4" goto 4NT_args |
|||
|
|||
:win9xME_args |
|||
@rem Slurp the command line arguments. |
|||
set CMD_LINE_ARGS= |
|||
set _SKIP=2 |
|||
|
|||
:win9xME_args_slurp |
|||
if "x%~1" == "x" goto execute |
|||
|
|||
set CMD_LINE_ARGS=%* |
|||
goto execute |
|||
|
|||
:4NT_args |
|||
@rem Get arguments from the 4NT Shell from JP Software |
|||
set CMD_LINE_ARGS=%$ |
|||
|
|||
:execute |
|||
@rem Setup the command line |
|||
|
|||
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar |
|||
|
|||
@rem Execute Gradle |
|||
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% |
|||
|
|||
:end |
|||
@rem End local scope for the variables with windows NT shell |
|||
if "%ERRORLEVEL%"=="0" goto mainEnd |
|||
|
|||
:fail |
|||
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of |
|||
rem the _cmd.exe /c_ return code! |
|||
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 |
|||
exit /b 1 |
|||
|
|||
:mainEnd |
|||
if "%OS%"=="Windows_NT" endlocal |
|||
|
|||
:omega |
@ -0,0 +1 @@ |
|||
rootProject.name = 'zkweb' |
@ -0,0 +1,23 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<module type="JAVA_MODULE" version="4"> |
|||
<component name="FacetManager"> |
|||
<facet type="web" name="Web"> |
|||
<configuration> |
|||
<descriptors> |
|||
<deploymentDescriptor name="web.xml" url="file://$MODULE_DIR$/webapp/WEB-INF/web.xml" /> |
|||
</descriptors> |
|||
<webroots> |
|||
<root url="file://$MODULE_DIR$/webapp" relative="/" /> |
|||
</webroots> |
|||
</configuration> |
|||
</facet> |
|||
</component> |
|||
<component name="NewModuleRootManager" inherit-compiler-output="true"> |
|||
<exclude-output /> |
|||
<content url="file://$MODULE_DIR$/../.."> |
|||
<sourceFolder url="file://$MODULE_DIR$/java" isTestSource="false" /> |
|||
</content> |
|||
<orderEntry type="inheritedJdk" /> |
|||
<orderEntry type="sourceFolder" forTests="false" /> |
|||
</component> |
|||
</module> |
Write
Preview
Loading…
Cancel
Save