diff options
-rw-r--r-- | .devcontainer/Dockerfile | 8 | ||||
-rw-r--r-- | .devcontainer/docker-compose.yml | 4 | ||||
-rw-r--r-- | .meteor/packages | 8 | ||||
-rw-r--r-- | .meteor/release | 2 | ||||
-rw-r--r-- | .meteor/versions | 34 | ||||
-rw-r--r-- | .travis.yml | 6 | ||||
-rw-r--r-- | Dockerfile | 22 | ||||
-rw-r--r-- | docker-compose.yml | 28 | ||||
-rw-r--r-- | rebuild-wekan.bat | 6 | ||||
-rwxr-xr-x | rebuild-wekan.sh | 8 | ||||
-rw-r--r-- | releases/not-working-meteor-1.8-snapcraft.yaml | 262 | ||||
-rwxr-xr-x | releases/old-rebuild-release.sh | 43 | ||||
-rwxr-xr-x | releases/rebuild-wekan.sh | 136 | ||||
-rwxr-xr-x | releases/sandstorm-make-spk.sh | 2 | ||||
-rwxr-xr-x | releases/snap-install.sh | 2 | ||||
-rwxr-xr-x | releases/virtualbox/old-rebuild-wekan.sh | 42 | ||||
-rwxr-xr-x | snap-src/bin/mongodb-control | 4 | ||||
-rw-r--r-- | snapcraft.yaml | 6 | ||||
-rwxr-xr-x | stacksmith/user-scripts/build.sh | 7 |
19 files changed, 73 insertions, 557 deletions
diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index c2be3595..ec607118 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:disco +FROM ubuntu:rolling LABEL maintainer="sgr" ENV BUILD_DEPS="gnupg gosu bsdtar wget curl bzip2 g++ build-essential python git ca-certificates iproute2" @@ -6,10 +6,10 @@ ENV DEBIAN_FRONTEND=noninteractive ENV \ DEBUG=false \ - NODE_VERSION=8.16.2 \ - METEOR_RELEASE=1.8.1 \ + NODE_VERSION=12.13.1 \ + METEOR_RELEASE=1.9-beta.4 \ USE_EDGE=false \ - METEOR_EDGE=1.5-beta.17 \ + METEOR_EDGE=1.9-beta.4 \ NPM_VERSION=latest \ FIBERS_VERSION=4.0.1 \ ARCHITECTURE=linux-x64 \ diff --git a/.devcontainer/docker-compose.yml b/.devcontainer/docker-compose.yml index fab77056..fc6ee3ff 100644 --- a/.devcontainer/docker-compose.yml +++ b/.devcontainer/docker-compose.yml @@ -3,10 +3,10 @@ version: '3.7' services: wekandb-dev: - image: mongo:4.0.12 + image: mongo:4.2.1 container_name: wekan-dev-db restart: unless-stopped - command: mongod --smallfiles --oplogSize 128 + command: mongod --oplogSize 128 networks: - wekan-dev-tier expose: diff --git a/.meteor/packages b/.meteor/packages index 7fa85bee..2c21b34c 100644 --- a/.meteor/packages +++ b/.meteor/packages @@ -6,9 +6,9 @@ meteor-base@1.4.0 # Build system -ecmascript@0.13.0 -standard-minifier-css@1.5.4 -standard-minifier-js@2.5.0 +ecmascript@0.14.0-beta190.4 +standard-minifier-css@1.6.0-beta190.4 +standard-minifier-js@2.6.0-beta190.4 mquandalle:jade # Polyfills @@ -22,7 +22,7 @@ dburles:collection-helpers idmontie:migrations matb33:collection-hooks matteodem:easy-search -mongo@1.7.0 +mongo@1.8.0-beta190.4 mquandalle:collection-mutations # Account system diff --git a/.meteor/release b/.meteor/release index 250a263b..52d4304f 100644 --- a/.meteor/release +++ b/.meteor/release @@ -1 +1 @@ -METEOR@1.8.2 +METEOR@1.9-beta.4 diff --git a/.meteor/versions b/.meteor/versions index 2b21c42e..0d3c9281 100644 --- a/.meteor/versions +++ b/.meteor/versions @@ -1,7 +1,7 @@ 3stack:presence@1.1.2 -accounts-base@1.4.5 +accounts-base@1.5.0-beta190.4 accounts-oauth@1.1.16 -accounts-password@1.5.1 +accounts-password@1.5.2 aldeed:collection2@2.10.0 aldeed:collection2-core@1.2.0 aldeed:schema-deny@1.1.0 @@ -12,8 +12,8 @@ allow-deny@1.1.0 arillo:flow-router-helpers@0.5.2 audit-argument-checks@1.0.7 autoupdate@1.6.0 -babel-compiler@7.4.0 -babel-runtime@1.4.0 +babel-compiler@7.5.0-beta190.4 +babel-runtime@1.5.0-beta190.4 base64@1.0.12 binary-heap@1.0.11 blaze@2.3.3 @@ -23,7 +23,7 @@ browser-policy-common@1.0.11 browser-policy-framing@1.1.0 caching-compiler@1.2.1 caching-html-compiler@1.1.3 -callback-hook@1.2.0 +callback-hook@1.3.0-beta190.4 cfs:access-point@0.1.49 cfs:base-package@0.0.30 cfs:collection@0.5.5 @@ -57,10 +57,10 @@ deps@1.0.12 diff-sequence@1.1.1 dynamic-import@0.5.1 easylogic:summernote@0.8.8 -ecmascript@0.13.0 +ecmascript@0.14.0-beta190.4 ecmascript-runtime@0.7.0 -ecmascript-runtime-client@0.9.0 -ecmascript-runtime-server@0.8.0 +ecmascript-runtime-client@0.10.0-beta190.4 +ecmascript-runtime-server@0.9.0-beta190.4 ejson@1.1.0 email@1.2.3 es5-shim@4.8.0 @@ -101,16 +101,16 @@ meteorhacks:collection-utils@1.2.0 meteorhacks:picker@1.0.3 meteorhacks:subs-manager@1.6.4 meteorspark:util@0.2.0 -minifier-css@1.4.3 -minifier-js@2.5.0 +minifier-css@1.5.0-beta190.4 +minifier-js@2.6.0-beta190.4 minifiers@1.1.8-faster-rebuild.0 minimongo@1.4.5 mobile-status-bar@1.0.14 modern-browsers@0.1.4 -modules@0.14.0 -modules-runtime@0.11.0 +modules@0.15.0-beta190.4 +modules-runtime@0.12.0-beta190.4 momentjs:moment@2.24.0 -mongo@1.7.0 +mongo@1.8.0-beta190.4 mongo-decimal@0.1.1 mongo-dev-server@1.1.0 mongo-id@1.0.7 @@ -127,7 +127,7 @@ mquandalle:mousetrap-bindglobal@0.0.1 mquandalle:perfect-scrollbar@0.6.5_2 msavin:usercache@1.8.0 npm-bcrypt@0.9.3 -npm-mongo@3.2.0 +npm-mongo@3.3.0-beta190.4 oauth@1.2.8 oauth2@1.2.1 observe-sequence@1.0.16 @@ -167,8 +167,8 @@ softwarerero:accounts-t9n@1.3.11 spacebars@1.0.15 spacebars-compiler@1.1.3 srp@1.0.12 -standard-minifier-css@1.5.4 -standard-minifier-js@2.5.0 +standard-minifier-css@1.6.0-beta190.4 +standard-minifier-js@2.6.0-beta190.4 staringatlights:fast-render@3.2.0 staringatlights:inject-data@2.3.0 tap:i18n@1.8.2 @@ -186,7 +186,7 @@ useraccounts:core@1.14.2 useraccounts:flow-routing@1.14.2 useraccounts:unstyled@1.14.2 verron:autosize@3.0.8 -webapp@1.7.5 +webapp@1.8.0-beta190.4 webapp-hashing@1.0.9 wekan-accounts-cas@0.1.0 wekan-accounts-oidc@1.0.10 diff --git a/.travis.yml b/.travis.yml index 6f0a9e0a..c0d4354c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,9 +1,9 @@ -dist: disco +dist: rolling sudo: required env: - TRAVIS_DOCKER_COMPOSE_VERSION: 1.24.0 - TRAVIS_NODE_VERSION: 8.16.2 + TRAVIS_DOCKER_COMPOSE_VERSION: 3.7.0 + TRAVIS_NODE_VERSION: 12.13.1 TRAVIS_NPM_VERSION: latest before_install: @@ -6,10 +6,10 @@ LABEL maintainer="wekan" # ENV BUILD_DEPS="paxctl" ENV BUILD_DEPS="apt-utils libarchive-tools gnupg gosu wget curl bzip2 g++ build-essential git ca-certificates python3" \ DEBUG=false \ - NODE_VERSION=v8.16.2 \ - METEOR_RELEASE=1.8.1 \ + NODE_VERSION=12.13.1 \ + METEOR_RELEASE=1.9-beta.4 \ USE_EDGE=false \ - METEOR_EDGE=1.5-beta.17 \ + METEOR_EDGE=1.9-beta.4 \ NPM_VERSION=latest \ FIBERS_VERSION=4.0.1 \ ARCHITECTURE=linux-x64 \ @@ -130,8 +130,8 @@ RUN \ ln -sf $(which bsdtar) $(which tar) && \ \ # Download nodejs - wget https://nodejs.org/dist/${NODE_VERSION}/node-${NODE_VERSION}-${ARCHITECTURE}.tar.gz && \ - wget https://nodejs.org/dist/${NODE_VERSION}/SHASUMS256.txt.asc && \ + wget https://nodejs.org/dist/v${NODE_VERSION}/node-v${NODE_VERSION}-${ARCHITECTURE}.tar.gz && \ + wget https://nodejs.org/dist/v${NODE_VERSION}/SHASUMS256.txt.asc && \ #--------------------------------------------------------------------------------------------- # Node Fibers 100% CPU usage issue: # https://github.com/wekan/wekan-mongodb/issues/2#issuecomment-381453161 @@ -146,7 +146,7 @@ RUN \ #echo "1ed54adb8497ad8967075a0b5d03dd5d0a502be43d4a4d84e5af489c613d7795 node-v8.12.0-linux-x64.tar.gz" >> SHASUMS256.txt.asc && \ \ # Verify nodejs authenticity - grep ${NODE_VERSION}-${ARCHITECTURE}.tar.gz SHASUMS256.txt.asc | shasum -a 256 -c - && \ + grep v${NODE_VERSION}-${ARCHITECTURE}.tar.gz SHASUMS256.txt.asc | shasum -a 256 -c - && \ #export GNUPGHOME="$(mktemp -d)" && \ #\ # Try other key servers if ha.pool.sks-keyservers.net is unreachable @@ -173,12 +173,12 @@ RUN \ rm -f SHASUMS256.txt.asc && \ \ # Install Node - tar xvzf node-${NODE_VERSION}-${ARCHITECTURE}.tar.gz && \ - rm node-${NODE_VERSION}-${ARCHITECTURE}.tar.gz && \ - mv node-${NODE_VERSION}-${ARCHITECTURE} /opt/nodejs && \ + tar xvzf node-v${NODE_VERSION}-${ARCHITECTURE}.tar.gz && \ + rm node-v${NODE_VERSION}-${ARCHITECTURE}.tar.gz && \ + mv node-v${NODE_VERSION}-${ARCHITECTURE} /opt/nodejs && \ ln -s /opt/nodejs/bin/node /usr/bin/node && \ ln -s /opt/nodejs/bin/npm /usr/bin/npm && \ - mkdir -p /opt/nodejs/lib/node_modules/fibers/.node-gyp /root/.node-gyp/8.16.1 /home/wekan/.config && \ + mkdir -p /opt/nodejs/lib/node_modules/fibers/.node-gyp /root/.node-gyp/${NODE_VERSION} /home/wekan/.config && \ chown wekan --recursive /home/wekan/.config && \ \ #DOES NOT WORK: paxctl fix for alpine linux: https://github.com/wekan/wekan/issues/1303 @@ -275,7 +275,7 @@ RUN \ # Cleanup apt-get remove --purge -y ${BUILD_DEPS} && \ apt-get autoremove -y && \ - npm uninstall -g api2html &&\ + #npm uninstall -g api2html &&\ rm -R /var/lib/apt/lists/* && \ rm -R /home/wekan/.meteor && \ rm -R /home/wekan/app && \ diff --git a/docker-compose.yml b/docker-compose.yml index a0e641c1..1f7b4c37 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,4 +1,4 @@ -version: '2' +version: '3.7' # Note: Do not add single quotes '' to variables. Having spaces still works without quotes where required. #--------------------------------------------------------------------------------------------------------- @@ -93,14 +93,14 @@ services: #------------------------------------------------------------------------------------- # ==== MONGODB AND METEOR VERSION ==== # a) For Wekan Meteor 1.8.x version at master branch, use mongo 4.x - image: mongo:4.0.12 + image: mongo:4.2.1 # b) For Wekan Meteor 1.6.x version at devel branch. # Only for Snap and Sandstorm while they are not upgraded yet to Meteor 1.8.x #image: mongo:3.2.21 #------------------------------------------------------------------------------------- container_name: wekan-db restart: always - command: mongod --smallfiles --oplogSize 128 + command: mongod --oplogSize 128 --quiet networks: - wekan-tier expose: @@ -129,17 +129,17 @@ services: #------------------------------------------------------------------------------------- # ==== BUILD wekan-app DOCKER CONTAINER FROM SOURCE, if you uncomment these ==== # ==== and use commands: docker-compose up -d --build - #build: - # context: . - # dockerfile: Dockerfile - # args: - # - NODE_VERSION=${NODE_VERSION} - # - METEOR_RELEASE=${METEOR_RELEASE} - # - NPM_VERSION=${NPM_VERSION} - # - ARCHITECTURE=${ARCHITECTURE} - # - SRC_PATH=${SRC_PATH} - # - METEOR_EDGE=${METEOR_EDGE} - # - USE_EDGE=${USE_EDGE} + build: + context: . + dockerfile: Dockerfile + args: + - NODE_VERSION=${NODE_VERSION} + - METEOR_RELEASE=${METEOR_RELEASE} + - NPM_VERSION=${NPM_VERSION} + - ARCHITECTURE=${ARCHITECTURE} + - SRC_PATH=${SRC_PATH} + - METEOR_EDGE=${METEOR_EDGE} + - USE_EDGE=${USE_EDGE} #------------------------------------------------------------------------------------- ports: # Docker outsideport:insideport. Do not add anything extra here. diff --git a/rebuild-wekan.bat b/rebuild-wekan.bat index 346a4aec..1241b68a 100644 --- a/rebuild-wekan.bat +++ b/rebuild-wekan.bat @@ -11,10 +11,10 @@ cd C:\repos REM Install chocolatey
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
-choco install -y git curl python2 dotnet4.5.2 nano mongodb-3 mongoclient meteor
+choco install -y git curl python2 dotnet4.5.2 nano mongodb-4 mongoclient meteor
-curl -O https://nodejs.org/dist/v8.16.2/node-v8.16.2-x64.msi
-call node-v8.16.2-x64.msi
+curl -O https://nodejs.org/dist/v8.16.2/node-v12.13.1-x64.msi
+call node-v12.13.1-x64.msi
call npm config -g set msvs_version 2015
call meteor npm config -g set msvs_version 2015
diff --git a/rebuild-wekan.sh b/rebuild-wekan.sh index 8381e170..b45810fb 100755 --- a/rebuild-wekan.sh +++ b/rebuild-wekan.sh @@ -5,7 +5,7 @@ echo " with 'sudo dpkg-reconfigure locales' , so that MongoDB works correct echo " You can still use any other locale as your main locale." #Below script installs newest node 8.x for Debian/Ubuntu/Mint. -#NODE_VERSION=8.16.0 +#NODE_VERSION=12.13.1 #X64NODE="https://nodejs.org/dist/v${NODE_VERSION}/node-v${NODE_VERSION}-linux-x64.tar.gz" function pause(){ @@ -79,7 +79,7 @@ do curl -0 -L https://npmjs.org/install.sh | sudo sh sudo chown -R $(id -u):$(id -g) $HOME/.npm sudo npm -g install n - sudo n 8.16.2 + sudo n 12.13.1 #curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - #sudo apt-get install -y nodejs elif [[ "$OSTYPE" == "darwin"* ]]; then @@ -106,10 +106,10 @@ do exit; fi - ## Latest npm with Meteor 1.8.x + ## Latest npm with Meteor 1.9.x npm_call -g install npm npm_call -g install node-gyp - # Latest fibers for Meteor 1.8.x + # Latest fibers for Meteor 1.9.x sudo mkdir -p /usr/local/lib/node_modules/fibers/.node-gyp npm_call -g install fibers@4.0.1 # Install Meteor, if it's not yet installed 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. diff --git a/snap-src/bin/mongodb-control b/snap-src/bin/mongodb-control index a79785b0..27420035 100755 --- a/snap-src/bin/mongodb-control +++ b/snap-src/bin/mongodb-control @@ -52,14 +52,14 @@ if [ -z "$MONGO_URL" ]; then ## OLD: Logging to file. #mongod --dbpath $SNAP_COMMON --logpath $SNAP_COMMON/mongodb.log --logappend --journal $BIND_OPTIONS --smallfiles ## NEW: Logging to syslog, that usually has already log rotation. - mongod --dbpath $SNAP_COMMON --syslog --journal $BIND_OPTIONS --smallfiles --quiet + mongod --dbpath $SNAP_COMMON --syslog --journal $BIND_OPTIONS --quiet else ## OLD: Logging to file. #mongod --dbpath $SNAP_COMMON --logpath $SNAP_COMMON/mongodb.log --logappend --journal $MONGO_URL --smallfiles ## NEW: Logging to syslog, that usually has already log rotation. - mongod --dbpath $SNAP_COMMON --syslog --journal $MONGO_URL --smallfiles --quiet + mongod --dbpath $SNAP_COMMON --syslog --journal $MONGO_URL --quiet fi diff --git a/snapcraft.yaml b/snapcraft.yaml index 41f1585c..8bb6b207 100644 --- a/snapcraft.yaml +++ b/snapcraft.yaml @@ -65,7 +65,7 @@ apps: parts: mongodb: - source: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1604-3.2.22.tgz + source: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1604-4.2.1.tgz plugin: dump stage-packages: [libssl1.0.0] filesets: @@ -81,11 +81,11 @@ parts: wekan: source: . plugin: nodejs - node-engine: 8.16.2 + node-engine: 12.13.1 node-packages: - node-gyp - node-pre-gyp - - fibers@2.0.0 + - fibers@4.0.1 build-packages: - ca-certificates - apt-utils diff --git a/stacksmith/user-scripts/build.sh b/stacksmith/user-scripts/build.sh index 23dc7f84..fd468106 100755 --- a/stacksmith/user-scripts/build.sh +++ b/stacksmith/user-scripts/build.sh @@ -2,14 +2,13 @@ set -euxo pipefail BUILD_DEPS="bsdtar gnupg wget curl bzip2 python git ca-certificates perl-Digest-SHA" -NODE_VERSION=v8.16.2 -#METEOR_RELEASE=1.6.0.1 - for Stacksmith, meteor-1.8 branch that could have METEOR@1.8.1-beta.8 or newer +NODE_VERSION=v12.13.1 +#METEOR_RELEASE=1.9-beta.4 - for Stacksmith USE_EDGE=false -METEOR_EDGE=1.5-beta.17 +METEOR_EDGE=1.9-beta.4 NPM_VERSION=latest FIBERS_VERSION=4.0.1 ARCHITECTURE=linux-x64 -#NODE_VERSION=v10.14.1 sudo yum groupinstall -y 'Development Tools' sudo yum install -y http://opensource.wandisco.com/centos/7/git/x86_64/wandisco-git-release-7-2.noarch.rpm |