diff options
author | Konstantin Varlamov <var-const@users.noreply.github.com> | 2018-04-23 14:11:27 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-23 14:11:27 -0400 |
commit | 758b29aec4c2a76bd85f521ba652ceedd11313f1 (patch) | |
tree | c67e4ff4eb649278f50094a05f33f22b304099e8 /scripts/install_prereqs.sh | |
parent | e4384c3e809556e75907df74cd116307f397472f (diff) |
Firestore Travis: add test runs using sanitizers (#1128)
Also move most of `before_install` actions from Travis config into scripts to reduce duplication.
Diffstat (limited to 'scripts/install_prereqs.sh')
-rwxr-xr-x | scripts/install_prereqs.sh | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/scripts/install_prereqs.sh b/scripts/install_prereqs.sh new file mode 100755 index 0000000..c86663f --- /dev/null +++ b/scripts/install_prereqs.sh @@ -0,0 +1,47 @@ +# Copyright 2018 Google +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Within Travis, installs prerequisites for a build. + +# Examines the following configured environment variables that should be +# specified in an env: block +# - PROJECT - Firebase or Firestore +# - METHOD - xcodebuild or cmake; default is xcodebuild + +if [[ -z "$METHOD" ]]; then + METHOD="xcodebuild" +fi + +case "$PROJECT-$METHOD" in + *-xcodebuild) + bundle install + gem install xcpretty + ;; + + Firestore-cmake) + bundle install + # xcpretty is helpful for the intermediate step which builds FirebaseCore + # using xcodebuild. + gem install xcpretty + brew outdated cmake || brew upgrade cmake + brew outdated go || brew upgrade go # Somehow the build for Abseil requires this. + ;; + + *) + echo "Unknown project-method combo" 1>&2 + echo " PROJECT=$PROJECT" 1>&2 + echo " METHOD=$METHOD" 1>&2 + exit 1 + ;; +esac |