File get-gitea-source.sh of Package gitea
#!/bin/bash
set -ex
usage() {
echo "Usage: <script> <version>"
echo ""
echo "Before you run this script, you must update _service to right version."
echo ""
exit 1;
}
if [[ -z "$1" ]]; then
usage
exit 1;
fi
VERSION="$1"
PFAD=`pwd`
echo "================================="
echo " Cleanup... "
echo "================================="
rm -rf gitea-dl
rm -rf gitea
rm -rf gitea*.tar.gz
rm -rf gitea*.tar.gz.asc
rm -rf vendor.tar.gz
rm -rf node_modules.*
rm -rf package*.json
echo "======================================"
echo "First install local needed packages..."
echo "======================================"
sudo zypper in npm \
obs-service-download_url \
obs-service-go_modules
echo ""
echo "Also need glup global install because path variable does not work in this script and i don't know why. :-("
echo "Any advice for me? "
echo "----------------------------------------------------------------------------------------------------------"
sudo npm install gulp -g
echo "======================================"
echo "Download gitea source from _service..."
echo "======================================"
osc service dr
echo "====================="
echo "Patch package.json..."
echo "====================="
mkdir gitea-dl
cd gitea-dl
tar -xvzf ../gitea-$VERSION.tar.gz
cd gitea-$VERSION
# Install node_modules from package-lock.json
echo "=============================="
echo "Download node_modules gitea ..."
echo "=============================="
npm install --no-save
npm install --no-save gulp
# Install node_modules for fomatic-ui
echo "=========================================="
echo "Download node_modules fomantic ..."
echo "=========================================="
(
cd web_src/fomantic/
mkdir bin
ln -s ../../../node_modules/gulp-cli/bin/gulp.js bin/gulp
chmod a+x ../../node_modules/gulp-cli/bin/gulp.js
export PATH=$PWD/bin:$PATH
npm install --no-save
)
echo "===================================================="
echo "Download only pack node_modules esbuild-optional ..."
echo "===================================================="
esbuild_ver=$(jq -er '.["packages"]["node_modules/esbuild"]["version"]' package-lock.json)
echo "esbuild version: $esbuild_ver"
npm pack @esbuild/linux-x64@$esbuild_ver
npm pack @esbuild/linux-arm64@$esbuild_ver
npm pack @esbuild/linux-arm@$esbuild_ver
npm pack @esbuild/linux-ppc64@$esbuild_ver
install -d @esbuild
tar -xvzf esbuild-linux-x64-$esbuild_ver.tgz
mv package node_modules/@esbuild/linux-x64
tar -xvzf esbuild-linux-arm64-$esbuild_ver.tgz
mv package node_modules/@esbuild/linux-arm64
tar -xvzf esbuild-linux-arm-$esbuild_ver.tgz
mv package node_modules/@esbuild/linux-arm
tar -xvzf esbuild-linux-ppc64-$esbuild_ver.tgz
mv package node_modules/@esbuild/linux-ppc64
# remove local home
echo "====================="
echo "Remove local path ..."
echo "====================="
find node_modules web_src/fomantic/node_modules -type f -exec sed -i -e 's|'$PFAD'/gitea-dl/gitea-'$VERSION'||g' {} \;
# pack node_modules
echo "==========================="
echo "Pack gitea-node_modules ..."
echo "==========================="
tar -czf ../gitea-node_modules-$VERSION.tar.gz node_modules web_src/fomantic/node_modules/
cd ..
# Copy
echo "==========================="
echo "Copy tars from /tmp to $PFAD ..."
echo "==========================="
cp gitea-node_modules-$VERSION.tar.gz $PFAD
echo "==========="
echo "CleanUp ..."
echo "==========="
cd $PFAD
rm -rf gitea-dl