language: objective-c osx_image: xcode6.4 cache: directories: - node_modules - .nvm before_install: # Update brew twice because the first run can fail: https://github.com/Homebrew/homebrew/issues/42553 - brew update; brew update install: - brew reinstall xctool nvm - mkdir -p .nvm - export NVM_DIR="$PWD/.nvm" - source $(brew --prefix nvm)/nvm.sh - nvm install iojs-v3 - rm -Rf `node -p "require('os').tmpDir()"`/jest_preprocess_cache - npm install -g flow-bin@`node -p "require('fs').readFileSync('.flowconfig', 'utf8').split('[version]')[1].trim()"` - npm config set spin=false - npm install script: - | if [ "$TEST_TYPE" = objc ] then ./scripts/objc-test.sh elif [ "$TEST_TYPE" = js ] then flow check && npm test elif [ "$TEST_TYPE" = build_website ] then cd website $(which npm) install ./setup.sh if [ "$TRAVIS_PULL_REQUEST" = false ] && [ "$TRAVIS_BRANCH" = master ]; then # Automatically publish the website echo "machine github.com login reactjs-bot password $GITHUB_TOKEN" >~/.netrc ./publish.sh else # Make sure the website builds without error node server/generate.js fi elif [ "$TEST_TYPE" = e2e ] then ./scripts/e2e-test.sh else echo "Unknown test type: $TEST_TYPE" exit 1 fi env: matrix: - TEST_TYPE=objc - TEST_TYPE=js - TEST_TYPE=build_website - TEST_TYPE=e2e global: - secure: "HlmG8M2DmBUSBh6KH1yVIe/8gR4iibg4WfcHq1x/xYQxGbvleq7NOo04V6eFHnl9cvZCu+PKH0841WLnGR7c4BBf47GVu/o16nXzggPumHKy++lDzxFPlJ1faMDfjg/5vjbAxRUe7D3y98hQSeGHH4tedc8LvTaFLVu7iiGqvjU=" branches: only: - master