Skip to content

Commit a9fea67

Browse files
authored
chore(nifi): Bump to 2.6.0 (#1293)
* chore: add upload script for new Maven version * fix(script/jmx_exporter): Do not upload if the sum check fails * chore(java-devel): Bump maven to 3.9.11 * chore(issue-templates/nifi): Update tasks for nifi-iceberg-bundle and nifi-opa-authorizer-plugin * chore(nifi): Add nifi 2.6.0, bump dependencies * chore: Update changelog
1 parent deeed04 commit a9fea67

File tree

14 files changed

+333
-9
lines changed

14 files changed

+333
-9
lines changed

.github/ISSUE_TEMPLATE/update-base-java.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ we should also make new versions of Java available for use.
4242
## Update tasks
4343

4444
- [ ] Add any new versions of java to both `java-base/boil-config.toml` and `java-devel/boil-config.toml`
45+
- [ ] Check for and upload new Maven versions (updated directly in the `java-devel/Dockerfile`)
4546
- [ ] Remove versions when there are no long any references (eg: `grep java- **/boil-config.toml | grep "1.8.0"`)
4647

4748
## Related Pull Requests

.github/ISSUE_TEMPLATE/update-product-nifi.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,17 @@ Add/Change/Remove anything that isn't applicable anymore
2727
2828
## Update tasks
2929

30+
- [ ] Release a new version of [nifi-iceberg-bundle] for any new NiFi versions added (also add version with Patchable).
31+
- [ ] Release a new version of [nifi-opa-authorizer-plugin] for any new NiFi versions added (also add version with Patchable).
3032
- [ ] Update `boil-config.toml` to reflect the agreed upon versions in the spreadsheet (including the removal of old versions).
31-
- [ ] Upload new version (see `nifi/upload_new_nifi_version.sh`).
3233
- [ ] Update `boil-config.toml` to the latest supported version of JVM (base and devel).
3334
- [ ] Update other dependencies if applicable (eg: jmx_exporter, kcat, scala, etc).
3435
- [ ] Check other operators (getting_started / kuttl / supported-versions) for usage of the versions. Add the PR(s) to the list below.
3536
- [ ] Update the version in demos. Add the PR(s) to the list below.
3637

38+
[nifi-iceberg-bundle]: https://github.com/stackabletech/nifi-iceberg-bundle
39+
[nifi-opa-authorizer-plugin]: https://github.com/DavidGitter/nifi-opa-plugin
40+
3741
## Related Pull Requests
3842

3943
> [!TIP]

.scripts/upload_new_jmx_exporter_version.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,8 @@ curl --fail -LO --progress-bar "https://github.com/prometheus/jmx_exporter/relea
3939
curl --fail -LO --progress-bar "https://github.com/prometheus/jmx_exporter/releases/download/$VERSION/$SUM_FILE"
4040

4141
# Check that sha256 sum matches before uploading
42-
sha256sum --check --status "$SUM_FILE" && echo "SHA256 Sum matches"
42+
sha256sum --strict --check --status "$SUM_FILE"
43+
echo "SHA256 Sum matches"
4344

4445
echo "Uploading to Nexus"
4546
curl --fail -o /dev/null --progress-bar -u "$NEXUS_USER:$NEXUS_PASSWORD" --upload-file "$JAR_FILE" 'https://repo.stackable.tech/repository/packages/jmx-exporter/'
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
#!/usr/bin/env bash
2+
3+
set -euo pipefail
4+
5+
VERSION=${1:?"Missing version number argument (arg 1)"}
6+
MAJOR=$(echo "$VERSION" | grep -oE '^[0-9]+')
7+
NEXUS_USER=${2:?"Missing Nexus username argument (arg 2)"}
8+
9+
read -r -s -p "Nexus Password: " NEXUS_PASSWORD
10+
echo
11+
12+
# https://stackoverflow.com/questions/4632028/how-to-create-a-temporary-directory
13+
# Find the directory name of the script
14+
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
15+
16+
# the temp directory used, within $DIR
17+
WORK_DIR=$(mktemp -d -p "$DIR")
18+
19+
# check if tmp dir was created
20+
if [[ ! "$WORK_DIR" || ! -d "$WORK_DIR" ]]; then
21+
echo "Could not create temp dir"
22+
exit 1
23+
fi
24+
25+
# deletes the temp directory
26+
function cleanup {
27+
rm -rf "$WORK_DIR"
28+
}
29+
30+
# register the cleanup function to be called on the EXIT signal
31+
trap cleanup EXIT
32+
33+
cd "$WORK_DIR" || exit
34+
35+
# Example download URLs found at https://maven.apache.org/download.cgi
36+
# https://dlcdn.apache.org/maven/maven-3/3.9.11/binaries/apache-maven-3.9.11-bin.tar.gz
37+
# https://downloads.apache.org/maven/maven-3/3.9.11/binaries/apache-maven-3.9.11-bin.tar.gz.sha512
38+
# https://downloads.apache.org/maven/maven-3/3.9.11/binaries/apache-maven-3.9.11-bin.tar.gz.asc
39+
# https://downloads.apache.org/maven/KEYS
40+
# Preferring downloads.apache.org over dlcdn.apache.org (for no real reason, but wanted consistency)
41+
42+
BASE_URL="https://downloads.apache.org/maven/maven-$MAJOR/$VERSION/binaries"
43+
ARCHIVE_FILE="apache-maven-$VERSION-bin.tar.gz"
44+
SUM_FILE="$ARCHIVE_FILE.sha512"
45+
SIG_FILE="$ARCHIVE_FILE.asc"
46+
47+
echo "Downloading Maven $VERSION"
48+
curl --fail -LO --progress-bar "$BASE_URL/$ARCHIVE_FILE"
49+
curl --fail -LO --progress-bar "$BASE_URL/$SUM_FILE"
50+
curl --fail -LO --progress-bar "$BASE_URL/$SIG_FILE"
51+
52+
# Maven maintainers produce sum files that are incompatible with sha*sum, so we
53+
# need to append the archive name to the end to make it work.
54+
echo -n " $ARCHIVE_FILE" >> "$SUM_FILE"
55+
56+
# Check that sha512 sum matches before uploading
57+
sha512sum --strict --check --status "$SUM_FILE" # do not put && here
58+
echo "SHA512 Sum matches"
59+
60+
if ! gpg --verify "$SIG_FILE" "$ARCHIVE_FILE"; then
61+
echo "You might need to download the public keys and try again:"
62+
echo "curl https://downloads.apache.org/maven/KEYS | gpg --import"
63+
exit 1
64+
fi
65+
66+
echo "Uploading to Nexus"
67+
68+
curl --fail -o /dev/null --progress-bar -u "$NEXUS_USER:$NEXUS_PASSWORD" --upload-file "$ARCHIVE_FILE" 'https://repo.stackable.tech/repository/packages/maven/'
69+
curl --fail -o /dev/null --progress-bar -u "$NEXUS_USER:$NEXUS_PASSWORD" --upload-file "$SUM_FILE" 'https://repo.stackable.tech/repository/packages/maven/'
70+
curl --fail -o /dev/null --progress-bar -u "$NEXUS_USER:$NEXUS_PASSWORD" --upload-file "$SIG_FILE" 'https://repo.stackable.tech/repository/packages/maven/'
71+
72+
echo "Successfully uploaded Maven $VERSION to Nexus"
73+
echo "https://repo.stackable.tech/service/rest/repository/browse/packages/maven/"
74+
echo "https://github.com/prometheus/maven/releases/tag/$VERSION"

CHANGELOG.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,12 @@ All notable changes to this project will be documented in this file.
2727
- testing-tools: Add `upload_new_keycloak_version.sh` script ([#1289]).
2828
- hadoop: Add `3.4.2` ([#1291]).
2929
- zookeeper: Add `3.9.4` ([#1292]).
30+
- nifi: Add `2.6.0` ([#1293]).
3031

3132
### Changed
3233

3334
- all: Use our build-repo to cache NPM dependencies ([#1219]).
34-
- java: Use a more recent Maven version for all Java based products ([#1220]).
35+
- java: Use a more recent Maven version for all Java based products ([#1220], [[#1293]]).
3536
- ubi9-rust-builder: Bump ubi9 base image ([#1253]).
3637
- stackable-base: Bump ubi9 base image ([#1253]).
3738
- stackable-devel: Bump ubi9 base image and update cargo-auditable to `0.7.0` ([#1253]).
@@ -82,6 +83,7 @@ All notable changes to this project will be documented in this file.
8283
[#1290]: https://github.com/stackabletech/docker-images/pull/1290
8384
[#1291]: https://github.com/stackabletech/docker-images/pull/1291
8485
[#1292]: https://github.com/stackabletech/docker-images/pull/1292
86+
[#1293]: https://github.com/stackabletech/docker-images/pull/1293
8587

8688
## [25.7.0] - 2025-07-23
8789

java-devel/Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ FROM local-image/stackable-devel
1010
ARG PRODUCT_VERSION
1111
ARG STACKABLE_USER_UID
1212

13-
# Find the latest version here: https://github.com/apache/maven
13+
# Find the latest version here: https://github.com/apache/maven/releases
1414
# renovate: datasource=github-tags packageName=apache/maven
15-
ARG MAVEN_VERSION="3.9.10"
15+
ARG MAVEN_VERSION="3.9.11"
1616

1717
# See: https://adoptium.net/en-gb/installation/linux/#_centosrhelfedora_instructions
1818
RUN cat <<EOF > /etc/yum.repos.d/adoptium.repo

nifi/boil-config.toml

Lines changed: 26 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,21 +4,43 @@ java-devel = "11"
44

55
[versions."1.27.0".build-arguments]
66
git-sync-version = "v4.4.1"
7-
nifi-opa-authorizer-plugin-version = "0.1.0"
7+
# Check for new versions at the upstream: https://github.com/DavidGitter/nifi-opa-plugin/tags
8+
# Checkout a Patchable version (patch-series) for the new tag
9+
nifi-opa-authorizer-plugin-version = "0.3.0"
810

911
[versions."1.28.1".local-images]
1012
java-base = "11"
1113
java-devel = "11"
1214

1315
[versions."1.28.1".build-arguments]
1416
git-sync-version = "v4.4.1"
15-
nifi-opa-authorizer-plugin-version = "0.1.0"
17+
# Check for new versions at the upstream: https://github.com/DavidGitter/nifi-opa-plugin/tags
18+
# Checkout a Patchable version (patch-series) for the new tag
19+
nifi-opa-authorizer-plugin-version = "0.3.0"
1620

1721
[versions."2.4.0".local-images]
1822
java-base = "21"
1923
java-devel = "21"
2024

2125
[versions."2.4.0".build-arguments]
2226
git-sync-version = "v4.4.1"
23-
nifi-opa-authorizer-plugin-version = "0.1.0"
24-
nifi-iceberg-bundle-version = "0.0.4"
27+
# Check for new versions at the upstream: https://github.com/DavidGitter/nifi-opa-plugin/tags
28+
# Checkout a Patchable version (patch-series) for the new tag
29+
nifi-opa-authorizer-plugin-version = "0.3.0"
30+
# Release a new version here: https://github.com/stackabletech/nifi-iceberg-bundle
31+
# Checkout a Patchable version (patch-series) for the new tag
32+
nifi-iceberg-bundle-version = "0.0.5"
33+
34+
[versions."2.6.0".local-images]
35+
java-base = "21"
36+
java-devel = "21"
37+
38+
[versions."2.6.0".build-arguments]
39+
git-sync-version = "v4.4.1"
40+
# Check for new versions at the upstream: https://github.com/DavidGitter/nifi-opa-plugin/tags
41+
# Checkout a Patchable version (patch-series) for the new tag
42+
nifi-opa-authorizer-plugin-version = "0.3.0"
43+
44+
# Release a new version here: https://github.com/stackabletech/nifi-iceberg-bundle
45+
# Checkout a Patchable version (patch-series) for the new tag
46+
nifi-iceberg-bundle-version = "0.0.5"
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
base = "c305d47c3678d16250374e9dc89bc184b8c36892"
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
mirror = "https://github.com/stackabletech/nifi-opa-plugin.git"
2+
base = "728367a22e897479b4d8157b151ff1abca038d3d"
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
From e20550884c2d7002013b9427c219128fe416263b Mon Sep 17 00:00:00 2001
2+
From: Nick Larsen <[email protected]>
3+
Date: Mon, 17 Feb 2025 17:26:20 +0100
4+
Subject: no zip assembly
5+
6+
---
7+
nifi-assembly/pom.xml | 1 -
8+
1 file changed, 1 deletion(-)
9+
10+
diff --git a/nifi-assembly/pom.xml b/nifi-assembly/pom.xml
11+
index dc7fe6fff3..911cbc83d3 100644
12+
--- a/nifi-assembly/pom.xml
13+
+++ b/nifi-assembly/pom.xml
14+
@@ -66,7 +66,6 @@ language governing permissions and limitations under the License. -->
15+
<tarLongFileMode>posix</tarLongFileMode>
16+
<formats>
17+
<format>dir</format>
18+
- <format>zip</format>
19+
</formats>
20+
</configuration>
21+
</execution>

0 commit comments

Comments
 (0)