فهرست منبع

Updated release scripts.

Thanks to xet7 !
Lauri Ojansivu 4 سال پیش
والد
کامیت
34b6aa0858
2فایلهای تغییر یافته به همراه111 افزوده شده و 23 حذف شده
  1. 90 0
      releases/node-update.sh
  2. 21 23
      releases/release-sandstorm.sh

+ 90 - 0
releases/node-update.sh

@@ -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."

+ 21 - 23
releases/release-sandstorm.sh

@@ -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
 # Ensure sudo access
 sudo echo .
 sudo echo .
+
+# Delete old temporary build directory
 rm -rf ~/repos/wekan/.meteor-spk
 rm -rf ~/repos/wekan/.meteor-spk
+
+# Start and update local Sandstorm dev version
 sudo systemctl enable sandstorm
 sudo systemctl enable sandstorm
 sudo sandstorm start
 sudo sandstorm start
 sudo sandstorm update
 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
 meteor-spk pack wekan-$1.spk
+
+# Publish Sandstorm Wekan to exprimental App Market
 spk publish wekan-$1.spk
 spk publish wekan-$1.spk
+
+# Delete old temporary build directory
 rm -rf ~/repos/wekan/.meteor-spk
 rm -rf ~/repos/wekan/.meteor-spk
-#scp wekan-$1.spk x2:/var/snap/wekan/common/releases.wekan.team/