From 644819ed818d4ed0aa0a60e461e0c8072833c13e Mon Sep 17 00:00:00 2001 From: Dolan Date: Sun, 16 Apr 2017 12:22:50 +0100 Subject: [PATCH] added deployment keys and scripts --- .travis.yml | 12 ++++------ deploy-docs.sh | 63 +++++++++++++++++++++++++++++++++++++++++++++++++ deploy-key.enc | Bin 0 -> 3248 bytes 3 files changed, 68 insertions(+), 7 deletions(-) create mode 100644 deploy-docs.sh create mode 100644 deploy-key.enc diff --git a/.travis.yml b/.travis.yml index 843e910d51..8c2dd75045 100644 --- a/.travis.yml +++ b/.travis.yml @@ -8,10 +8,8 @@ script: after_failure: - "cat /home/travis/builds/dolanmiu/docx/npm-debug.log" after_success: - - git fetch - - git checkout gh-pages - - git merge master --ff -m "merging with master" - - npm run typedoc - - git add . - - git commit -a -m 'updated documentation' - - git push + - bash ./deploy-docs.sh +env: + global: + - ENCRYPTION_LABEL: "ad385fa3b525" + diff --git a/deploy-docs.sh b/deploy-docs.sh new file mode 100644 index 0000000000..60e7ef9903 --- /dev/null +++ b/deploy-docs.sh @@ -0,0 +1,63 @@ +#!/bin/bash +set -e # Exit with nonzero exit code if anything fails + +SOURCE_BRANCH="master" +TARGET_BRANCH="gh-pages" + +function doCompile { + npm run typedoc +} + +# Pull requests and commits to other branches shouldn't try to deploy, just build to verify +if [ "$TRAVIS_PULL_REQUEST" != "false" -o "$TRAVIS_BRANCH" != "$SOURCE_BRANCH" ]; then + echo "Skipping deploy; just doing a build." + doCompile + exit 0 +fi + +# Save some useful information +REPO=`git config remote.origin.url` +SSH_REPO=${REPO/https:\/\/github.com\//git@github.com:} +SHA=`git rev-parse --verify HEAD` + +# Clone the existing gh-pages for this repo into docs/ +# Create a new empty branch if gh-pages doesn't exist yet (should only happen on first deply) +git clone $REPO docs +cd docs +git checkout $TARGET_BRANCH || git checkout --orphan $TARGET_BRANCH +cd .. + +# Clean out existing contents +rm -rf docs/**/* || exit 0 + +# Run our compile script +doCompile + +# Now let's go have some fun with the cloned repo +cd docs +git config user.name "Travis CI" +git config user.email "dolan_miu@hotmail.com" + +# If there are no changes to the compiled out (e.g. this is a README update) then just bail. +if [ -z `git diff --exit-code` ]; then + echo "No changes to the output on this push; exiting." + exit 0 +fi + +# Commit the "changes", i.e. the new version. +# The delta will show diffs between new and old versions. +git add . +git commit -m "Deploy to GitHub Pages: ${SHA}" + +# Get the deploy key by using Travis's stored variables to decrypt deploy-key.enc +ENCRYPTED_KEY_VAR="encrypted_${ENCRYPTION_LABEL}_key" +ENCRYPTED_IV_VAR="encrypted_${ENCRYPTION_LABEL}_iv" +ENCRYPTED_KEY=${!ENCRYPTED_KEY_VAR} +ENCRYPTED_IV=${!ENCRYPTED_IV_VAR} +openssl aes-256-cbc -K $ENCRYPTED_KEY -iv $ENCRYPTED_IV -in deploy-key.enc -out deploy-key -d +chmod 600 deploy-key +eval `ssh-agent -s` +ssh-add deploy-key + +# Now that we're all set up, we can push. +git push $SSH_REPO $TARGET_BRANCH diff --git a/deploy-key.enc b/deploy-key.enc new file mode 100644 index 0000000000000000000000000000000000000000..5152d4baf493f370d08f00cfef683c1656d3de55 GIT binary patch literal 3248 zcmV;h3{Ug_^sLEqIL=Z-z*i<|b8JKKOHDkAm1}=AgK0T`Tu*xmHauSV-pUnTJ!F-C zx}Y2Jw83Wn0ox(_5=*Fg9f2t&zJXh3(Tn1Ozracb{Ox6ejbcQs=FAh?PYLL<78{Fb zZaC5<3vjEL%Qp}2CwD`^v<{J4=h->MCe7j9-5MDHdu1P3PcW?xu`vv*t&G2tODbT7W+ z583<2hY+@8X-CcIpV_#DErw9`#k~iL?<=H-b0=~v$C{k-0rR~eiCs@+yTZ@0mU?yO zUz!{WX8U~WN_*|<%9UZ(%6YuA;dO9;6(4QASr-rLSDUaTpj{;T$m z^R_v{uRmjRd%Y}1syRLXUl>Q-!MBq+NSwf^L4d}*Q+vwwwc6E7g|MAR?*kL#qhQmk z;mx2iPUk{0=o+C+xhMn4eCaPdrI+~aUk{zYfxt?L{t=1kOR95tpqVzHm4{vE;PN>mLSOm9!}Cme7FMP)h58tTc7PuVBRk2M!6O5Jw48 zLDc~JM#fBV%A6cLiLn)PB}F!eF{UGBtF8oBXcWqqLrq_qYIrP2i*`JERyx~nh4<{f zhwA3yM_;@DR;lMIHSM zd|v~+Ot5HMvD&*1eS3Qy>mknIcVuOhM?`~j2)CcjhDW;(!Rx&%uld`uREvrsggiL{ z;obC>Us-*yTu`_fxP`9c^ttvb_>dH;@}vQKj2$kWGWxg%g1i~E{nzTPU^2beQ-aJa zZ|M>HfyuU18V%ilg&-}!#WH}7*$`R7GvG1-(pU$Gjz{v<&61+88vD$VVt4NeAZ4Wz zDsQTj>%w~>?wE%*UI@~!w*A1*dNc={3R8TDF41BMOKupcWn1reaato{lb%Xz)Y0BZ zsG`7?E3DE=;9W$f#6T|q)t?}L`tSj_4ctl5;oMal5d3Mry|<`?)rVxZEh_<-8<#cK z9e-2<;v)OPd{qEGEfV}Ac&dI->&x*ohvJ8Sf`e} z@_j}m?MRi97C-ah5lcQW#uHsq$D%)qNo4tX+-N(0c?1FgAGjppmKGu;(#D;k1N&3# ztRQ*;1c8qRPivs`s_00p9F{AJB0NM@nDD9J$J;RnWh(knDJ|Y0g8Y4ik4boA z2*S^+!pBpfi-0wRero;=MX+OTvMQ*#*hlO4h9%HF%iiza2X#l0pG9xa(H+g$@{ZeDZ%7Z|ODJr)i12gvZh9wKloX zDOp(>lp`LNl%*ZTALAUmP%WNQW5QqNzrW;px9^E{>uYb(sx*8 z4eSJ@4F#sKLn7=&lS;+@Jy<~7)cX1Z(o)}3`cw&vf`xKEL3c*u#T*Z13K;-REgiIZ zmp~;<*L9Gkl8$d0_jbQAtN8W8a8q&IHWb??gC9viv?U>roVd(o1;()D6-ppdDj4B? zBz*H?7CwX1b}u=6G+(#;$s{ZB7vii1FW7)7=~YOLu-SwmPs(6A;l1L{#VzMu$6tGv zI^^LZe7w_vp_;O=150J+%vLllQ%Gq3&0dH_$HgTK*;f!;F%BbcT!|jQfE8}!n*D2d zi#4vUnULN0M;ceWdHVTDn)1dG13A<+r__0<+LDEsKfFRUSM9za!Q4(?62l)zRBlLU z=J)$hetA}?n<}e$mfndV|JI(0F1(pbeq-hzW`S90d2(PIf__B7)k`j|Qyc@e>RPLV zX<~!e3kuTkY7Sh>)~+D8Iw_q2n`4m9Zr(07y!qwH8c|uZOlg?CAfFs9LH_700Q(CG zr5O{jYc$DJF;=!?X#SHqkp1!Km?2yaKKvG2*p+FaFu06K0E8WLkn3)^>qv^BQOO$= z{s`f8uPIT@Q0!>-B|$2OVH_i5P^5PRVFf&&WEw@c`C~}uPiqp)0xzD8URNhEZ)GdC zE$GGp!T=MXxoz{q0p&*`-t--h{wd}3o_Yksx1m>8Q{GFtW(U;E#g^qIVu~|o?{N88 zhEOyVA8rQ?+M9HnLH>>?`X2?S0ICV3H?(mYxhJ%?-hYb^Y|%gDfr$z z9tI#R%O@X6s)l$+pZsJsR5)$hD3Ji}XGn}0;pbZP0z{H3_VC5oeJUvk{<~iC+VWv$ zM?Mf>kYX*OXQ?8Y?^pDFXUcP_rsG;Ts?~k3H^LtFltHg}pGFa-LRsX#em#UXHk^LH ze7b_xIu`H=GeDcS4JYayQS1s7nnelf>TJaa%sdh=TH{no0J+`g(m=#wz^P+vU_erF-Q|_Qf}3AT-NdAj!ZHHsIIqlySwvV~YK& zB<2z-%e!1QRfm=g5XSS&EF4sA(eI5H&unbvMnvx^C4sX`W*D4lr)PhoPE$60l+(U^ zwJJYELZr+xw=K6J#LRA4Y-qcF#&9Np@h|lkE+R^#tg?{(Il#BI!1{W^k6_Xno2Jn1 z6{V+ohHER!un;+c|JpiHarzf^e}VGy8M@lC7Yx4zVfcC!1GnGm`-PfJSVxA1`sVy* zH^`a*^PWCk1rbHMw5ZIhsO>tzy zJz5BQSbYNFu-nju&P8tz(U33R5+f~c^zgX)Y5r|*rdxznmXs95iLn1w)A zKVMGgctAr=OB%~Lzk|W51IT$P&ze~$nFZ8~Ag<<*s8Y^1B3Oui(HTkK%qQft6Vn7P i?kUi>mGv4Z;~