From 467a3be8509d4a45cd26da7f199b4dbd049086fd Mon Sep 17 00:00:00 2001 From: Lauri Ojansivu Date: Thu, 5 Dec 2019 10:00:07 +0200 Subject: Update to Meteor 1.9-beta.4, Node.js 12.13.1 and MongoDB 4.2.1. Remove MongoDB option --smallfiles that is not supported in MongoDB 4.2.1. Add MongoDB option --quiet to docker-compose.yml. Update snap fibers to 4.0.1. Thanks to xet7 ! --- releases/not-working-meteor-1.8-snapcraft.yaml | 262 ------------------------- releases/old-rebuild-release.sh | 43 ---- releases/rebuild-wekan.sh | 136 ------------- releases/sandstorm-make-spk.sh | 2 +- releases/snap-install.sh | 2 +- releases/virtualbox/old-rebuild-wekan.sh | 42 ---- 6 files changed, 2 insertions(+), 485 deletions(-) delete mode 100644 releases/not-working-meteor-1.8-snapcraft.yaml delete mode 100755 releases/old-rebuild-release.sh delete mode 100755 releases/rebuild-wekan.sh delete mode 100755 releases/virtualbox/old-rebuild-wekan.sh (limited to 'releases') diff --git a/releases/not-working-meteor-1.8-snapcraft.yaml b/releases/not-working-meteor-1.8-snapcraft.yaml deleted file mode 100644 index bf5d5ee8..00000000 --- a/releases/not-working-meteor-1.8-snapcraft.yaml +++ /dev/null @@ -1,262 +0,0 @@ -name: wekan -version: '0' -version-script: git describe --dirty --tags | cut -c 2- -summary: The open-source kanban -description: | - Wekan is an open-source and collaborative kanban board application. - - Whether you’re maintaining a personal todo list, planning your holidays with some friends, or working in a team on your next revolutionary idea, Kanban boards are an unbeatable tool to keep your things organized. They give you a visual overview of the current state of your project, and make you productive by allowing you to focus on the few items that matter the most. - Depending on target environment, some configuration settings might need to be adjusted. - For full list of configuration options call: - $ wekan.help - -confinement: strict -grade: stable - -architectures: - - amd64 - -plugs: - mongodb-plug: - interface: content - target: $SNAP_DATA/shared - -hooks: - configure: - plugs: - - network - - network-bind - -slots: - mongodb-slot: - interface: content - write: - - $SNAP_DATA/share - -apps: - wekan: - command: wekan-control - daemon: simple - plugs: [network, network-bind] - - mongodb: - command: mongodb-control - daemon: simple - plugs: [network, network-bind] - - caddy: - command: caddy-control - daemon: simple - plugs: [network, network-bind] - - help: - command: wekan-help - - database-backup: - command: mongodb-backup - plugs: [network, network-bind] - - database-list-backups: - command: ls -al $SNAP_COMMON/db-backups/ - - database-restore: - command: mongodb-restore - plugs: [network, network-bind] - -parts: - mongodb: - source: https://repo.mongodb.org/apt/ubuntu/dists/xenial/mongodb-org/4.0/multiverse/binary-amd64/mongodb-org-server_4.0.11_amd64.deb - plugin: dump - stage-packages: [libssl-dev] - filesets: - mongo: - - usr - - bin - - lib -# stage: -# - $mongo -# prime: -# - $mongo - wekan: - source: . - plugin: nodejs - node-engine: 8.16.0 -# node-packages: -# - node-gyp -# - node-pre-gyp -# - fibers@4.0.1 - build-packages: - - ca-certificates - - apt-utils - - bsdtar - - gnupg - - bzip2 - ## - python3 - - g++ - - build-essential - - git - # - capnproto - - curl - - libcurl3 - - php-curl - # - execstack - # - nodejs - # - npm - ## - python3-pip - ## - python3-venv - stage-packages: - - libfontconfig1 - override-build: | - set -o xtrace - echo "Cleaning environment first" - rm -rf ~/.meteor ~/.npm /usr/local/lib/node_modules - # Meteor installer doesn't work with the default tar binary, so using bsdtar while installing. - # https://github.com/coreos/bugs/issues/1095#issuecomment-350574389 - cp $(which tar) $(which tar)~ - ln -sf $(which bsdtar) $(which tar) - # Create the OpenAPI specification - rm -rf .build - mkdir .build - ##mkdir -p .build/python - ##cd .build/python - ##python3 -m venv env - ##. ./env/bin/activate - ##pip3 install -U setuptools wheel - ##git clone --depth 1 -b master https://github.com/Kronuz/esprima-python - ##cd esprima-python - ##python3 setup.py install - ##cd ../../.. - ##mkdir -p ./public/api - ##python3 ./openapi/generate_openapi.py --release $(git describe --tags --abbrev=0) > ./public/api/wekan.yml - # we temporary need api2html and mkdirp - ##npm install -g --unsafe-perm api2html@0.3.0 - ##npm install -g --unsafe-perm mkdirp - ##api2html -c ./public/logo-header.png -o ./public/api/wekan.html ./public/api/wekan.yml - ##npm uninstall -g --unsafe-perm mkdirp - ##npm uninstall -g --unsafe-perm api2html - # Node Fibers 100% CPU usage issue: - # https://github.com/wekan/wekan-mongodb/issues/2#issuecomment-381453161 - # https://github.com/meteor/meteor/issues/9796#issuecomment-381676326 - # https://github.com/sandstorm-io/sandstorm/blob/0f1fec013fe7208ed0fd97eb88b31b77e3c61f42/shell/server/00-startup.js#L99-L129 - # Also see beginning of wekan/server/authentication.js - # import Fiber from "fibers"; - # Fiber.poolSize = 1e9; - # OLD: Download node version 8.12.0 prerelease build => Official node 8.12.0 has been released - # Description at https://releases.wekan.team/node.txt - ##echo "375bd8db50b9c692c0bbba6e96d4114cd29bee3770f901c1ff2249d1038f1348 node" >> node-SHASUMS256.txt.asc - ##curl https://releases.wekan.team/node -o node - # Verify Fibers patched node authenticity - ##echo "Fibers 100% CPU issue patched node authenticity:" - ##grep node node-SHASUMS256.txt.asc | shasum -a 256 -c - - ##rm -f node-SHASUMS256.txt.asc - ##chmod +x node - ##mv node `which node` - # DOES NOT WORK: paxctl fix. - # Removed from build-packages: - paxctl - #echo "Applying paxctl fix for alpine linux: https://github.com/wekan/wekan/issues/1303" - #paxctl -mC `which node` - #echo "Installing npm" - #curl -L https://www.npmjs.com/install.sh | sh - echo "Installing meteor" - curl https://install.meteor.com/ -o install_meteor.sh - #sed -i "s|RELEASE=.*|RELEASE=\"1.8.1-beta.0\"|g" install_meteor.sh - chmod +x install_meteor.sh - sh install_meteor.sh - rm install_meteor.sh - # REPOS BELOW ARE INCLUDED TO WEKAN REPO - #if [ ! -d "packages" ]; then - # mkdir packages - #fi - #if [ ! -d "packages/kadira-flow-router" ]; then - # cd packages - # git clone --depth 1 -b master https://github.com/wekan/flow-router.git kadira-flow-router - # cd .. - #fi - #if [ ! -d "packages/meteor-useraccounts-core" ]; then - # cd packages - # git clone --depth 1 -b master https://github.com/meteor-useraccounts/core.git meteor-useraccounts-core - # sed -i 's/api\.versionsFrom/\/\/api.versionsFrom/' meteor-useraccounts-core/package.js - # cd .. - #fi - #if [ ! -d "packages/meteor-accounts-cas" ]; then - # cd packages - # git clone --depth 1 -b master https://github.com/wekan/meteor-accounts-cas.git meteor-accounts-cas - # cd .. - #fi - #if [ ! -d "packages/wekan-ldap" ]; then - # cd packages - # git clone --depth 1 -b master https://github.com/wekan/wekan-ldap.git - # cd .. - #fi - #if [ ! -d "packages/wekan-scrollbar" ]; then - # cd packages - # git clone --depth 1 -b master https://github.com/wekan/wekan-scrollbar.git - # cd .. - #fi - #if [ ! -d "packages/wekan_accounts-oidc" ]; then - # cd packages - # git clone --depth 1 -b master https://github.com/wekan/meteor-accounts-oidc.git - # mv meteor-accounts-oidc/packages/switch_accounts-oidc wekan-accounts-oidc - # mv meteor-accounts-oidc/packages/switch_oidc wekan-oidc - # rm -rf meteor-accounts-oidc - # cd .. - #fi - #if [ ! -d "packages/markdown" ]; then - # cd packages - # git clone --depth 1 -b master --recurse-submodules https://github.com/wekan/markdown.git - # cd .. - #fi - rm -rf package-lock.json .build - #meteor add standard-minifier-js --allow-superuser - meteor npm install --allow-superuser --unsafe-perm - meteor build .build --directory --allow-superuser - cp -f fix-download-unicode/cfs_access-point.txt .build/bundle/programs/server/packages/cfs_access-point.js - # Disable code coverage on Snap, because it crashes Wekan starting. - # https://github.com/wekan/wekan/issues/2533#issuecomment-513506939 - #sed -i 's|Profile(fileInfo.path, func).apply(global, args);|//Profile(fileInfo.path, func).apply(global, args);|g' .build/bundle/programs/server/boot.js - # although it did not help, it said unable to find main function. - # Other option to fix would be to drop indexes at start of snap: - # https://stackoverflow.com/questions/24241742/drop-all-indexes-from-all-collections-in-a-mongodb-database-using-the-command-li - #Removed binary version of bcrypt because of security vulnerability that is not fixed yet. - #https://github.com/wekan/wekan/commit/4b2010213907c61b0e0482ab55abb06f6a668eac - #https://github.com/wekan/wekan/commit/7eeabf14be3c63fae2226e561ef8a0c1390c8d3c - #cd .build/bundle/programs/server/npm/node_modules/meteor/npm-bcrypt - #rm -rf node_modules/bcrypt - #meteor npm install --save bcrypt - # Change from npm-bcrypt directory back to .build/bundle/programs/server directory. - #cd ../../../../ - # Change to directory .build/bundle/programs/server - cd .build/bundle/programs/server - npm install --unsafe-perm - #meteor npm install --save bcrypt - # Change back to Wekan source directory - cd ../../../.. - cp -r .build/bundle/* $SNAPCRAFT_PART_INSTALL/ - cp .build/bundle/.node_version.txt $SNAPCRAFT_PART_INSTALL/ - # rm $SNAPCRAFT_PART_INSTALL/lib/node_modules/wekan - #rm $SNAPCRAFT_PART_INSTALL/programs/server/npm/node_modules/meteor/rajit_bootstrap3-datepicker/lib/bootstrap-datepicker/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs - # rm $SNAPCRAFT_PART_INSTALL/lib/node_modules/node-pre-gyp/node_modules/tar/lib/.mkdir.js.swp - # rm $SNAPCRAFT_PART_INSTALL/lib/node_modules/node-gyp/node_modules/tar/lib/.mkdir.js.swp - # Put back the original tar - mv $(which tar)~ $(which tar) - organize: - README: README.wekan - prime: - - -lib/node_modules/node-pre-gyp/node_modules/tar/lib/.unpack.js.swp - - helpers: - source: snap-src - plugin: dump - - caddy: - plugin: dump - source: https://caddyserver.com/download/linux/amd64?license=personal&telemetry=off - source-type: tar - organize: - caddy: bin/caddy - CHANGES.txt: CADDY_CHANGES.txt - EULA.txt: CADDY_EULA.txt - LICENSES.txt: CADDY_LICENSES.txt - README.txt: CADDY_README.txt - stage: - - -init diff --git a/releases/old-rebuild-release.sh b/releases/old-rebuild-release.sh deleted file mode 100755 index 30814c73..00000000 --- a/releases/old-rebuild-release.sh +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/bash - -echo "Building Wekan." -cd ~/repos/wekan -#rm -rf packages -#mkdir -p ~/repos/wekan/packages -#cd ~/repos/wekan/packages -#git clone --depth 1 -b master https://github.com/wekan/flow-router.git kadira-flow-router -#git clone --depth 1 -b master https://github.com/meteor-useraccounts/core.git meteor-useraccounts-core -#git clone --depth 1 -b master https://github.com/wekan/meteor-accounts-cas.git -#git clone --depth 1 -b master https://github.com/wekan/wekan-ldap.git -#git clone --depth 1 -b master https://github.com/wekan/wekan-scrollbar.git -#git clone --depth 1 -b master https://github.com/wekan/meteor-accounts-oidc.git -#git clone --depth 1 -b master --recurse-submodules https://github.com/wekan/markdown.git -#mv meteor-accounts-oidc/packages/switch_accounts-oidc wekan_accounts-oidc -#mv meteor-accounts-oidc/packages/switch_oidc wekan_oidc -# -#if [[ "$OSTYPE" == "darwin"* ]]; then -# echo "sed at macOS"; -# sed -i '' 's/api\.versionsFrom/\/\/api.versionsFrom/' ~/repos/wekan/packages/meteor-useraccounts-core/package.js -#else -# echo "sed at ${OSTYPE}" -# sed -i 's/api\.versionsFrom/\/\/api.versionsFrom/' ~/repos/wekan/packages/meteor-useraccounts-core/package.js -#fi -# -cd ~/repos/wekan -rm -rf node_modules -meteor npm install -rm -rf .build -meteor build .build --directory -cp -f fix-download-unicode/cfs_access-point.txt .build/bundle/programs/server/packages/cfs_access-point.js -#Removed binary version of bcrypt because of security vulnerability that is not fixed yet. -#https://github.com/wekan/wekan/commit/4b2010213907c61b0e0482ab55abb06f6a668eac -#https://github.com/wekan/wekan/commit/7eeabf14be3c63fae2226e561ef8a0c1390c8d3c -#cd ~/repos/wekan/.build/bundle/programs/server/npm/node_modules/meteor/npm-bcrypt -#rm -rf node_modules/bcrypt -#meteor npm install bcrypt -cd ~/repos/wekan/.build/bundle/programs/server -rm -rf node_modules -meteor npm install -#meteor npm install bcrypt -cd ~/repos -echo Building Wekan Done. diff --git a/releases/rebuild-wekan.sh b/releases/rebuild-wekan.sh deleted file mode 100755 index e70ff656..00000000 --- a/releases/rebuild-wekan.sh +++ /dev/null @@ -1,136 +0,0 @@ -#!/bin/bash - -echo "Note: If you use other locale than en_US.UTF-8 , you need to additionally install en_US.UTF-8" -echo " with 'sudo dpkg-reconfigure locales' , so that MongoDB works correctly." -echo " You can still use any other locale as your main locale." - -X64NODE="https://releases.wekan.team/node-v8.11.3-linux-x64.tar.gz" - -function pause(){ - read -p "$*" -} - -echo -PS3='Please enter your choice: ' -options=("Install Wekan dependencies" "Build Wekan" "Quit") -select opt in "${options[@]}" -do - case $opt in - "Install Wekan dependencies") - - if [[ "$OSTYPE" == "linux-gnu" ]]; then - echo "Linux"; - - if [ "$(grep -Ei 'buntu|mint' /etc/*release)" ]; then - sudo apt install -y build-essential git curl wget -# sudo apt -y install nodejs npm -# sudo npm -g install n -# sudo n 8.16.2 - fi - -# if [ "$(grep -Ei 'debian' /etc/*release)" ]; then -# sudo apt install -y build-essential git curl wget -# echo "Debian, or Debian on Windows Subsystem for Linux" -# curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - -# sudo apt install -y nodejs -# fi - - # TODO: Add Sandstorm for version of Node.js install - #MACHINE_TYPE=`uname -m` - #if [ ${MACHINE_TYPE} == 'x86_64' ]; then - # # 64-bit stuff here - # wget ${X64NODE} - # sudo tar -C /usr/local --strip-components 1 -xzf ${X64NODE} - #elif [ ${MACHINE_TYPE} == '32bit' ]; then - # echo "TODO: 32-bit Linux install here" - # exit - #fi - elif [[ "$OSTYPE" == "darwin"* ]]; then - echo "macOS"; - pause '1) Install XCode 2) Install Node 8.x from https://nodejs.org/en/ 3) Press [Enter] key to continue.' - elif [[ "$OSTYPE" == "cygwin" ]]; then - # POSIX compatibility layer and Linux environment emulation for Windows - echo "TODO: Add Cygwin"; - exit; - elif [[ "$OSTYPE" == "msys" ]]; then - # Lightweight shell and GNU utilities compiled for Windows (part of MinGW) - echo "TODO: Add msys on Windows"; - exit; - elif [[ "$OSTYPE" == "win32" ]]; then - # I'm not sure this can happen. - echo "TODO: Add Windows"; - exit; - elif [[ "$OSTYPE" == "freebsd"* ]]; then - echo "TODO: Add FreeBSD"; - exit; - else - echo "Unknown" - echo ${OSTYPE} - exit; - fi - - ## Latest npm with Meteor 1.6 - sudo npm -g install npm - sudo npm -g install node-gyp - # Latest fibers for Meteor 1.6 - sudo npm -g install fibers@2.0.0 - # Install Meteor, if it's not yet installed - curl https://install.meteor.com | bash -# mkdir ~/repos -# cd ~/repos -# git clone https://github.com/wekan/wekan.git -# cd wekan -# git checkout devel - break - ;; - "Build Wekan") - echo "Building Wekan." - cd ~/repos/wekan - rm -rf packages - mkdir -p ~/repos/wekan/packages - cd ~/repos/wekan/packages - git clone --depth 1 -b master https://github.com/wekan/flow-router.git kadira-flow-router - git clone --depth 1 -b master https://github.com/meteor-useraccounts/core.git meteor-useraccounts-core - git clone --depth 1 -b master https://github.com/wekan/meteor-accounts-cas.git - git clone --depth 1 -b master https://github.com/wekan/wekan-ldap.git - git clone --depth 1 -b master https://github.com/wekan/wekan-scrollbar.git - git clone --depth 1 -b master https://github.com/wekan/meteor-accounts-oidc.git - git clone --depth 1 -b master --recurse-submodules https://github.com/wekan/markdown.git - mv meteor-accounts-oidc/packages/switch_accounts-oidc wekan_accounts-oidc - mv meteor-accounts-oidc/packages/switch_oidc wekan_oidc - rm -rf meteor-accounts-oidc - - if [[ "$OSTYPE" == "darwin"* ]]; then - echo "sed at macOS"; - sed -i '' 's/api\.versionsFrom/\/\/api.versionsFrom/' ~/repos/wekan/packages/meteor-useraccounts-core/package.js - else - echo "sed at ${OSTYPE}" - sed -i 's/api\.versionsFrom/\/\/api.versionsFrom/' ~/repos/wekan/packages/meteor-useraccounts-core/package.js - fi - - cd ~/repos/wekan - rm -rf node_modules - meteor npm install - rm -rf .build - meteor build .build --directory - cp -f fix-download-unicode/cfs_access-point.txt .build/bundle/programs/server/packages/cfs_access-point.js - #Removed binary version of bcrypt because of security vulnerability that is not fixed yet. - #https://github.com/wekan/wekan/commit/4b2010213907c61b0e0482ab55abb06f6a668eac - #https://github.com/wekan/wekan/commit/7eeabf14be3c63fae2226e561ef8a0c1390c8d3c - #cd ~/repos/wekan/.build/bundle/programs/server/npm/node_modules/meteor/npm-bcrypt - #rm -rf node_modules/bcrypt - #meteor npm install bcrypt - cd ~/repos/wekan/.build/bundle/programs/server - rm -rf node_modules - meteor npm install - #meteor npm install bcrypt - cd ~/repos - echo Done. - break - ;; - "Quit") - break - ;; - *) echo invalid option;; - esac -done diff --git a/releases/sandstorm-make-spk.sh b/releases/sandstorm-make-spk.sh index 8db2a4c3..ade97666 100755 --- a/releases/sandstorm-make-spk.sh +++ b/releases/sandstorm-make-spk.sh @@ -1 +1 @@ -meteor-spk pack wekan-1.11.spk +meteor-spk pack wekan-$1.spk diff --git a/releases/snap-install.sh b/releases/snap-install.sh index bdb0b7a2..0021a81e 100755 --- a/releases/snap-install.sh +++ b/releases/snap-install.sh @@ -1 +1 @@ -sudo snap install --dangerous wekan_1.23-17-g9c94ea5_amd64.snap +sudo snap install --dangerous wekan_$1.snap diff --git a/releases/virtualbox/old-rebuild-wekan.sh b/releases/virtualbox/old-rebuild-wekan.sh deleted file mode 100755 index a3941d55..00000000 --- a/releases/virtualbox/old-rebuild-wekan.sh +++ /dev/null @@ -1,42 +0,0 @@ -## Most of these are uncommented, because they are already installed. -#sudo rm -rf /usr/local/lib/node_modules -#sudo rm -rf ~/.npm -#sudo apt install build-essential c++ capnproto npm git curl -#sudo npm -g install n -#sudo n 4.8.6 -#sudo npm -g install npm@4.6.1 -#sudo npm -g install node-gyp -#sudo npm -g install node-pre-gyp -#sudo npm -g install fibers@1.0.15 -sudo rm -rf wekan -git clone https://github.com/wekan/wekan -cd ~/repos -#curl https://install.meteor.com -o ./install_meteor.sh -#sed -i "s|RELEASE=.*|RELEASE=${METEOR_RELEASE}\"\"|g" ./install_meteor.sh -#echo "Starting meteor ${METEOR_RELEASE} installation... \n" -#chown wekan:wekan ./install_meteor.sh -#sh ./install_meteor.sh -mkdir -p ~/repos/wekan/packages -cd ~/repos/wekan/packages -rm -rf kadira-flow-router -rm -rf meteor-useraccounts-core -git clone https://github.com/wekan/flow-router.git kadira-flow-router -git clone https://github.com/meteor-useraccounts/core.git meteor-useraccounts-core -sed -i 's/api\.versionsFrom/\/\/api.versionsFrom/' ~/repos/wekan/packages/meteor-useraccounts-core/package.js -cd ~/repos/wekan - -rm -rf node_modules -npm install -rm -rf .build -meteor build .build --directory -cp -f fix-download-unicode/cfs_access-point.txt .build/bundle/programs/server/packages/cfs_access-point.js -sed -i "s|build\/Release\/bson|browser_build\/bson|g" ~/repos/wekan/.build/bundle/programs/server/npm/node_modules/meteor/cfs_gridfs/node_modules/mongodb/node_modules/bson/ext/index.js -cd ~/repos/wekan/.build/bundle/programs/server/npm/node_modules/meteor/npm-bcrypt -rm -rf node_modules/bcrypt -meteor npm install --save bcrypt -cd ~/repos/wekan/.build/bundle/programs/server -rm -rf node_modules -npm install -meteor npm install --save bcrypt -cd ~/repos -echo Done. -- cgit v1.2.3-1-g7c22