Skip to content

Commit c38c8aa

Browse files
committed
WIP cuvs-snapshot updating
1 parent e6e9c17 commit c38c8aa

File tree

2 files changed

+77
-0
lines changed

2 files changed

+77
-0
lines changed
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
#!/bin/bash
2+
3+
set -euo pipefail
4+
5+
if [[ "${BUILDKITE:-}" == "true" ]]; then
6+
export JAVA_HOME="$HOME/.java/openjdk24"
7+
export PATH="$JAVA_HOME/bin:$PATH"
8+
9+
# Setup LD_LIBRARY_PATH, PATH
10+
if [[ -f /etc/profile.d/elastic-nvidia.sh ]]; then
11+
source /etc/profile.d/elastic-nvidia.sh
12+
fi
13+
fi
14+
15+
CURRENT_SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
16+
ELASTICSEARCH_REPO_DIR="$(cd "$CURRENT_SCRIPT_DIR/../../.." && pwd)"
17+
18+
CUVS_SNAPSHOT_VERSION="${CUVS_SNAPSHOT_VERSION:-$(cat "$CURRENT_SCRIPT_DIR"/current-snapshot-version)}"
19+
CUVS_ARCHIVE="cuvs-$CUVS_SNAPSHOT_VERSION.tar.gz"
20+
CUVS_URL="https://storage.googleapis.com/elasticsearch-cuvs-snapshots/$CUVS_ARCHIVE"
21+
22+
CUVS_WORKSPACE=${CUVS_WORKSPACE:-$(cd "$(mktemp -d)")}
23+
CUVS_DIR="$(pwd)/cuvs-$CUVS_SNAPSHOT_VERSION"
24+
25+
curl -O "$CUVS_URL"
26+
tar -xzf "$CUVS_ARCHIVE"
27+
28+
CUVS_VERSION=$(cd "$CUVS_DIR/cuvs-java/target" && mvn help:evaluate -Dexpression=project.version -q -DforceStdout)
29+
30+
LD_LIBRARY_PATH=$(echo "$LD_LIBRARY_PATH" | tr ':' '\n' | grep -v "libcuvs/linux-x64" | tr '\n' ':' | sed 's/:$//')
31+
LD_LIBRARY_PATH="$CUVS_DIR/libcuvs/linux-x64:$LD_LIBRARY_PATH"
32+
export LD_LIBRARY_PATH
33+
34+
cd "$CUVS_DIR/cuvs-java/target"
35+
mvn install:install-file -Dfile="cuvs-java-$CUVS_VERSION.jar"
36+
37+
cd "$ELASTICSEARCH_REPO_DIR"
38+
PLUGIN_GRADLE_FILE=x-pack/plugin/gpu/build.gradle
39+
sed -i "s|implementation 'com.nvidia.cuvs:cuvs-java:.*'|implementation 'com.nvidia.cuvs:cuvs-java:$CUVS_VERSION'|" "$PLUGIN_GRADLE_FILE"
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
#!/bin/bash
2+
3+
set -euo pipefail
4+
5+
SNAPSHOT_VERSION_FILE=.buildkite/scripts/cuvs-snapshot/current-snapshot-version
6+
PLUGIN_GRADLE_FILE=x-pack/plugin/gpu/build.gradle
7+
BRANCH_TO_UPDATE="${BRANCH_TO_UPDATE:-${BUILDKITE_BRANCH:-cuvs-snapshot}}"
8+
9+
if [[ -z "${CUVS_SNAPSHOT_VERSION:-}" ]]; then
10+
echo "CUVS_SNAPSHOT_VERSION not set. Set this to update the current snapshot version."
11+
exit 1
12+
fi
13+
14+
if [[ "$CUVS_SNAPSHOT_VERSION" == "$(cat $SNAPSHOT_VERSION_FILE)" ]]; then
15+
echo "Current snapshot version already set to '$CUVS_SNAPSHOT_VERSION'. No need to update."
16+
exit 0
17+
fi
18+
19+
echo "--- Configuring libcuvs/cuvs-java"
20+
source .buildkite/scripts/cuvs-snapshot/configure.sh
21+
22+
if [[ "${SKIP_TESTING:-}" != "true" ]]; then
23+
echo "--- Testing snapshot before updating"
24+
./gradlew -Druntime.java=24 :x-pack:plugin:gpu:yamlRestTest -S
25+
fi
26+
27+
echo "--- Updating snapshot"
28+
29+
echo "$CUVS_SNAPSHOT_VERSION" > "$SNAPSHOT_VERSION_FILE"
30+
31+
# CURRENT_SHA="$(gh api "/repos/elastic/elasticsearch/contents/$SNAPSHOT_VERSION_FILE?ref=$BRANCH_TO_UPDATE" | jq -r .sha)"
32+
CURRENT_SHA=test
33+
34+
echo gh api -X PUT "/repos/elastic/elasticsearch/contents/$SNAPSHOT_VERSION_FILE" \
35+
-f branch="$BRANCH_TO_UPDATE" \
36+
-f message="Update cuvs snapshot version to $CUVS_VERSION" \
37+
-f content="$(base64 -w 0 "$WORKSPACE/$SNAPSHOT_VERSION_FILE")" \
38+
-f sha="$CURRENT_SHA"

0 commit comments

Comments
 (0)