react-native/.travis.yml

71 lines
1.4 KiB
YAML

language: objective-c
cache:
directories:
- node_modules
before_install:
- brew update
install:
- brew reinstall flow watchman xctool
- npm config set spin=false
- npm install
script:
- |
if [ "$TEST_TYPE" = objc ]
then
(npm start > packager.log 2>&1 &)
echo $! > packager.pid
xctool \
-project Examples/UIExplorer/UIExplorer.xcodeproj \
-scheme UIExplorer -sdk iphonesimulator8.1 \
test
pkill -9 -F packager.pid
cat packager.log
rm packager.log packager.pid
elif [ "$TEST_TYPE" = js ]
then
flow check && npm test
elif [ "$TEST_TYPE" = build_website ]
then
cd website
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