Skip to content

Commit c5e0dad

Browse files
Merge pull request #606 from rundeck/upgrade-gradle-8
[RUN-4418] Upgrade Gradle 4.8.14, Groovy 4, Java 17
2 parents abbe36c + 62d5b4d commit c5e0dad

35 files changed

Lines changed: 339 additions & 976 deletions

.circleci/config.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ jobs:
77
build:
88
docker:
99
# specify the version you desire here
10-
- image: cimg/openjdk:11.0.29
10+
- image: cimg/openjdk:17.0
1111

1212
# Specify service dependencies here if necessary
1313
# CircleCI maintains a library of pre-built images
@@ -49,7 +49,7 @@ jobs:
4949

5050
snyk_test:
5151
docker:
52-
- image: cimg/openjdk:11.0.29 # this should match what's used in the rest of the project
52+
- image: cimg/openjdk:17.0 # this should match what's used in the rest of the project
5353
steps:
5454
- checkout
5555
- setup_remote_docker

.github/workflows/codeql-analysis.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,10 @@ jobs:
4747
# Prefix the list here with "+" to use these queries and those in the config file.
4848
# queries: ./path/to/local/query, your-org/your-repo/queries@main
4949

50-
- name: Set up JDK 11
50+
- name: Set up JDK 17
5151
uses: actions/setup-java@v3
5252
with:
53-
java-version: '11'
53+
java-version: '17'
5454
distribution: 'zulu'
5555

5656
- name: Grant execute permission for gradlew

.github/workflows/gradle.yml

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,10 @@ jobs:
1313
- name: Get Fetch Tags
1414
run: git -c protocol.version=2 fetch --tags --progress --no-recurse-submodules origin
1515
if: "!contains(github.ref, 'refs/tags')"
16-
- name: Set up JDK 11
16+
- name: Set up JDK 17
1717
uses: actions/setup-java@v3
1818
with:
19-
java-version: '11'
19+
java-version: '17'
2020
distribution: 'zulu'
2121
- name: Grant execute permission for gradlew
2222
run: chmod +x gradlew
@@ -32,13 +32,8 @@ jobs:
3232
needs: build
3333
strategy:
3434
matrix:
35-
jdk: [ "openjdk-11-jdk","openjdk-17-jdk","openjdk-21-jdk" ]
36-
ubuntu: ["20.04", "22.04"]
37-
include:
38-
- jdk: 'openjdk-11-jdk'
39-
ubuntu: '18.04'
40-
- jdk: 'openjdk-17-jdk'
41-
ubuntu: '18.04'
35+
jdk: ["openjdk-17-jdk","openjdk-21-jdk", "openjdk-25-jdk" ]
36+
ubuntu: ["22.04"]
4237
steps:
4338
- uses: actions/checkout@v3
4439
with:
@@ -60,7 +55,8 @@ jobs:
6055
needs: build
6156
strategy:
6257
matrix:
63-
jdk: [ "java-11-openjdk","java-17-openjdk","java-21-openjdk" ]
58+
# UBI 8 repos ship 17 and 21; java-25-openjdk is not available on el8
59+
jdk: ["java-17-openjdk","java-21-openjdk"]
6460
steps:
6561
- uses: actions/checkout@v3
6662
with:
@@ -87,10 +83,10 @@ jobs:
8783
- name: Get Fetch Tags
8884
run: git -c protocol.version=2 fetch --tags --progress --no-recurse-submodules origin
8985
if: "!contains(github.ref, 'refs/tags')"
90-
- name: Set up JDK 11
86+
- name: Set up JDK 17
9187
uses: actions/setup-java@v3
9288
with:
93-
java-version: '11'
89+
java-version: '17'
9490
distribution: 'zulu'
9591
- name: Grant execute permission for gradlew
9692
run: chmod +x gradlew

.github/workflows/release.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@ jobs:
1414
with:
1515
fetch-depth: 0
1616
submodules: true
17-
- name: Set up JDK 11
17+
- name: Set up JDK 17
1818
uses: actions/setup-java@v3
1919
with:
20-
java-version: '11'
20+
java-version: '17'
2121
distribution: 'zulu'
2222
- name: Build with Gradle
2323
run: ./gradlew build

