-
-
Notifications
You must be signed in to change notification settings - Fork 6
feat(hadoop): Add 3.5.0 and 3.4.3 #1511
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
bc58e61
74a792e
ec494d3
1d7e3ce
61741f6
cde4b7c
af0a4eb
bda9e9c
7499b67
a7b0424
cc8731a
eaf0db8
a228ca7
4627400
adca5b6
4ada3c7
9619f7e
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,59 @@ | ||
| #!/usr/bin/env bash | ||
| # This script mirrors the boostorg/boost source bundle for the given version to Nexus. | ||
| # The boost source bundle is architecture independent. | ||
| # It contains its own build system (b2) which is also built from source before building boost itself, so we don't need to worry about architecture specific builds. | ||
| # This artifact is used by the hadoop/boost local image. | ||
|
|
||
|
|
||
| set -euo pipefail | ||
|
|
||
| VERSION=${1:?"Missing version number argument (arg 1)"} | ||
| NEXUS_USER=${2:?"Missing Nexus username argument (arg 2)"} | ||
|
|
||
| read -r -s -p "Nexus Password: " NEXUS_PASSWORD | ||
| echo "" | ||
|
|
||
| # https://stackoverflow.com/questions/4632028/how-to-create-a-temporary-directory | ||
| # Find the directory name of the script | ||
| DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" | ||
|
|
||
| # the temp directory used, within $DIR | ||
| WORK_DIR=$(mktemp -d -p "$DIR") | ||
|
|
||
| # check if tmp dir was created | ||
| if [[ ! "$WORK_DIR" || ! -d "$WORK_DIR" ]]; then | ||
| echo "Could not create temp dir" | ||
| exit 1 | ||
| fi | ||
|
|
||
| # deletes the temp directory | ||
| function cleanup { | ||
| rm -rf "$WORK_DIR" | ||
| } | ||
|
|
||
| # register the cleanup function to be called on the EXIT signal | ||
| trap cleanup EXIT | ||
|
|
||
| cd "$WORK_DIR" || exit | ||
|
|
||
| # boost does not currently publish signatures or SBOMs | ||
| BOOST_UNDERSCORE="$(echo "${VERSION}" | tr '.' '_')" | ||
| BOOST_TARBALL="boost_${BOOST_UNDERSCORE}.tar.bz2" | ||
| DOWNLOAD_URL="https://archives.boost.io/release/$VERSION/source/$BOOST_TARBALL" | ||
|
|
||
| echo "Downloading boost" | ||
| if ! curl --fail -Ls -O "$DOWNLOAD_URL"; then | ||
| echo "Failed to download from $DOWNLOAD_URL" | ||
| exit 1 | ||
| fi | ||
|
|
||
| FILE_NAME=$(basename "$DOWNLOAD_URL") | ||
|
|
||
| echo "Uploading boost to Nexus" | ||
| if ! curl --fail -o /dev/null --progress-bar -u "$NEXUS_USER:$NEXUS_PASSWORD" --upload-file "$FILE_NAME" 'https://repo.stackable.tech/repository/packages/boost/'; then | ||
| echo "Failed to upload boost to Nexus" | ||
| exit 1 | ||
| fi | ||
|
|
||
| echo "Successfully uploaded new version of boost ($VERSION) to Nexus" | ||
| echo "https://repo.stackable.tech/service/rest/repository/browse/packages/boost/" |
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think Druid should be its own PR
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I see all the other products were update in this PR too.
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The reminder only have TODOs. How was druid different (why could it have the bump while the others couldn't)?
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I kept the ones where the compilation worked. All the ones where I was running into compilation errors which I couldn't solve in a sane timeframe I left as a TODO. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,11 +1,44 @@ | ||
| [versions."3.3.6".local-images] | ||
| java-devel = "11" | ||
| "shared/boost" = "1.72.0" # I could not find a documented recommended version | ||
|
|
||
| [versions."3.3.6".build-arguments] | ||
| protobuf-version = "3.7.1" | ||
| protobuf-version = "3.7.1" # https://github.com/apache/hadoop/blob/rel/release-3.3.6/BUILDING.txt | ||
| aws-java-sdk-bundle-version = "1.12.367" # Needs to match https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-aws/3.3.6 | ||
| azure-storage-version = "7.0.1" # Needs to match https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-azure/3.3.6 | ||
| azure-keyvault-core-version = "1.0.0" # Needs to match https://mvnrepository.com/artifact/com.microsoft.azure/azure-storage/7.0.1 | ||
|
|
||
|
|
||
| [versions."3.4.2".local-images] | ||
| java-devel = "11" | ||
| java-devel = "11" # https://cwiki.apache.org/confluence/display/HADOOP/Hadoop+Java+Versions | ||
| "shared/boost" = "1.72.0" # https://github.com/apache/hadoop/blob/rel/release-3.4.2/BUILDING.txt | ||
|
|
||
| [versions."3.4.2".build-arguments] | ||
| protobuf-version = "3.7.1" | ||
| protobuf-version = "3.21.12" # https://github.com/apache/hadoop/blob/rel/release-3.4.2/BUILDING.txt | ||
| aws-java-sdk-bundle-version = "2.29.52" # Needs to match https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-aws/3.4.2 | ||
| azure-storage-version = "7.0.1" # Needs to match https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-azure/3.4.2 | ||
| azure-keyvault-core-version = "1.0.0" # Needs to match https://mvnrepository.com/artifact/com.microsoft.azure/azure-storage/7.0.1 | ||
|
|
||
|
|
||
|
|
||
| [versions."3.4.3".local-images] | ||
| java-devel = "11" # https://cwiki.apache.org/confluence/display/HADOOP/Hadoop+Java+Versions | ||
| "shared/boost" = "1.72.0" # https://github.com/apache/hadoop/blob/rel/release-3.4.3/BUILDING.txt | ||
|
|
||
| [versions."3.4.3".build-arguments] | ||
| protobuf-version = "3.21.12" # https://github.com/apache/hadoop/blob/rel/release-3.4.3/BUILDING.txt | ||
| aws-java-sdk-bundle-version = "2.35.4" # Needs to match https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-aws/3.4.3 | ||
| azure-storage-version = "7.0.1" # Needs to match https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-azure/3.4.3 | ||
| azure-keyvault-core-version = "1.0.0" # Needs to match https://mvnrepository.com/artifact/com.microsoft.azure/azure-storage/7.0.1 | ||
|
|
||
|
|
||
|
|
||
| [versions."3.5.0".local-images] | ||
| java-devel = "17" # https://cwiki.apache.org/confluence/display/HADOOP/Hadoop+Java+Versions | ||
| "shared/boost" = "1.86.0" # https://github.com/apache/hadoop/blob/rel/release-3.5.0/BUILDING.txt | ||
|
|
||
| [versions."3.5.0".build-arguments] | ||
| protobuf-version = "3.25.5" # https://github.com/apache/hadoop/blob/rel/release-3.5.0/BUILDING.txt | ||
| aws-java-sdk-bundle-version = "2.35.4" # Needs to match https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-aws/3.5.0 | ||
| azure-storage-version = "7.0.1" # Needs to match https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-azure/3.5.0 | ||
| azure-keyvault-core-version = "1.0.0" # Needs to match https://mvnrepository.com/artifact/com.microsoft.azure/azure-storage/7.0.1 |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,22 @@ | ||
| From 7ad31a922a9fbcecd884b4bdf5c416f6b0ea539e Mon Sep 17 00:00:00 2001 | ||
| From: Sebastian Bernauer <sebastian.bernauer@stackable.tech> | ||
| Date: Tue, 26 May 2026 15:40:40 +0200 | ||
| Subject: YARN-11527-Update-node.js | ||
|
|
||
| --- | ||
| hadoop-project/pom.xml | 2 +- | ||
| 1 file changed, 1 insertion(+), 1 deletion(-) | ||
|
|
||
| diff --git a/hadoop-project/pom.xml b/hadoop-project/pom.xml | ||
| index 0813904f98a..f837b1f5201 100644 | ||
| --- a/hadoop-project/pom.xml | ||
| +++ b/hadoop-project/pom.xml | ||
| @@ -236,7 +236,7 @@ | ||
| <woodstox.version>5.4.0</woodstox.version> | ||
| <nimbus-jose-jwt.version>10.4</nimbus-jose-jwt.version> | ||
| <jcip-annotations.version>1.0-1</jcip-annotations.version> | ||
| - <nodejs.version>v12.22.1</nodejs.version> | ||
| + <nodejs.version>v14.17.0</nodejs.version> | ||
| <yarnpkg.version>v1.22.5</yarnpkg.version> | ||
| <apache-ant.version>1.10.13</apache-ant.version> | ||
| <jmh.version>1.20</jmh.version> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could we use patchable instead and avoid uploading sources to Nexus?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As in, it becomes an image layer with a boil-config.toml and patches
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks like you did, since there is "shared/boost". We just need to mirror the repo (if not done).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I copied the Dockerfile from @razvan and he documented it here:
docker-images/shared/boost/Dockerfile
Lines 10 to 14 in 61741f6