From eaa8b9cb1e52bcdba1b5349920249ae3b383565b Mon Sep 17 00:00:00 2001 From: Michael Vines Date: Thu, 8 Nov 2018 22:19:51 -0800 Subject: [PATCH] Publish book --- ci/buildkite-secondary.yml | 5 +++- ci/publish-book.sh | 51 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+), 1 deletion(-) create mode 100755 ci/publish-book.sh diff --git a/ci/buildkite-secondary.yml b/ci/buildkite-secondary.yml index 3ac1e4de9..c0c60eb91 100644 --- a/ci/buildkite-secondary.yml +++ b/ci/buildkite-secondary.yml @@ -13,4 +13,7 @@ steps: name: "publish bpf sdk" - command: "ci/publish-solana-tar.sh" timeout_in_minutes: 15 - name: "publish solana release tar" + name: "publish release tarball" + - command: "ci/publish-book.sh" + timeout_in_minutes: 15 + name: "publish book" diff --git a/ci/publish-book.sh b/ci/publish-book.sh new file mode 100755 index 000000000..36e528de8 --- /dev/null +++ b/ci/publish-book.sh @@ -0,0 +1,51 @@ +#!/bin/bash -e + +cd "$(dirname "$0")/.." + +_() { + echo "--- $*" + "$@" +} + +maybe_install() { + for cmd in "$@"; do + set +e + "$cmd" --help > /dev/null 2>&1 + declare exitcode=$? + set -e + if [[ $exitcode -ne 0 ]]; then + _ cargo install "$cmd" + fi + done +} + +export PATH=$CARGO_HOME/bin:$PATH +maybe_install mdbook +_ mdbook test +_ mdbook build + +echo --- create book repo +( + set -x + cd book/ + git init . + git config user.email "maintainers@solana.com" + git config user.name "$(basename "$0")" + git commit -m "Initial commit" --allow-empty + git add ./* ./.nojekyll + git commit -m "$BUILDKITE_COMMIT" +) + +echo --- publish +if [[ $BUILDKITE_BRANCH = master ]]; then + ( + set -x + cd book/ + git remote add origin git@github.com:solana-labs/solana.git + git push -f origin HEAD:gh-pages + ) +else + echo "Publish skipped" +fi + +exit 0