123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- language: objective-c
-
- env:
- global:
- - secure: "gve1nkeKkwFEG1VAT3i+JwYyAdF0gKXwKx0uxbkBTsmm2M+0MDusohQdFLoEIkSIFktXBIDefoa7iGpLKRfG2VsZLpwJgnvnD0HqbnuR+k+W+bu7BHt4CAaR6GTllsDCjyq9zNyhUThzSnf2WNIpOEF5kHspZlbGfawURuUJH/U="
- - secure: "jqVpmWxxBVXu2X8+XJMpKH0cooc2EKz9xKL2znBfYdNafJORSXcFAVbjCX5mZmVDcgIMwDtm2+gIG4P73hzJ2e3S+y2Z9ROJGyXHa3AxUTvXHQsxqzH8coHHqB8vTvfr0t2O5aKfpvpICpSea39r0hzNoMv6Ie5SwBdqj1YY9K0="
- matrix:
- - NODE_VERSION="v10"
- - NODE_VERSION="v9"
- - NODE_VERSION="v8"
- - NODE_VERSION="v7"
- - NODE_VERSION="v6"
- - NODE_VERSION="v5"
- - NODE_VERSION="v4"
- - NODE_VERSION="v0.10"
-
- before_install:
-
- - echo $TRAVIS_OS_NAME
-
- # commit
- # ------------------------
- # The commit message is used to determine the whether to manually
- # invoke a binary publish
-
- - COMMIT_MESSAGE=$(git show -s --format=%B $TRAVIS_COMMIT | tr -d '\n')
-
- # node
- # ------------------------
-
- - export PATH=./node_modules/.bin/:$PATH
- - rm -rf ~/.nvm && git clone --depth 1 https://github.com/creationix/nvm.git ~/.nvm
- - source ~/.nvm/nvm.sh
- - nvm install $NODE_VERSION
- - nvm use $NODE_VERSION
- - npm install -g npm@3
- - node --version
- - npm --version
- - nvm --version
-
- # publish dependencies
- # ------------------------
-
- - npm install node-gyp -g
- - npm install aws-sdk
-
- install:
-
- # in the first instance we build from source to create the initial binary
- # which can then be used to create a package
-
- - npm install --build-from-source
- - npm test
-
- before_script:
-
- # Detemine if a publish is required.
- #
- # a) we are building a tag
- # b) we put [publish binary] in the commit message
-
- - PUBLISH_BINARY=false
-
- - if [[ $TRAVIS_BRANCH == `git describe --tags --always HEAD` ]]; then PUBLISH_BINARY=true; fi; # a
- - if test "${COMMIT_MESSAGE#*'[publish binary]'}" != "$COMMIT_MESSAGE"; then PUBLISH_BINARY=true; fi; # b
-
- # package & publish
- # ------------------------
-
- - if [[ $PUBLISH_BINARY == true ]]; then npm run node-pre-gyp package publish; fi;
-
- # clean-up
- # ------------------------
-
- - npm run node-pre-gyp clean
- - node-gyp clean
-
- script:
-
- # validate
- # ------------------------
- # Post publishing a release verify that installing will pull down latest
- # binary from remote host
-
- - INSTALL_RESULT=0
- - if [[ $PUBLISH_BINARY == true ]]; then INSTALL_RESULT=$(npm install --fallback-to-build=false > /dev/null)$? || true; fi;
-
- - npm run node-pre-gyp clean
-
- # failure?
- # ------------------------
- # if install returned non zero (errored) then we first unpublish and then
- # call false so travis will bail at this line.
-
- - if [[ $INSTALL_RESULT != 0 ]]; then npm run node-pre-gyp unpublish; fi;
- - if [[ $INSTALL_RESULT != 0 ]]; then echo "returned $INSTALL_RESULT";false; fi;
-
- after_success:
-
- # display all published binaries
-
- - npm run node-pre-gyp info
|