osx_image: xcode9.2 language: objective-c cache: - bundler - cocoapods rvm: 2.3.1 before_install: # Add next line back with updated DeviceUDID for xcode9.1 if stability issues with simulator # - open -a "simulator" --args -CurrentDeviceUDID ABBD7191-486B-462F-80B4-AE08C5820DA1 - bundle install - gem install xcpretty - bundle exec pod install --project-directory=Example --repo-update - bundle exec pod install --project-directory=Firestore/Example --no-repo-update - brew install clang-format - brew install cmake - brew install go # Somehow the build for Abseil requires this. - echo "$TRAVIS_COMMIT_RANGE" - echo "$TRAVIS_PULL_REQUEST" - | if [ "$TRAVIS_PULL_REQUEST" == "false" ]; then SKIP_FIREBASE=0 SKIP_FIRESTORE=0 else git diff --name-only $TRAVIS_COMMIT_RANGE | grep -Eq '^(Firebase|Example)' SKIP_FIREBASE="$?" git diff --name-only $TRAVIS_COMMIT_RANGE | grep -q Firestore SKIP_FIRESTORE="$?" fi script: # Fail on trailing whitespace in non-binary, non-generated-nanopb files - "! git grep -I ' $' ':(exclude)Firestore/Protos/nanopb'" - "! git grep -EL --name-only 'Copyright [0-9]{4}.*Google' | grep -v third_party | egrep '\\.(m|h|cc|mm|c)$'" - ./scripts/style.sh test-only # Validate clang-format compliance - | if [ $SKIP_FIREBASE != 1 ]; then ./test.sh fi - | if [ $SKIP_FIRESTORE != 1 ]; then ./scripts/lint.sh # Google C++ style compliance fi - | if [ $SKIP_FIRESTORE != 1 ]; then ./Firestore/test.sh fi # TODO fix os_log deprecation warning in FIRLogger to remove --allow-warnings - | if [ $SKIP_FIREBASE != 1 ]; then bundle exec pod lib lint FirebaseCore.podspec --allow-warnings fi # TODO - Uncomment subsequent lines once FirebaseCore source repo is in public Specs repo # - bundle exec pod lib lint FirebaseAuth.podspec # - bundle exec pod lib lint FirebaseDatabase.podspec # - bundle exec pod lib lint FirebaseMessaging.podspec --allow-warnings #pending #390 fix # - bundle exec pod lib lint FirebaseStorage.podspec # - bundle exec pod lib lint Firestore/Firestore.podspec branches: only: - master