Compare commits
10
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c77981e587 | ||
|
|
745ec999b4 | ||
|
|
1054da9b4e | ||
|
|
6226809e8d | ||
|
|
86f994cbe6 | ||
|
|
6ff8e49cf6 | ||
|
|
858eec188a | ||
|
|
73911f3192 | ||
|
|
8f50df5bd1 | ||
|
|
f9a2a84144 |
No files matched your search
@@ -6,21 +6,31 @@ OS: Ubuntu 18.04 / 22.04 (Recommendation)
|
||||
|
||||
Arch: amd64
|
||||
|
||||
Golang: go1.22.1 linux/amd64
|
||||
|
||||
Database: 10.6.16-MariaDB, Redis server v=5.0.5 (or above)
|
||||
|
||||
node.js: v18.16.0 (or above)
|
||||
- Golang: go1.24.2 linux/amd64
|
||||
- node.js: v20.18.0 (or above)
|
||||
|
||||
## Build Guide
|
||||
|
||||
```bash
|
||||
git clone https://xxx@bitbucket.org/bluearcuscom/ems.git omc.git
|
||||
cd omc.git
|
||||
git pull
|
||||
cd fe.ems.vue3
|
||||
npm install
|
||||
npm run build
|
||||
cd ../build.ems
|
||||
./build.sh deb
|
||||
# pwd
|
||||
cd /root/omc.git
|
||||
# ls
|
||||
# be.ems build.ems fe.ems.vue3
|
||||
cp build.ems/pkg.sh .
|
||||
bash pkg.sh --web --api -v 2.2508.1
|
||||
```
|
||||
|
||||
Encountered character error
|
||||
|
||||
error: `sed: -e expression #1, char 46: Invalid collation character`
|
||||
|
||||
```bash
|
||||
sudo apt-get update
|
||||
sudo apt-get install locales
|
||||
sudo locale-gen en_US.UTF-8
|
||||
sudo update-locale LANG=en_US.UTF-8
|
||||
source /etc/default/locale
|
||||
locale
|
||||
```
|
||||
+13
-25
@@ -31,7 +31,8 @@ fi
|
||||
# Use a new parameter list
|
||||
set -- "${new_args[@]}"
|
||||
|
||||
GitLocalRoot=${HOME}/omc.git
|
||||
RootDir=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
|
||||
GitLocalRoot=$(dirname $(dirname "$RootDir"))
|
||||
while getopts "r:d" option; do
|
||||
case $option in
|
||||
r)
|
||||
@@ -111,14 +112,6 @@ fi
|
||||
case "${pkgtype}" in
|
||||
rpm)
|
||||
echo "Begin to make ${pkgtype} package ======>"
|
||||
ReleasePkgDir=${ReleaseDir}/rpms/${RelArch}
|
||||
ProcList="restagent sshsvc"
|
||||
cd $EmsBEDir
|
||||
for procName in $ProcList;do
|
||||
cd $EmsBEDir/$procName
|
||||
echo "Make $procName ..."
|
||||
make
|
||||
done
|
||||
|
||||
cd $EmsBEDir
|
||||
# make rpm
|
||||
@@ -154,6 +147,7 @@ case "${pkgtype}" in
|
||||
cd ${RpmBuildDir}
|
||||
rpmbuild -bb -D "_topdir ${RpmBuildDir}" ${RpmBuildDir}/SPECS/omc.spec
|
||||
|
||||
ReleasePkgDir=${ReleaseDir}/rpms/${RelArch}
|
||||
mv -f $RpmsDir/$RpmArch/$RpmPkgName ${ReleasePkgDir}/$RpmPkgRename
|
||||
cd ${ReleasePkgDir}
|
||||
rm -f omc-md5sum.txt
|
||||
@@ -163,14 +157,6 @@ case "${pkgtype}" in
|
||||
;;
|
||||
deb)
|
||||
echo "Begin to make ${pkgtype} package ======>"
|
||||
ReleasePkgDir=${ReleaseDir}/debs/${RelArch}
|
||||
ProcList="restagent sshsvc"
|
||||
cd $EmsBEDir
|
||||
for procName in $ProcList;do
|
||||
cd $EmsBEDir/$procName
|
||||
echo "Make $procName ..."
|
||||
make
|
||||
done
|
||||
|
||||
VersionID=`grep VERSION_ID /etc/os-release`
|
||||
if [[ ${VersionID} =~ 'VERSION_ID="22.04"' ]]; then
|
||||
@@ -237,6 +223,7 @@ case "${pkgtype}" in
|
||||
#cp -rf ${BuildDir}/systemd/*.service ${DebBuildDir}/lib/systemd/system/
|
||||
chmod +x ${DebBuildDir}/usr/local/omc/bin/*
|
||||
sed -i "s/YYYYMMDD/${RelDate}/g" ${DebBuildDir}/DEBIAN/control
|
||||
ReleasePkgDir=${ReleaseDir}/debs/${RelArch}
|
||||
dpkg -b ${DebBuildDir} ${ReleasePkgDir}/${DebPkgFile}
|
||||
|
||||
cd ${ReleasePkgDir}
|
||||
@@ -247,14 +234,6 @@ case "${pkgtype}" in
|
||||
;;
|
||||
badeb)
|
||||
echo "Begin to make ${pkgtype} package ======>"
|
||||
ReleasePkgDir=${ReleaseDir}/debs/${RelArch}
|
||||
ProcList="restagent sshsvc"
|
||||
cd $EmsBEDir
|
||||
for procName in $ProcList;do
|
||||
cd $EmsBEDir/$procName
|
||||
echo "Make $procName ..."
|
||||
make
|
||||
done
|
||||
|
||||
VersionID=`grep VERSION_ID /etc/os-release`
|
||||
if [[ ${VersionID} =~ 'VERSION_ID="22.04"' ]]; then
|
||||
@@ -263,6 +242,14 @@ case "${pkgtype}" in
|
||||
DebFEBuildDir=${DebFEBuild2204Dir}
|
||||
#DebPkgFile=${PROJECT}-${VERSION}-22.04-${Release).${PLATFORM).deb
|
||||
DebPkgFile=${ProjectL}-r${RelVer}-ub22-ba.deb
|
||||
elif [[ ${VersionID} =~ 'VERSION_ID="24.04"' ]]; then
|
||||
DebBuildDir=${DebBuild2204Dir}
|
||||
DebBuildOMCDir=${DebBuild2204OMCDir}
|
||||
DebFEBuildDir=${DebFEBuild2204Dir}
|
||||
DebPkgFile=${PROJECT}-r${RelVer}-ub24.deb
|
||||
if [ ! $ProjectTag = "" ]; then
|
||||
DebPkgFile=${ProjectL}-r${RelVer}-ub24-${ProjectTag}.deb
|
||||
fi
|
||||
elif [[ ${VersionID} =~ 'VERSION_ID="18.04"' ]]; then
|
||||
DebPkgFile=${ProjectL}-r${RelVer}-ub18-ba.deb
|
||||
else
|
||||
@@ -306,6 +293,7 @@ case "${pkgtype}" in
|
||||
echo "Replace all chinese character."
|
||||
chmod +x ${DebBuildDir}/usr/local/omc/bin
|
||||
sed -i "s/YYYYMMDD/${RelDate}/g" ${DebBuildDir}/DEBIAN/control
|
||||
ReleasePkgDir=${ReleaseDir}/debs/${RelArch}
|
||||
dpkg -b ${DebBuildDir} ${ReleasePkgDir}/${DebPkgFile}
|
||||
|
||||
cd ${ReleasePkgDir}
|
||||
|
||||
+13
-3
@@ -76,7 +76,7 @@ buildcustomized=${builddir}/customized
|
||||
customizeddir=${buildcustomized}/${c_arg}.d
|
||||
|
||||
fedir=${rootdir}/fe.ems.vue3
|
||||
feassetsdir=${fedir}/src/assets
|
||||
feassetsdir=${fedir}/public
|
||||
felocalesdir=${fedir}/src/i18n/locales
|
||||
feconstantsdir=${fedir}/src/constants
|
||||
fehooksdir=${fedir}/src/hooks
|
||||
@@ -89,8 +89,9 @@ makefe() {
|
||||
# git checkout ${fehooksdir}
|
||||
git pull
|
||||
if [ "${pkgtype}" == "badeb" ]; then
|
||||
cp -rf ${customizeddir}/images/* ${feassetsdir}
|
||||
cp -rf ${customizeddir}/locales/* ${felocalesdir}
|
||||
cp -rf ${customizeddir}/images/background_light.jpg ${feassetsdir}/background/light.jpg
|
||||
cp -rf ${customizeddir}/images/background_dark.jpg ${feassetsdir}/background/dark.jpg
|
||||
cp -rf ${customizeddir}/locales/zh-CN.ts ${felocalesdir}/zh-CN.ts
|
||||
find "${feconstantsdir}" -type f -name '*.ts' -exec sed -i 's/[一-龥()“”,。?!]~·]//g' {} +
|
||||
find "${fehooksdir}" -type f -name '*.ts' -exec sed -i 's/[一-龥()“”,。?!]~·]//g' {} +
|
||||
fi
|
||||
@@ -110,6 +111,15 @@ makefe() {
|
||||
makebe() {
|
||||
cd ${builddir}/bin
|
||||
#chmod +x mkpkg.sh
|
||||
EmsBEDir=${rootdir}/be.ems
|
||||
ProcList="restagent sshsvc"
|
||||
cd $EmsBEDir
|
||||
for procName in $ProcList;do
|
||||
cd $EmsBEDir/$procName
|
||||
echo "Make $procName ..."
|
||||
make
|
||||
done
|
||||
|
||||
chmod +x build.sh
|
||||
./build.sh ${be_args[@]}
|
||||
}
|
||||
|
||||
@@ -107,12 +107,12 @@ fi
|
||||
# fi
|
||||
# done
|
||||
|
||||
if ! id -u omc >/dev/null 2>&1 ; then
|
||||
useradd -d /opt/omc -m -s /bin/bash -pomc123 omc;
|
||||
mkdir -p /opt/omc/ftp
|
||||
else
|
||||
echo "user omc exist";
|
||||
fi
|
||||
# if ! id -u omc >/dev/null 2>&1 ; then
|
||||
# useradd -d /opt/omc -m -s /bin/bash -pomc123 omc;
|
||||
# mkdir -p /opt/omc/ftp
|
||||
# else
|
||||
# echo "user omc exist";
|
||||
# fi
|
||||
|
||||
if [ ! -e "${NginxConfDir}/omc.conf" ]; then
|
||||
mkdir -p ${NginxConfDir}
|
||||
|
||||
@@ -0,0 +1,101 @@
|
||||
#!/bin/bash
|
||||
|
||||
# front-end Catalog
|
||||
WebDir=/root/omc.git/fe.ems.vue3
|
||||
WebBranch=multi-tenant
|
||||
BuildWeb=""
|
||||
# back-end Catalog
|
||||
ApiDir=/root/omc.git/be.ems
|
||||
ApiBranch=multi-tenant
|
||||
BuildApi=""
|
||||
# Package Catalog
|
||||
BuildDir=/root/omc.git/build.ems
|
||||
BuildBranch=multi-tenant
|
||||
# Default Version Value
|
||||
VERSION="2.2508.1"
|
||||
|
||||
# usage
|
||||
usage() {
|
||||
echo "Usage: bash $0 [OPTION]"
|
||||
echo
|
||||
echo "Build Software Package OPTION:"
|
||||
echo " -v Specify the version"
|
||||
echo " --web Build Web ($WebDir) Branch ($WebBranch)"
|
||||
echo " --api Build Api ($ApiDir) Branch ($ApiBranch)"
|
||||
echo " -h Display this help message"
|
||||
echo
|
||||
exit 1
|
||||
}
|
||||
# Read command line arguments
|
||||
while [[ $# -gt 0 ]]; do
|
||||
case "$1" in
|
||||
-v) VERSION="$2"; shift 2 ;;
|
||||
--web) BuildWeb="build"; shift ;;
|
||||
--api) BuildApi="build"; shift ;;
|
||||
*) usage ;;
|
||||
esac
|
||||
done
|
||||
|
||||
# =================== build branch
|
||||
echo
|
||||
cd $BuildDir
|
||||
rm -rf debbuild/*
|
||||
git checkout .
|
||||
git pull
|
||||
git checkout $BuildBranch
|
||||
git pull
|
||||
echo "===> build checkout directory: $BuildDir"
|
||||
|
||||
# =================== Web
|
||||
echo
|
||||
# Determine if --web is passed in
|
||||
if [ -n "$BuildWeb" ]; then
|
||||
cd $WebDir
|
||||
git checkout .
|
||||
git pull
|
||||
git checkout $WebBranch
|
||||
git pull
|
||||
|
||||
sed -i "s/VITE_APP_VERSION = .*/VITE_APP_VERSION = \"${VERSION}\"/g" $WebDir/.env.development
|
||||
sed -i "s/VITE_APP_VERSION = .*/VITE_APP_VERSION = \"${VERSION}\"/g" $WebDir/.env.production
|
||||
|
||||
cp -rf $BuildDir/customized/ba.d/images/background_light.jpg $WebDir/public/background/light.jpg
|
||||
cp -rf $BuildDir/customized/ba.d/images/background_dark.jpg $WebDir/public/background/dark.jpg
|
||||
cp -rf $BuildDir/customized/ba.d/locales/zh-CN.ts $WebDir/src/i18n/locales/zh-CN.ts
|
||||
|
||||
npm install --registry https://registry.npmmirror.com
|
||||
npm run build
|
||||
echo "===> build web directory: $WebDir"
|
||||
fi
|
||||
|
||||
# =================== Api
|
||||
echo
|
||||
# Determine if --api is passed in
|
||||
if [ -n "$BuildApi" ]; then
|
||||
cd $ApiDir
|
||||
git checkout .
|
||||
git pull
|
||||
git checkout $ApiBranch
|
||||
git pull
|
||||
|
||||
ProcList="restagent sshsvc"
|
||||
for procName in $ProcList;do
|
||||
cd $ApiDir/$procName
|
||||
sed -i "s/VERSION = .*/VERSION = ${VERSION}/g" $ApiDir/$procName/makefile
|
||||
echo "Make $procName ..."
|
||||
make
|
||||
done
|
||||
echo "===> build api directory: $ApiDir"
|
||||
fi
|
||||
|
||||
# =================== ba deb
|
||||
echo
|
||||
cd $BuildDir
|
||||
sed -i "s/VERSION=.*/VERSION=${VERSION}/g" $BuildDir/bin/build.sh
|
||||
sed -i "s/Version: .*/Version: ${VERSION}-YYYYMMDD-mt/g" $BuildDir/debbuild/DEBIAN/control
|
||||
sed -i "s/Version: .*/Version: ${VERSION}-YYYYMMDD-mt/g" $BuildDir/debbuild/22.04/DEBIAN/control
|
||||
sed -i "s/Version: .*/Version: ${VERSION}/g" $BuildDir/rpmbuild/SPECS/omc.spec
|
||||
bash bin/build.sh badeb
|
||||
|
||||
# bash pkg.sh --web --api -v 2.2508.1
|
||||
# bash pkg.sh --web --api
|
||||
Reference in new issue
Block a user