Skip to content
Snippets Groups Projects
Commit c87b1a3c authored by alexandr.kravchenko's avatar alexandr.kravchenko
Browse files

Moved out prod_build to separate submodule.

parent 813dc50c
No related branches found
No related tags found
1 merge request!11Cellframe clone
Showing
with 4 additions and 178 deletions
......@@ -10,3 +10,6 @@
path = dap-ui-sdk
url = https://gitlab.demlabs.net/dap/dap-ui-sdk
branch = master
[submodule "prod_build"]
path = prod_build
url = ../prod_build_cellframe-dashboard
Subproject commit bb76e31cdc8287d0e07ca1fcff2039f434095de7
ANDROID_NDK_HOME="/opt/android-ndk-r16b"
SDKROOT="/opt/android-sdk/bin"
NDKHOST="linux-x86_64"
JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64"
ANDRQT_HOME="/usr/lib/crossdev"
HOST_DISTR_VERSIONS="stretch"
HOST_ARCH_VERSIONS="amd64"
RES_PATH=SapNetGui/resources/UltraPad/platforms/android
WORK_PATH=../sapnet-client-build
BRAND=UltraPad
ARCH_VERSIONS="arm64-v8a armv7 x86 x86_64 arm"
PACKAGE_PATH=builds/apk/
VERSION_FILE=config.pri
VERSION_ENTRIES="VER_MAJ VER_MIN VER_PAT VER_CODE"
VERSION_FORMAT="VER_MAJ.VER_MIN-VER_PAT"
#!/bin/bash
echo "Deploying to $PACKAGE_PATH"
cd build/apk
PKGFILES=$(ls . | grep .apk)
[ ! $MOD = "" ] && MOD="-$MOD"
echo $PKGFILES
for pkgfile in $PKGFILES; do
pkgname=$(echo $pkgfile | sed "s/.apk$//")
mv $pkgfile $wd/$PACKAGE_PATH/$pkgname$MOD.apk || echo "[ERR] Something went wrong in publishing the package. Now aborting."
if [ ! -z $UPDVER ]; then
# for pkgfile in $PKGFILES; do
ln -sf $wd/$PACKAGE_PATH/$pkgname$MOD.apk $wd/$PACKAGE_PATH/$pkgname$MOD-latest.apk
# done
#Need to create latest symlink to the project.
fi
done
export -n "UPDVER"
cd ../..
#symlink name-actual to the latest version.
#build/deb/versions - for all files
#build/deb/${PROJECT}-latest - for symlinks.
#!/bin/bash
#echo "Stub for post-build actions"
echo "Entering post-build deployment and cleanup"
SCRIPTDIR="prod_build/android/scripts"
$SCRIPTDIR/deploy.sh || exit 10 && \
$SCRIPTDIR/cleanup.sh || exit 11
#!/bin/bash
PLATFORM_CANDIDATES=$2
CHROOT_PREFIX="builder"
CHROOTS_PATH=$1
PLATFORMS=""
PKG_FORMAT=$3
JOB=$4
export wd=$(pwd)
cd $SRC_PATH
echo "workdir is $wd"
. prod_build/general/pre-build.sh
export_variables "./prod_build/general/conf/*"
. prod_build/general/mod-handler.sh
mod_handler $MOD
IFS=' '
echo "$PLATFORM_CANDIDATES"
echo $IMPLEMENTED
for platform in $PLATFORM_CANDIDATES; do
[[ $(echo $IMPLEMENTED | grep $platform) != "" ]] && PLATFORMS="$PLATFORMS$platform " || echo "Platform $platform is not implemented in this project yet. Sorry"
done
[[ $PLATFORMS != "" ]] && PLATFORMS=$(echo $PLATFORMS | sed 's/ $//')
echo "Platforms are $PLATFORMS there"
[ -e "*.probak"] && rm "*.probak"
for platform in $PLATFORMS; do
echo "Working with $platform now"
PLATFORM_UPPERCASED=$( echo "$platform" | tr '[:lower:]' '[:upper:]')
ENV=${PLATFORM_UPPERCASED}_ENV
varpack=$(export | grep $PLATFORM_UPPERCASED | awk '{print $3}')
[[ $platform == "linux" ]] && platform="linux/debian"
export_variables "./prod_build/$platform/conf/*"
IFS=' '
PKG_TYPE=$(echo $PKG_FORMAT | cut -d ' ' -f1)
#Check if chroots are present
echo $HOST_DISTR_VERSIONS
echo $HOST_ARCH_VERSIONS
[ -e prod_build/$platform/scripts/pre-build.sh ] && prod_build/$platform/scripts/pre-build.sh $CHROOT_PREFIX || exit $? #For actions before build not in chroot and in chroot (version update, install missing dependencies(under schroot))
for distr in $HOST_DISTR_VERSIONS; do
for arch in $HOST_ARCH_VERSIONS; do
if [ -e $CHROOTS_PATH/$CHROOT_PREFIX-$distr-$arch ]; then
set -x
schroot -c $CHROOT_PREFIX-$distr-$arch -- launcher.sh prod_build/$platform/scripts/$JOB.sh $PKG_TYPE $platform $varpack || errcode=$?
set +x
# echo "schroot stub $PKG_TYPE"
else
echo "chroot $CHROOT_PREFIX-$distr-$arch not found. You should install it first"
fi
done
done
echo "workdir before postinstall is $(pwd)"
[ -e prod_build/$platform/scripts/post-build.sh ] && prod_build/$platform/scripts/post-build.sh #For post-build actions not in chroot (global publish)
PKG_FORMAT=$(echo $PKG_FORMAT | cut -d ' ' -f2-)
unexport_variables "./prod_build/$platform/conf/*"
done
#[ $(mount | grep "/run/schroot/mount") ] && sudo umount -l /run/schroot/mount && sudo rm -r /run/schroot/mount/* #Removing mountpoint odds.
cd $wd
MOD="static"
IMPLEMENTED="linux/debian linux/ubuntu"
VERSION_FILE=CellFrameDashboardGUI/CellFrameDashboardGUI.pro
VERSION_ENTRIES="VER_MAJ VER_MIN VER_PAT VER_CODE"
VERSION_FORMAT="VER_MAJ.VER_MIN-VER_PAT"
mod_handler() {
MODLIST=$1
IFS=' '
for mod in $MODLIST; do
case $mod in
"blank")
sed -ibak "s/^#DAP_BLANK/DAP_BLANK/" config.pri || sed -ibak "s/^DAP_BLANK/#DAP_BLANK/" config.pri # For toggling blank mode in general scripts.
;;
"static")
[[ $(echo "$PLATFORM_CANDIDATES" | grep "linux") != "" ]] && sed -ibak "/static/s/^#//" CellFrameDashboard.pro && [ ! -z "ICU_LINUX_PATH" ] && sed -ibak "s!ICU_LINUX_PATH!$ICU_LINUX_PATH!" CellFrameDashboard.pro && \
PLATFORM_CANDIDATES=$( echo $PLATFORM_CANDIDATES | sed "s/linux\/[a-z]\+ \?//g" | sed "s/$/ linux/" | sed "s/^ //") || sed -ibak "/static/s/^unix/#unix/" config.pri #For toggling static mode
;;
*)
echo "No handling required for mod $mod. Proceeding"
;;
esac
done
IFS='\n'
}
#!/bin/bash
extract_version_number() {
IFS=" "
local VERSION_STRING=$VERSION_FORMAT
for entry in $VERSION_ENTRIES; do
VERSION_STRING=$(echo $VERSION_STRING | sed "s/$entry/$( cat $VERSION_FILE | grep ^$entry | sed 's/ //g' | cut -d '=' -f2 )/") #Replacing templates with numbers
# echo $VERSION_STRING
done
echo -e "$VERSION_STRING"
}
extract_gitlog_text() {
borders=$( git log | grep -n 'commit\|Date' | head -n 3 | tail -n 2 | cut -d ':' -f1)
upb=$(echo $borders | cut -d ' ' -f1)
dwnb=$(echo $borders | cut -d ' ' -f2)
text=$(git log | head -n $( expr $dwnb - 2 ) | tail -n $( expr $dwnb - $upb - 3 ) )
echo "$text"
}
export_variables() {
IFS=$'\n'
for variable in $(cat $1); do
echo "$variable"
export $(echo "$variable" | sed 's/\"//g')
done
}
unexport_variables() {
IFS=$'\n'
for variable in $(cat $1); do
echo "$variable"
export -n $(echo $variable | cut -d '=' -f1)
done
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment