123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- #!/usr/bin/env bash
- set -euo pipefail
-
- ./.travis/setup_ramdisk.sh
-
- #
- # Configure Maven settings and install some script utilities
- #
- configureTravis() {
- mkdir -p ~/.local
- curl -sSL https://github.com/SonarSource/travis-utils/tarball/v55 | tar zx --strip-components 1 -C ~/.local
- source ~/.local/bin/install
- }
- configureTravis
-
- #
- # Travis fails on timeout when build does not print logs
- # during 10 minutes. This aims to bypass this
- # behavior when building the slow sonar-server sub-project.
- #
- keep_alive() {
- while true; do
- echo -en "\a"
- sleep 60
- done
- }
- keep_alive &
-
- # When a pull request is open on the branch, then the job related
- # to the branch does not need to be executed and should be canceled.
- # It does not book slaves for nothing.
- # @TravisCI please provide the feature natively, like at AppVeyor or CircleCI ;-)
- cancel_branch_build_with_pr || if [[ $? -eq 1 ]]; then exit 0; fi
-
- case "$TARGET" in
-
- BUILD)
- git fetch --unshallow
- ./gradlew build --no-daemon --console plain
-
- # the '-' at the end is needed when using set -u (the 'nounset' flag)
- # see https://stackoverflow.com/a/9824943/641955
- if [[ -n "${SONAR_TOKEN-}" ]]; then
- if [[ "${TRAVIS_BRANCH}" == "master" ]]; then
- ./gradlew jacocoTestReport sonarqube --info --no-daemon --console plain \
- -Dsonar.projectKey=org.sonarsource.sonarqube:sonarqube \
- -Dsonar.organization=sonarsource \
- -Dsonar.host.url=https://sonarcloud.io \
- -Dsonar.login="$SONAR_TOKEN"
- else
- ./gradlew jacocoTestReport sonarqube --info --no-daemon --console plain \
- -Dsonar.projectKey=org.sonarsource.sonarqube:sonarqube \
- -Dsonar.organization=sonarsource \
- -Dsonar.host.url=https://sonarcloud.io \
- -Dsonar.login="$SONAR_TOKEN" \
- -Dsonar.branch.name="$TRAVIS_BRANCH"
- fi
-
- # Wait for 5mins, hopefully the report will be processed.
- sleep 5m
- ./.travis/run_iris.sh
- fi
- ;;
-
- WEB_TESTS)
- ./gradlew :server:sonar-web:yarn :server:sonar-web:yarn_validate --no-daemon --console plain
- ;;
-
- *)
- echo "Unexpected TARGET value: $TARGET"
- exit 1
- ;;
-
- esac
|