mirror of
https://github.com/elastic/elasticsearch.git
synced 2025-04-22 06:07:55 -04:00
54 lines
2.3 KiB
Bash
Executable file
54 lines
2.3 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
SCRIPT="$0"
|
|
|
|
# SCRIPT might be an arbitrarily deep series of symbolic links; loop until we
|
|
# have the concrete path
|
|
while [ -h "$SCRIPT" ]; do
|
|
ls=$(ls -ld "$SCRIPT")
|
|
# Drop everything prior to ->
|
|
link=$(expr "$ls" : '.*-> \(.*\)$')
|
|
if expr "$link" : '/.*' >/dev/null; then
|
|
SCRIPT="$link"
|
|
else
|
|
SCRIPT=$(dirname "$SCRIPT")/"$link"
|
|
fi
|
|
done
|
|
|
|
if [ "$(uname -m)" = "arm64" ] || [ "$(uname -m)" = "aarch64" ]; then
|
|
## On ARM we use a different properties file for setting java home
|
|
## Also, we don't bother attempting to resolve dependencies for the 6.8 branch
|
|
source $(dirname "${SCRIPT}")/java-versions-aarch64.properties
|
|
export JAVA16_HOME="${HOME}"/.java/jdk16
|
|
else
|
|
source $(dirname "${SCRIPT}")/java-versions.properties
|
|
## We are caching BWC versions too, need these so we can build those
|
|
export JAVA8_HOME="${HOME}"/.java/java8
|
|
export JAVA11_HOME="${HOME}"/.java/java11
|
|
export JAVA12_HOME="${HOME}"/.java/openjdk12
|
|
export JAVA13_HOME="${HOME}"/.java/openjdk13
|
|
export JAVA14_HOME="${HOME}"/.java/openjdk14
|
|
export JAVA15_HOME="${HOME}"/.java/openjdk15
|
|
export JAVA16_HOME="${HOME}"/.java/openjdk16
|
|
|
|
## 6.8 branch is not referenced from any bwc project in main so we need to
|
|
## resolve its dependencies explicitly
|
|
rm -rf checkout/6.8
|
|
git clone --reference $(dirname "${SCRIPT}")/../.git https://github.com/elastic/elasticsearch.git --branch 6.8 --single-branch checkout/6.8
|
|
export JAVA_HOME="${JAVA11_HOME}"
|
|
./checkout/6.8/gradlew --project-dir ./checkout/6.8 --parallel clean --stacktrace resolveAllDependencies
|
|
rm -rf ./checkout/6.8
|
|
fi
|
|
|
|
## Gradle is able to resolve dependencies resolved with earlier gradle versions
|
|
## therefore we run main _AFTER_ we run 6.8 which uses an earlier gradle version
|
|
branches=($(cat .ci/snapshotBwcVersions | sed '1d;$d' | grep -E -o "[0-9]+\.[0-9]+"))
|
|
branches+=("main")
|
|
for branch in "${branches[@]}"; do
|
|
echo "Resolving dependencies for ${branch} branch"
|
|
rm -rf checkout/$branch
|
|
git clone --reference $(dirname "${SCRIPT}")/../.git https://github.com/elastic/elasticsearch.git --branch ${branch} --single-branch checkout/${branch}
|
|
export JAVA_HOME="${HOME}"/.java/${ES_BUILD_JAVA}
|
|
./checkout/${branch}/gradlew --project-dir ./checkout/${branch} --parallel clean -s resolveAllDependencies -Dorg.gradle.warning.mode=none
|
|
rm -rf ./checkout/${branch}
|
|
done
|