Updated release scripts.

Thanks to xet7 !
This commit is contained in:
Lauri Ojansivu 2021-03-31 15:39:07 +03:00
parent 55ced412a0
commit 34b6aa0858
2 changed files with 111 additions and 23 deletions

90
releases/node-update.sh Normal file
View file

@ -0,0 +1,90 @@
#!/bin/bash
# Update node version.
# 1) Check that there is only one parameter
# of Wekan version number:
if [ $# -ne 2 ]
then
echo "Syntax with Node old and new version number:"
echo " ./node-update.sh 12.21.0 12.22.0"
exit 1
fi
# With replacing longer strings than only version number,
# trying to make sure only Node.js version is updated.
echo "1) Updating Snap node"
sed -i 's|node-engine: $1|node-engine: $2|g' snapcraft.yaml
sed -i 's|node-engine: $1|node-engine: $2|g' .future-snap/snapcraft.yaml
sed -i 's|node-engine: $1|node-engine: $2|g' .future-snap/broken-snapcraft.yaml
echo "2) Updating Docker node"
sed -i 's|NODE_VERSION=v$1|NODE_VERSION=v$2|g' Dockerfile
sed -i 's|NODE_VERSION=v$1|NODE_VERSION=v$2|g' Dockerfile.arm64v8
sed -i 's|NODE_VERSION=v$1|NODE_VERSION=v$2|g' .devcontainer/Dockerfile
echo "3) Updating Rebuild scripts..."
sed -i 's|sudo n $1|sudo n $2|g' rebuild-wekan.sh
sed -i 's|nodejs.org/dist/v$1|nodejs.org/dist/v$2|g' rebuild-wekan.bat
sed -i 's|node-v$1|node-v$2|g' rebuild-wekan.bat
echo "4) Updating Stacksmith"
sed -i 's|$1|$2|g' stacksmith/user-scripts/build.sh
echo "5) Updating Travis"
sed -i 's|$1|$2|g' .travis.yml
echo "6) Adding changes to be committed."
git add snapcraft.yaml .future-snap/snapcraft.yaml .future-snap/broken-snapcraft.yaml \
Dockerfile Dockerfile.arm64v8 .devcontainer/Dockerfile rebuild-wekan.sh \
rebuild-wekan.bat stacksmith/user-scripts/build.sh
echo "7) Commit changes and push to GitHub"
git commit -n -m "Updated to Node.js v$2. Thanks to Node.js developers."
git push
NODE_VERSION=$(node -v)
# If installed node is not newest version
if [ $NODE_VERSION != v$2 ]; then
echo "8) Upgrading installed node to newest version"
sudo n $2
else
echo "8) Installed node is already newest version"
fi
# If Sandstorm node does not exist
SANDSTORM_NODE=~/projects/meteor-spk/meteor-spk-0.5.1/meteor-spk.deps/bin/node
if [[ -f "$SANDSTORM_NODE" ]]; then
echo "9) Installing local Sandstorm develoment version"
~/repos/wekan/releases/install-sandstorm.sh
else
echo "9) Local Sandstorm is already installed"
fi
SANDSTORM_NODE_VERSION=$($SANDSTORM_NODE -v)
PROJECTS_ARCHIVE=~/projects.7z
# If installed Sandstorm node is not newest version
if [ $SANDSTORM_NODE != v$2 ]; then
echo "10) Copy previously updated local node to Sandstorm node"
cp /usr/local/bin/node ~/projects/meteor-spk/meteor-spk-0.5.1/meteor-spk.deps/bin/
echo "11) Install 7zip"
sudo apt-get -y install p7zip-full
# If projects.7z exists, delete it
if [[ -f "$PROJECTS_ARCHIVE" ]] then;
echo "12) Deleting existing project.7z archive"
rm $PROJECTS_ARCHIVE
else
echo "12) There is no existin project.7z archive"
fi
echo "13) Archive projects.7z directory"
7z a projects.7z projects
echo "14) Upload projects.7z archive to webserver"
scp projects.7z x2:/var/snap/wekan/common/releases.wekan.team/meteor-spk/
fi
echo "Done."

View file

@ -1,36 +1,34 @@
# Usage: ./release.sh 3.95
#!/bin/bash
# Delete old stuff
#cd ~/repos/wekan
#./releases/release-cleanup.sh
# Release Sandstorm Wekan.
# Build Source
#cd ~/repos/wekan
#./releases/rebuild-release.sh
# 1) Check that there is only one parameter
# of Sandstorm Wekan version number:
REPODIR=/home/wekan/repos
WEKANDIR=/home/wekan/repos/wekan
if [ $# -ne 1 ]
then
echo "Syntax with new Sandstorm Wekan version number:"
echo " ./release-sandstorm.sh 5.10.0"
exit 1
fi
# Ensure sudo access
sudo echo .
# Delete old temporary build directory
rm -rf ~/repos/wekan/.meteor-spk
# Start and update local Sandstorm dev version
sudo systemctl enable sandstorm
sudo sandstorm start
sudo sandstorm update
# Build Sandstorm
#cd $REPODIR
#rm -rf $WEKANDIR
#git clone git@github.com:wekan/wekan.git
#cd $WEKANDIR
#sudo n 12.21.0
#sudo mkdir -p /usr/local/lib/node_modules/fibers/.node-gyp
# Build Wekan
#./releases/rebuild-release.sh
#cd .build/bundle/programs/server
#npm install node-gyp node-pre-gyp fibers
cd $WEKANDIR
# Build Sandstorm
# Build Sandstorm Wekan
cd ~/repos/wekan
meteor-spk pack wekan-$1.spk
# Publish Sandstorm Wekan to exprimental App Market
spk publish wekan-$1.spk
# Delete old temporary build directory
rm -rf ~/repos/wekan/.meteor-spk
#scp wekan-$1.spk x2:/var/snap/wekan/common/releases.wekan.team/