xref: /aosp_15_r20/external/guava/util/gradle_integration_tests.sh (revision fb5080426417cab6bd44d0ed3f37e47d42859579)
1*fb508042SAndroid Build Coastguard Worker#!/bin/bash
2*fb508042SAndroid Build Coastguard Worker
3*fb508042SAndroid Build Coastguard Workerset -eu
4*fb508042SAndroid Build Coastguard Worker
5*fb508042SAndroid Build Coastguard Worker./mvnw clean install --projects '!guava-testlib,!guava-tests,!guava-bom,!guava-gwt' -Dmaven.test.skip=true -Dmaven.javadoc.skip=true
6*fb508042SAndroid Build Coastguard Worker./mvnw clean install --projects '!guava-testlib,!guava-tests,!guava-bom' -Dmaven.test.skip=true -Dmaven.javadoc.skip=true -f android
7*fb508042SAndroid Build Coastguard Worker
8*fb508042SAndroid Build Coastguard Worker# Gradle Wrapper overwrites some files when it runs.
9*fb508042SAndroid Build Coastguard Worker# To avoid modifying the Git client, we copy everything we need to another directory.
10*fb508042SAndroid Build Coastguard Worker# That provides general hygiene, including avoiding release errors:
11*fb508042SAndroid Build Coastguard Worker#
12*fb508042SAndroid Build Coastguard Worker# Preparing to update Javadoc and JDiff for the release...
13*fb508042SAndroid Build Coastguard Worker# error: Your local changes to the following files would be overwritten by checkout:
14*fb508042SAndroid Build Coastguard Worker#         integration-tests/gradle/gradle/wrapper/gradle-wrapper.jar
15*fb508042SAndroid Build Coastguard Worker#         integration-tests/gradle/gradle/wrapper/gradle-wrapper.properties
16*fb508042SAndroid Build Coastguard Worker#         integration-tests/gradle/gradlew
17*fb508042SAndroid Build Coastguard Worker#         integration-tests/gradle/gradlew.bat
18*fb508042SAndroid Build Coastguard Worker# Please commit your changes or stash them before you switch branches.
19*fb508042SAndroid Build Coastguard Worker
20*fb508042SAndroid Build Coastguard WorkerGRADLE_TEMP="$(mktemp -d)"
21*fb508042SAndroid Build Coastguard Workertrap 'rm -rf "${GRADLE_TEMP}"' EXIT
22*fb508042SAndroid Build Coastguard Worker
23*fb508042SAndroid Build Coastguard Worker# The Gradle tests need the pom.xml only to read its version number.
24*fb508042SAndroid Build Coastguard Worker# (And the file needs to be two directory levels up from the Gradle build file.)
25*fb508042SAndroid Build Coastguard Worker# TODO(cpovirk): Find a better way to give them that information.
26*fb508042SAndroid Build Coastguard Workercp pom.xml "${GRADLE_TEMP}"
27*fb508042SAndroid Build Coastguard Worker
28*fb508042SAndroid Build Coastguard Workerfor version in 5.6.4 7.0.2; do
29*fb508042SAndroid Build Coastguard Worker  # Enter a subshell so that we return to the current directory afterward.
30*fb508042SAndroid Build Coastguard Worker  (
31*fb508042SAndroid Build Coastguard Worker    cp -r integration-tests "${GRADLE_TEMP}/${version}"
32*fb508042SAndroid Build Coastguard Worker    cd "${GRADLE_TEMP}/${version}/gradle"
33*fb508042SAndroid Build Coastguard Worker    ./gradlew wrapper --gradle-version="${version}"
34*fb508042SAndroid Build Coastguard Worker    ./gradlew testClasspath
35*fb508042SAndroid Build Coastguard Worker  )
36*fb508042SAndroid Build Coastguard Workerdone
37