Skip to content

Commit cbdcb08

Browse files
add readme-sync integration (#259)
1 parent f950d6c commit cbdcb08

File tree

1 file changed

+32
-4
lines changed

1 file changed

+32
-4
lines changed

.travis.yml

Lines changed: 32 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,17 @@
11
language: minimal
22
env: GO111MODULE=on
33
git:
4-
depth: 1
4+
depth: false
55
install:
66
- eval "$(gimme)"
77
stages:
8-
- name: 'Lint markdown files'
8+
- 'Lint markdown files'
99
- 'Lint'
1010
- 'Unit test'
1111
- 'Benchmark test'
1212
- 'Integration tests'
1313
- 'Source clear'
14+
- 'Readme-sync'
1415
jobs:
1516
include:
1617
- stage: 'Lint markdown files'
@@ -19,8 +20,6 @@ jobs:
1920
install: gem install awesome_bot
2021
script:
2122
- find . -type f -name '*.md' -exec awesome_bot {} \;
22-
notifications:
23-
email: false
2423

2524
# - stage: 'Lint markdown files'
2625
# os: linux
@@ -96,3 +95,32 @@ jobs:
9695
addons:
9796
srcclr: true
9897
script: go get -v -d ./...
98+
99+
- stage: 'Readme-sync'
100+
name: 'run script if changes are detected in docs/'
101+
cache: false
102+
103+
# translation: if we're merging into master branch...
104+
if: type = push AND branch = master
105+
106+
language: node_js
107+
install:
108+
- mkdir $HOME/readme-sync2 && pushd $HOME/readme-sync2 && git init && git pull https://[email protected]/optimizely/readme-sync2.git && popd
109+
- source ~/.nvm/nvm.sh && cd $HOME/readme-sync2 && nvm install && npm install
110+
# this preps the input directory for readme-sync script
111+
- mkdir -p $HOME/readme-sync2/docs/readme-sync/sdk-reference-guides
112+
# ${TRAVIS_REPO_SLUG#optimizely/} translates to go-sdk docs/readme-sync/sdk-reference-guides/go-sdk
113+
- ln -s $TRAVIS_BUILD_DIR/docs/readme-sync/sdk-reference-guides/${TRAVIS_REPO_SLUG#optimizely/} $HOME/readme-sync2/docs/readme-sync/sdk-reference-guides/${TRAVIS_REPO_SLUG#optimizely/}
114+
115+
# now we need to get all the other *-sdk repos too
116+
#
117+
# first we list all possible sdks and inside the for loop, remove the one we are updating
118+
- export ALL_SDK_REPOS="android-sdk csharp-sdk go-sdk java-sdk javascript-sdk objective-c-sdk python-sdk react-sdk ruby-sdk swift-sdk"
119+
- mkdir $HOME/sdks && pushd $HOME/sdks && for i in ${ALL_SDK_REPOS//${TRAVIS_REPO_SLUG#optimizely/}}; do git clone https://github.com/optimizely/$i; ( [ -d "$HOME/sdks/$i/docs/readme-sync/sdk-reference-guides/$i" ] && ln -s $HOME/sdks/$i/docs/readme-sync/sdk-reference-guides/$i $HOME/readme-sync2/docs/readme-sync/sdk-reference-guides/$i ) || true; done && popd
120+
# check our work
121+
- ls -al $HOME/sdks
122+
- ls -al $HOME/readme-sync2/docs/readme-sync/sdk-reference-guides
123+
script:
124+
# we need to be in $TRAVIS_BUILD_DIR in order to run the following git diff properly
125+
- cd $TRAVIS_BUILD_DIR
126+
- git diff --quiet $TRAVIS_COMMIT_RANGE -- docs/readme-sync || ( cd $HOME/readme-sync2 && npx ts-node sync/index.ts --apiKey $README_SYNC_API_KEY --version 4.0 --docs docs/readme-sync/ )

0 commit comments

Comments
 (0)