diff options
author | Lauri Ojansivu <x@xet7.org> | 2018-07-02 19:05:39 +0300 |
---|---|---|
committer | Lauri Ojansivu <x@xet7.org> | 2018-07-02 19:05:39 +0300 |
commit | 44e20023cce82d7f10fba2c97ece53287eb6f3f1 (patch) | |
tree | e29507c60700e7cefc2020439ab7e2118918aeb0 | |
parent | e03ee1bd2f4217b0ac2be05ed556aeba0480ff83 (diff) | |
download | wekan-44e20023cce82d7f10fba2c97ece53287eb6f3f1.tar.gz wekan-44e20023cce82d7f10fba2c97ece53287eb6f3f1.tar.bz2 wekan-44e20023cce82d7f10fba2c97ece53287eb6f3f1.zip |
Try to fix Dockerfile.
-rw-r--r-- | Dockerfile | 52 | ||||
-rwxr-xr-x | download-sandstorm-node.sh | 66 |
2 files changed, 69 insertions, 49 deletions
@@ -47,55 +47,9 @@ RUN \ # Fiber.poolSize = 1e9; # Getting newest Node from Sandstorm fork of Node # Source: https://github.com/sandstorm-io/node - \ - # From https://github.com/sandstorm-io/sandstorm/blob/master/branch.conf - SANDSTORM_BRANCH_NUMBER=0 && \ - \ - # From https://github.com/sandstorm-io/sandstorm/blob/master/release.sh - SANDSTORM_CHANNEL=dev && \ - SANDSTORM_LAST_BUILD=$(curl -fs https://install.sandstorm.io/$SANDSTORM_CHANNEL) && \ - \ - # Latest Sandstorm Release - if (( SANDSTORM_LAST_BUILD / 1000 > SANDSTORM_BRANCH_NUMBER )); && \ - then && \ - echo "SANDSTORM BRANCH ERROR: $CHANNEL has already moved past this branch!" >&2 && \ - echo " I refuse to replace it with an older branch." >&2 && \ - exit 1 && \ - fi && \ - BASE_BUILD=$(( BRANCH_NUMBER * 1000 )) && \ - BUILD=$(( BASE_BUILD > LAST_BUILD ? BASE_BUILD : LAST_BUILD + 1 )) && \ - BUILD_MINOR="$(( $BUILD % 1000 ))" && \ - DISPLAY_VERSION="${BRANCH_NUMBER}.${BUILD_MINOR}" && \ - TAG_NAME="v${DISPLAY_VERSION}" && \ - SIGNING_KEY_ID=160D2D577518B58D94C9800B63F227499DA8CCBD && \ - TARBALL=sandstorm-$SANDSTORM_LAST_BUILD.tar.xz && \ - NODE_EXE=sandstorm-$SANDSTORM_LAST_BUILD/bin/node && \ - # Downloading Sandstorm GPG keys to verify Sandstorm release. - # Do verification in custom GPG workspace - # https://docs.sandstorm.io/en/latest/install/#option-3-pgp-verified-install - export GNUPGHOME=$(mktemp -d) && \ - curl https://raw.githubusercontent.com/sandstorm-io/sandstorm/master/keys/release-keyring.gpg | gpg --import && \ - wget https://raw.githubusercontent.com/sandstorm-io/sandstorm/master/keys/release-certificate.kentonv.sig && \ - gpg --decrypt release-certificate.kentonv.sig && \ - # Downloading Sandstorm release from https://dl.sandstorm.io/${TARBALL} - wget https://dl.sandstorm.io/$TARBALL && \ - # Downloading signature for Sandstorm release from https://dl.sandstorm.io/${TARBALL}.sig - wget https://dl.sandstorm.io/$TARBALL.sig && \ - # Verifying signature of Sandstorm release - gpg --verify $TARBALL.sig $TARBALL && \ - \ - if [ $? -eq 0 ] \ - then \ - echo "=== All is well. Good signature in Sandstorm." \ - else \ - echo "=== PROBLEM WITH SANDSTORM SIGNATURE." \ - exit 1 \ - fi && \ - echo "=== Extracting Node from Sandstorm release tarball" && \ - # --strip 2 removes path of 2 subdirectories - tar -xf $TARBALL $NODE_EXE --strip=2 && \ - # Deleting Sandstorm release tarball and signature - rm $TARBALL $TARBALL.sig release-certificate.kentonv.si* && \ + wget https://github.com/wekan/wekan/blob/devel/download-sandstorm-node.sh && \ + bash download-sandstorm-node.sh && \ + rm download-sandstorm-node.sh && \ # == OLD == # Download node version 8.11.1 that has fix included, node binary copied from Sandstorm # Description at https://releases.wekan.team/node.txt diff --git a/download-sandstorm-node.sh b/download-sandstorm-node.sh new file mode 100755 index 00000000..2e611f05 --- /dev/null +++ b/download-sandstorm-node.sh @@ -0,0 +1,66 @@ +#!/bin/bash + +echo "=== GETTING NEWEST NODE FROM SANDSTORM FORK OF NODE ===" +echo "=== SOURCE: https://github.com/sandstorm-io/node ===" + +# From https://github.com/sandstorm-io/sandstorm/blob/master/branch.conf +SANDSTORM_BRANCH_NUMBER=0 + +# From https://github.com/sandstorm-io/sandstorm/blob/master/release.sh +SANDSTORM_CHANNEL=dev +SANDSTORM_LAST_BUILD=$(curl -fs https://install.sandstorm.io/$SANDSTORM_CHANNEL) + +echo "=== LATEST SANDSTORM RELEASE: ${SANDSTORM_LAST_BUILD}===" + +if (( SANDSTORM_LAST_BUILD / 1000 > SANDSTORM_BRANCH_NUMBER )); then + echo "SANDSTORM BRANCH ERROR: $CHANNEL has already moved past this branch!" >&2 + echo " I refuse to replace it with an older branch." >&2 + exit 1 +fi + +BASE_BUILD=$(( BRANCH_NUMBER * 1000 )) +BUILD=$(( BASE_BUILD > LAST_BUILD ? BASE_BUILD : LAST_BUILD + 1 )) +BUILD_MINOR="$(( $BUILD % 1000 ))" +DISPLAY_VERSION="${BRANCH_NUMBER}.${BUILD_MINOR}" +TAG_NAME="v${DISPLAY_VERSION}" +SIGNING_KEY_ID=160D2D577518B58D94C9800B63F227499DA8CCBD + +TARBALL=sandstorm-$SANDSTORM_LAST_BUILD.tar.xz +NODE_EXE=sandstorm-$SANDSTORM_LAST_BUILD/bin/node + +echo "=== DOWNLOADING SANDSTORM GPG KEYS TO VERIFY SANDSTORM RELEASE ===" + +# Do verification in custom GPG workspace +# https://docs.sandstorm.io/en/latest/install/#option-3-pgp-verified-install +export GNUPGHOME=$(mktemp -d) + +curl https://raw.githubusercontent.com/sandstorm-io/sandstorm/master/keys/release-keyring.gpg | \ + gpg --import + +wget https://raw.githubusercontent.com/sandstorm-io/sandstorm/master/keys/release-certificate.kentonv.sig + +gpg --decrypt release-certificate.kentonv.sig + +echo "=== DOWNLOADING SANDSTORM RELEASE FROM https://dl.sandstorm.io/${TARBALL} ===" +wget https://dl.sandstorm.io/$TARBALL + +echo "=== DOWNLOADING SIGNATURE FOR SANDSTORM RELEASE FROM https://dl.sandstorm.io/${TARBALL}.sig ===" +wget https://dl.sandstorm.io/$TARBALL.sig + +echo "=== VERIFYING SIGNATURE OF SANDSTORM RELEASE ===" +gpg --verify $TARBALL.sig $TARBALL + +if [ $? -eq 0 ] +then + echo "=== ALL IS WELL. GOOD SIGNATURE IN SANDSTORM. ===" +else + echo "=== PROBLEM WITH SANDSTORM SIGNATURE. ===" + exit 1 +fi + +echo "=== EXTRACTING NODE FROM SANDSTORM RELEASE TARBALL ===" +# --strip 2 removes path of 2 subdirectories +tar -xf $TARBALL $NODE_EXE --strip=2 + +echo "=== REMOVING SANDSTORM RELEASE TARBALL AND SIGNATURE ===" +rm $TARBALL $TARBALL.sig release-certificate.kentonv.si* |