From a188a3a8cae3881d34334b9c53203de1bcfe5a6a Mon Sep 17 00:00:00 2001 From: Marco Bonelli Date: Wed, 10 Jul 2019 18:38:59 +0200 Subject: [PATCH] Travis: separate building from deployment. - Added `-q` to the zip command to create the archive since Travis was having trouble handling its very long output (thus making the build fail). - Moved the actual building of the index and the archive from deploy.sh to a new build.sh script. - Added a `script` step in .travis.yml to run build.sh after npm test. - Specified a clone depth of 1 in .travis.yml to make things faster since we don't need to do any git operation during the build. --- .travis.yml | 7 +++++++ scripts/build.sh | 32 ++++++++++++++++++++++++++++++++ scripts/deploy.sh | 16 +--------------- 3 files changed, 40 insertions(+), 15 deletions(-) create mode 100644 scripts/build.sh diff --git a/.travis.yml b/.travis.yml index 48a04db6f7..f171c4e2ef 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,6 +4,13 @@ language: node_js node_js: stable cache: false +git: + depth: 1 + +script: + - npm test + - bash scripts/build.sh + after_failure: - python scripts/send_to_bot.py < test_result diff --git a/scripts/build.sh b/scripts/build.sh new file mode 100644 index 0000000000..eef4d4a511 --- /dev/null +++ b/scripts/build.sh @@ -0,0 +1,32 @@ +#!/usr/bin/env bash + +# This script is executed by Travis CI for every successful push (on any branch, PR or not). +set -ex + +function initialize { + if [ -z "$TLDRHOME" ]; then + export TLDRHOME=${TRAVIS_BUILD_DIR:-$(pwd)} + fi + + export TLDR_ARCHIVE="tldr.zip" +} + +function build_index { + npm run build-index + echo "Pages index succesfully built." +} + +function build_archive { + rm -f "$TLDR_ARCHIVE" + cd "$TLDRHOME/" + zip -q -r "$TLDR_ARCHIVE" pages* LICENSE.md index.json + echo "Pages archive succesfully built." +} + +################################### +# MAIN +################################### + +initialize +build_index +build_archive diff --git a/scripts/deploy.sh b/scripts/deploy.sh index 4798b40905..2aee724176 100644 --- a/scripts/deploy.sh +++ b/scripts/deploy.sh @@ -7,9 +7,9 @@ function initialize { if [ -z "$TLDRHOME" ]; then export TLDRHOME=${TRAVIS_BUILD_DIR:-$(pwd)} fi + export TLDR_ARCHIVE="tldr.zip" export SITE_HOME="$HOME/site" - export SITE_URL="github.com/tldr-pages/tldr-pages.github.io" export SITE_REPO_SLUG="tldr-pages/tldr-pages.github.io" # Configure git. @@ -25,18 +25,6 @@ function initialize { ssh-add id_ed25519 } -function rebuild_index { - npm run build-index - echo "Rebuilding index done." -} - -function build_archive { - rm -f "$TLDR_ARCHIVE" - cd "$TLDRHOME/" - zip -r "$TLDR_ARCHIVE" pages*/ LICENSE.md index.json - echo "Pages archive created." -} - function upload_assets { git clone --quiet --depth 1 git@github.com:${SITE_REPO_SLUG}.git "$SITE_HOME" mv -f "$TLDR_ARCHIVE" "$SITE_HOME/assets/" @@ -55,6 +43,4 @@ function upload_assets { ################################### initialize -rebuild_index -build_archive upload_assets