.github/workflows/test-signing.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@ jobs:
1111
with:
1212
fetch-depth: 0
1313
submodules: true
14-
- name: Set up JDK 11
14+
- name: Set up JDK 17
1515
uses: actions/setup-java@v3
1616
with:
17-
java-version: '11'
17+
java-version: '17'
1818
distribution: 'zulu'
1919
- name: Build with Gradle
2020
run: ./gradlew build

CHANGELOG.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,14 @@
11
## Unreleased
22

3-
* **Security Fix**: External extension directory loading is now disabled by default to prevent arbitrary code execution vulnerability. To enable extension loading from external directories, set environment variable `RD_EXT_DISABLED=false`. (Addresses RUN-3540)
3+
## 3.0.0
44

5+
* **Breaking change**: Java 17 or later is required to run the CLI and to build from source. Java 11 is no longer supported.
6+
* **Security**: External extension directory loading is now disabled by default to prevent arbitrary code execution. To enable extension loading from external directories, set environment variable `RD_EXT_DISABLED=false`. (Addresses RUN-3540)
7+
* Build: Gradle 8, Groovy 4, and dependency updates (including Jackson).
8+
* CI and packaging tests: workflows and Docker-based install/upgrade tests now target Java 17 and later (Java 11 combinations removed).
9+
* Documentation: the in-repo Jekyll site under `docs/` was removed; use the [published CLI documentation](https://docs.rundeck.com/docs/rd-cli/) and [changelog](https://rundeck.github.io/rundeck-cli/changes/) on the web.
10+
11+
[Changes](https://github.com/rundeck/rundeck-cli/compare/v2.0.9...v3.0.0)
512

613
## 2.0.9
714

README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,11 @@ Dependency verification is automatically updated by Renovate when dependencies c
6666

6767
This updates both `gradle/verification-metadata.xml` (trusted keys) and `gradle/verification-keyring.keys` (PGP keyring). Commit both files.
6868

69+
**Rundeck `X.Y.Z-SNAPSHOT`:** If that command fails with `Multiple entries with same key` for `org.rundeck:rundeck-authz-*`, Gradle merged two different snapshot builds in one run. Use one of these approaches:
70+
71+
1. Temporarily set `rundeck` in `gradle/libs.versions.toml` to a **released** version on Maven Central (see `org.rundeck:rundeck-authz-core` there), run the command above, then restore `X.Y.Z-SNAPSHOT` and **re-apply** the Sonatype snapshot checksum blocks for the authz JARs/modules (or copy them from a prior commit).
72+
2. Add or adjust checksums and trusted keys **by hand** for the new snapshot build, using artifacts from [Sonatype snapshots](https://central.sonatype.com/repository/maven-snapshots/).
73+
6974
## Refresh Dependency Verification Keys
7075

7176
After a failed build.

build.gradle

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,8 @@ subprojects{
3131
apply plugin: "java-library"
3232

3333
java {
34-
sourceCompatibility = JavaVersion.VERSION_11
35-
targetCompatibility = JavaVersion.VERSION_11
34+
sourceCompatibility = JavaVersion.VERSION_17
35+
targetCompatibility = JavaVersion.VERSION_17
3636
withJavadocJar()
3737
withSourcesJar()
3838
}
@@ -165,9 +165,15 @@ allprojects {
165165
project.version = scmVersion.version
166166
ext.rpmVersion=project.version.replaceAll('-', '.')
167167

168+
// Central and Sonatype snapshots before mavenLocal() so org.rundeck artifacts are not
169+
// shadowed by stale ~/.m2 copies (avoids duplicate verification / metadata merge issues).
168170
repositories {
169-
mavenLocal()
170171
mavenCentral()
172+
maven {
173+
url = uri('https://central.sonatype.com/repository/maven-snapshots/')
174+
mavenContent { snapshotsOnly() }
175+
}
176+
mavenLocal()
171177
}
172178
}
173179

dockers/install/rpm/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
FROM redhat/ubi8
2-
ARG JDK=java-11-openjdk
2+
ARG JDK=java-17-openjdk
33
RUN yum -y update
44
RUN yum -y install ${JDK} ${JDK}-devel which
55
RUN which java

dockers/install/upgrade-rpm/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
FROM redhat/ubi8
22

3-
ARG JDK=java-11-openjdk
3+
ARG JDK=java-17-openjdk
44
RUN yum -y update
55
RUN yum -y install ${JDK} ${JDK}-devel which
66
RUN which java

0 commit comments

Comments
 (0)