feat: build for 3rd party
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -86,3 +86,4 @@ yarn.lock
|
|||||||
# release
|
# release
|
||||||
release/debs/*.deb
|
release/debs/*.deb
|
||||||
release/tars/*.tar.gz
|
release/tars/*.tar.gz
|
||||||
|
release/src-tars/*.tar.gz
|
||||||
129
bin/build.sh
129
bin/build.sh
@@ -2,7 +2,8 @@
|
|||||||
ProjectL=wfc
|
ProjectL=wfc
|
||||||
ProjectU=WFC
|
ProjectU=WFC
|
||||||
RelDate=`date +%Y%m%d`
|
RelDate=`date +%Y%m%d`
|
||||||
GitRootDir=${HOME}/wfc.git
|
#GitRootDir=${HOME}/wfc.git
|
||||||
|
GitRootDir=$(dirname $(dirname $(dirname $(realpath $0))))
|
||||||
BERootDir=${GitRootDir}/be.wfc
|
BERootDir=${GitRootDir}/be.wfc
|
||||||
FERootDir=${GitRootDir}/fe.wfc
|
FERootDir=${GitRootDir}/fe.wfc
|
||||||
FEUserRootDir=${GitRootDir}/fe.wfc.user
|
FEUserRootDir=${GitRootDir}/fe.wfc.user
|
||||||
@@ -11,25 +12,49 @@ BuildRootDir=${GitRootDir}/build.wfc
|
|||||||
WFCWorkDir=/opt/wfc
|
WFCWorkDir=/opt/wfc
|
||||||
BuildDockerDir=${BuildRootDir}/build/docker
|
BuildDockerDir=${BuildRootDir}/build/docker
|
||||||
ReleseDir=${BuildRootDir}/release
|
ReleseDir=${BuildRootDir}/release
|
||||||
#TarFileName=${ProjectL}-${RelVersion}-${RelDate}.tar.gz
|
|
||||||
TmpDir=${BuildRootDir}/tmp
|
TmpDir=${BuildRootDir}/tmp
|
||||||
TmpEnvFile=${TmpDir}/.env.tmp
|
TmpEnvFile=${TmpDir}/.env.tmp
|
||||||
|
|
||||||
usage() {
|
usage() {
|
||||||
echo "Usage: sh build.sh [extras|jar|dist|copy|tar|deb|all]"
|
echo "Usage: sh build.sh [-g] [extras|jar|dist|copy|tar|src-tar|deb|all]"
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
pre_build_tar(){
|
SKIP_PRE_GIT_PULL=false
|
||||||
|
|
||||||
|
while getopts "g" opt; do
|
||||||
|
case ${opt} in
|
||||||
|
g )
|
||||||
|
SKIP_PRE_GIT_PULL=true
|
||||||
|
;;
|
||||||
|
\? )
|
||||||
|
usage
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
shift $((OPTIND -1))
|
||||||
|
|
||||||
|
pre-build-tar(){
|
||||||
if [ ! -d ${ReleseDir}/tars ]; then
|
if [ ! -d ${ReleseDir}/tars ]; then
|
||||||
mkdir -p ${ReleseDir}/tars
|
mkdir -p ${ReleseDir}/tars
|
||||||
fi
|
fi
|
||||||
if [ -f ${BuildDockerDir}/.env ]; then
|
source ${BuildRootDir}/bin/control.sh
|
||||||
mv -f ${BuildDockerDir}/.env ${TmpEnvFile}
|
|
||||||
fi
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pre_build_deb(){
|
pre-git-pull(){
|
||||||
|
cd ${BERootDir}
|
||||||
|
git pull
|
||||||
|
cd ${FERootDir}
|
||||||
|
git checkout src/typings/
|
||||||
|
git pull
|
||||||
|
cd ${FEUserRootDir}
|
||||||
|
git checkout src/typings/
|
||||||
|
git pull
|
||||||
|
cd ${BuildRootDir}
|
||||||
|
git pull
|
||||||
|
}
|
||||||
|
|
||||||
|
pre-build-deb(){
|
||||||
if [ ! -d ${ReleseDir}/debs ]; then
|
if [ ! -d ${ReleseDir}/debs ]; then
|
||||||
mkdir -p ${ReleseDir}/debs
|
mkdir -p ${ReleseDir}/debs
|
||||||
fi
|
fi
|
||||||
@@ -40,9 +65,6 @@ pre_build_deb(){
|
|||||||
|
|
||||||
build-extras(){
|
build-extras(){
|
||||||
cd ${BuildRootDir}
|
cd ${BuildRootDir}
|
||||||
git pull
|
|
||||||
source ${BuildRootDir}/bin/control.sh
|
|
||||||
TarFileName=${ProjectL}-${RelVersion}-${RelDate}.tar.gz
|
|
||||||
echo -n "Begin build extras file ... "
|
echo -n "Begin build extras file ... "
|
||||||
cd ${BuildRootDir}/bin
|
cd ${BuildRootDir}/bin
|
||||||
javac -source 8 -target 8 -bootclasspath /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/rt.jar -extdirs "" -Xlint:-options printJarVer.java
|
javac -source 8 -target 8 -bootclasspath /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/rt.jar -extdirs "" -Xlint:-options printJarVer.java
|
||||||
@@ -51,20 +73,32 @@ build-extras(){
|
|||||||
|
|
||||||
build-jar(){
|
build-jar(){
|
||||||
cd ${BERootDir}
|
cd ${BERootDir}
|
||||||
git pull
|
# git pull
|
||||||
mvn clean package -Dmaven.test.skip=true -P prod
|
mvn clean package -Dmaven.test.skip=true -P prod
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pre-build-src-tar(){
|
||||||
|
if [ ! -d ${ReleseDir}/src-tars ]; then
|
||||||
|
mkdir -p ${ReleseDir}/src-tars
|
||||||
|
fi
|
||||||
|
source ${BuildRootDir}/bin/control.sh
|
||||||
|
}
|
||||||
|
|
||||||
|
clean-jar(){
|
||||||
|
cd ${BERootDir}
|
||||||
|
mvn clean
|
||||||
|
}
|
||||||
|
|
||||||
build-dist(){
|
build-dist(){
|
||||||
cd ${FERootDir}
|
cd ${FERootDir}
|
||||||
git checkout src/typings/
|
# git checkout src/typings/
|
||||||
git pull
|
# git pull
|
||||||
pnpm i
|
pnpm i
|
||||||
pnpm build
|
pnpm build
|
||||||
|
|
||||||
cd ${FEUserRootDir}
|
cd ${FEUserRootDir}
|
||||||
git checkout src/typings/
|
# git checkout src/typings/
|
||||||
git pull
|
# git pull
|
||||||
if ! pnpm list terser --depth 0 &> /dev/null; then
|
if ! pnpm list terser --depth 0 &> /dev/null; then
|
||||||
pnpm add terser --save-dev
|
pnpm add terser --save-dev
|
||||||
fi
|
fi
|
||||||
@@ -73,13 +107,14 @@ build-dist(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
copy-file(){
|
copy-file(){
|
||||||
${BuildRootDir}/bin/copy.sh
|
${BuildRootDir}/bin/copy.sh ${GitRootDir}
|
||||||
cp -f ${BuildRootDir}/bin/printJarVer.class ${BuildRootDir}/build/bin/
|
cp -f ${BuildRootDir}/bin/printJarVer.class ${BuildRootDir}/build/bin/
|
||||||
}
|
}
|
||||||
|
|
||||||
# create tar package
|
# create tar package
|
||||||
create-tar(){
|
create-tar(){
|
||||||
echo -n "Begin build tar package ... "
|
TarFileName=${ProjectL}-${RelVersion}-${RelDate}.tar.gz
|
||||||
|
echo -n "Begin build tar package(${TarFileName}) ... "
|
||||||
cd ${BuildRootDir}/build
|
cd ${BuildRootDir}/build
|
||||||
tar cvfz ${ReleseDir}/tars/${TarFileName} \
|
tar cvfz ${ReleseDir}/tars/${TarFileName} \
|
||||||
--exclude='./docker/mysql/logs' \
|
--exclude='./docker/mysql/logs' \
|
||||||
@@ -92,13 +127,46 @@ create-tar(){
|
|||||||
echo "done"
|
echo "done"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# create source tar package
|
||||||
|
create-src-tar(){
|
||||||
|
SrcTarFileName=${ProjectL}-${RelVersion}-${RelDate}.src.tar.gz
|
||||||
|
echo -n "Begin build source tar package(${SrcTarFileName}) ... "
|
||||||
|
WFCRelativeDir=./wfc.git
|
||||||
|
BeRelativeDir=${WFCRelativeDir}/be.wfc
|
||||||
|
FeRelativeDir=${WFCRelativeDir}/fe.wfc
|
||||||
|
FeUserRelativeDir=${WFCRelativeDir}/fe.wfc.user
|
||||||
|
BuildRelativeDir=${WFCRelativeDir}/build.wfc
|
||||||
|
cd ${HOME}
|
||||||
|
tar cvfz ${ReleseDir}/src-tars/${SrcTarFileName} \
|
||||||
|
--exclude=${WFCRelativeDir}/.vscode \
|
||||||
|
--exclude=${BeRelativeDir}/.vscode \
|
||||||
|
--exclude=${FeRelativeDir}/.vscode \
|
||||||
|
--exclude=${FeUserRelativeDir}/.vscode \
|
||||||
|
--exclude=${BuildRelativeDir}/.vscode \
|
||||||
|
--exclude=${BeRelativeDir}/.github \
|
||||||
|
--exclude=${BeRelativeDir}/tmp \
|
||||||
|
--exclude=${BuildRelativeDir}/tmp \
|
||||||
|
--exclude=${FeRelativeDir}/dist \
|
||||||
|
--exclude=${FeRelativeDir}/node_modules \
|
||||||
|
--exclude=${FeUserRelativeDir}/dist \
|
||||||
|
--exclude=${FeUserRelativeDir}/node_modules \
|
||||||
|
--exclude=${BuildRelativeDir}/release \
|
||||||
|
--exclude=${BuildRelativeDir}/build/docker/wfc/auth/jar/*.jar \
|
||||||
|
--exclude=${BuildRelativeDir}/build/docker/wfc/gateway/jar/*.jar \
|
||||||
|
--exclude=${BuildRelativeDir}/build/docker/wfc/modules/*/jar/*.jar \
|
||||||
|
--exclude=${BuildRelativeDir}/build/docker/wfc/visual/jar/*.jar \
|
||||||
|
--exclude=${BuildRelativeDir}/bin/cpto205.sh \
|
||||||
|
${WFCRelativeDir} 1>/dev/null
|
||||||
|
echo "done"
|
||||||
|
}
|
||||||
|
|
||||||
# create deb package
|
# create deb package
|
||||||
create-deb(){
|
create-deb(){
|
||||||
echo -n "Begin build deb package ... "
|
echo -n "Begin build deb package ... "
|
||||||
echo "done"
|
echo "done"
|
||||||
}
|
}
|
||||||
|
|
||||||
post_build(){
|
post-build(){
|
||||||
if [ -f ${TmpEnvFile} ] && [ ! -f ${BuildDockerDir}/.env ]; then
|
if [ -f ${TmpEnvFile} ] && [ ! -f ${BuildDockerDir}/.env ]; then
|
||||||
mv -f ${TmpEnvFile} ${BuildDockerDir}/.env
|
mv -f ${TmpEnvFile} ${BuildDockerDir}/.env
|
||||||
fi
|
fi
|
||||||
@@ -118,22 +186,37 @@ case "$1" in
|
|||||||
copy-file
|
copy-file
|
||||||
;;
|
;;
|
||||||
"tar")
|
"tar")
|
||||||
# pre_build_tar
|
if [ "$SKIP_PRE_GIT_PULL" = false ]; then
|
||||||
|
pre-git-pull
|
||||||
|
fi
|
||||||
|
pre-build-tar
|
||||||
build-extras
|
build-extras
|
||||||
build-jar
|
build-jar
|
||||||
build-dist
|
build-dist
|
||||||
copy-file
|
copy-file
|
||||||
create-tar
|
create-tar
|
||||||
# post_build
|
# post-build
|
||||||
;;
|
;;
|
||||||
"deb")
|
"deb")
|
||||||
# pre_build_deb
|
if [ "$SKIP_PRE_GIT_PULL" = false ]; then
|
||||||
|
pre-git-pull
|
||||||
|
fi
|
||||||
|
# pre-build-deb
|
||||||
build-extras
|
build-extras
|
||||||
build-jar
|
build-jar
|
||||||
build-dist
|
build-dist
|
||||||
copy-file
|
copy-file
|
||||||
create-deb
|
create-deb
|
||||||
# post_build
|
# post-build
|
||||||
|
;;
|
||||||
|
"src-tar")
|
||||||
|
if [ "$SKIP_PRE_GIT_PULL" = false ]; then
|
||||||
|
pre-git-pull
|
||||||
|
fi
|
||||||
|
pre-build-src-tar
|
||||||
|
clean-jar
|
||||||
|
create-src-tar
|
||||||
|
# post-build
|
||||||
;;
|
;;
|
||||||
"all")
|
"all")
|
||||||
$0 tar
|
$0 tar
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
GitRootDir=${HOME}/wfc.git
|
GitRootDir=$(dirname $(dirname $(dirname $(realpath $0))))
|
||||||
BERootDir=${GitRootDir}/be.wfc
|
BERootDir=${GitRootDir}/be.wfc
|
||||||
FERootDir=${GitRootDir}/fe.wfc
|
FERootDir=${GitRootDir}/fe.wfc
|
||||||
FEUserRootDir=${GitRootDir}/fe.wfc.user
|
FEUserRootDir=${GitRootDir}/fe.wfc.user
|
||||||
@@ -16,6 +16,10 @@ usage() {
|
|||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if [ $# -ne 1 ]; then
|
||||||
|
GitRootDir=$1
|
||||||
|
fi
|
||||||
|
|
||||||
# copy sql
|
# copy sql
|
||||||
echo -n "Begin copy sql ... "
|
echo -n "Begin copy sql ... "
|
||||||
cp ${BERootDir}/sql/wfc_config_db/wfc_config_db.sql ${BuildDockerDir}/mysql/db
|
cp ${BERootDir}/sql/wfc_config_db/wfc_config_db.sql ${BuildDockerDir}/mysql/db
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
git_root_dir=${HOME}/wfc.git
|
git_root_dir=$(dirname $(dirname $(dirname $(realpath $0))))
|
||||||
build_root_dir=${git_root_dir}/build.wfc
|
build_root_dir=${git_root_dir}/build.wfc
|
||||||
build_doc_dir=${build_root_dir}/docs/03-configuration
|
build_doc_dir=${build_root_dir}/docs/03-configuration
|
||||||
local_tars_rel_dir=${build_root_dir}/release/tars
|
local_tars_rel_dir=${build_root_dir}/release/tars
|
||||||
|
|||||||
1
release/src-tars/readme.txt
Normal file
1
release/src-tars/readme.txt
Normal file
@@ -0,0 +1 @@
|
|||||||
|
src tar package is here
|
||||||
Reference in New Issue
Block a user