From 7fae3203d53d2bf22a6f9dad88748c562bb88ba4 Mon Sep 17 00:00:00 2001 From: Ruben Taelman Date: Tue, 1 Sep 2020 11:15:00 +0200 Subject: [PATCH] feat: add package validator to CI --- .travis.yml | 1 + .travis/validate-package.sh | 31 +++++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100755 .travis/validate-package.sh diff --git a/.travis.yml b/.travis.yml index bfd5cf0f2..bf1da0166 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,6 +9,7 @@ script: - npm run lint - npm run validate - npm run test + - .travis/validate-package.sh after_success: - npm run coveralls cache: npm diff --git a/.travis/validate-package.sh b/.travis/validate-package.sh new file mode 100755 index 000000000..4179e53cc --- /dev/null +++ b/.travis/validate-package.sh @@ -0,0 +1,31 @@ +#!/usr/bin/env bash +# Script to validate our packed package + +npm pack +tar -xzf solid-community-server-*.tgz +pushd package + +# Check if our server can start at a given port +node bin/server.js -p 8888 & +pid=$! +i=0 +EXITCODE=0 +until curl -s localhost:8888; do + sleep 1 + + # Try for at most 10 seconds, assume failure otherwise + let i++ + if [ $i -gt 10 ]; then + echo "Server start timeout" + echo " Server may have failed to start, or is running at an unexpected port." + kill -9 $pid + EXITCODE=1 + break; + fi +done > /dev/null +kill -9 $pid + +popd +rm -r package +rm solid-community-server-*.tgz +exit $EXITCODE