Skip to content

Commit f48b4c0

Browse files
committed
Add Ubuntu 25.04 Plucky Puffin.
1 parent 7439056 commit f48b4c0

File tree

24 files changed

+82
-31
lines changed

24 files changed

+82
-31
lines changed

.github/workflows/cacert-publish.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ jobs:
7171
- name: Upload deb file to Artifactory
7272
if: steps.check-deb.outputs.file_exists == 'false'
7373
run: |
74-
DISTRO_LIST="trixie,bookworm,buster,oracular,noble,jammy,focal,bionic"
74+
DISTRO_LIST="trixie,bookworm,buster,plucky,oracular,noble,jammy,focal,bionic"
7575
FILE=$(ls ca-certificates/debian/build/ospackage/*.deb)
7676
# Upload cacerts deb file
7777
jf rt u "$FILE" "deb/pool/main/a/adoptium-ca-certificates/$(basename ${FILE})" --flat=true

docs/Guide_To_The_Linux_Installers.md

Lines changed: 21 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@ The linux installer packaging process, currently consists of the following eleme
88

99

1010
### 1.1. Jenkins Linux Packaging Job
11-
11+
1212
This job which has restricted access. It requires several inputs that drive the packaging process:
1313

14-
14+
1515
+ JDK / JRE - Whether you would like the packaging process to produce the installer packages for the JDK or JRE
1616
+ Java version option (Which version of Java to produce packages for)
17-
+ Current Options : 8, 11, 17, 21, 22
17+
+ Current Options : 8, 11, 17, 21, 22
1818
+ Architecture - (Which hardware platform to build for)
1919
+ Current Options :
2020
+ x86_64
@@ -45,15 +45,15 @@ Supported Linux Distros:
4545
Distribution Type| Supported Versions
4646
----------|---------
4747
Apk (Alpine)| All supported version.
48-
Deb (Debian)| Trixie (Debian 13)<br>Bookworm (Debian 12)</br>Bullseye (Debian 11)<br>Buster (Debian 10)</br> Oracular (Ubuntu 24.10)</br>Noble (Ubuntu 24.04)</br>Jammy (Ubuntu 22.04)</br>Focal (Ubuntu 20.04)</br>Bionic (Ubuntu 18.04)
48+
Deb (Debian)| Trixie (Debian 13)<br>Bookworm (Debian 12)</br>Bullseye (Debian 11)<br>Buster (Debian 10)</br> Plucky (Ubuntu 25.04)</br> Oracular (Ubuntu 24.10)</br>Noble (Ubuntu 24.04)</br>Jammy (Ubuntu 22.04)</br>Focal (Ubuntu 20.04)</br>Bionic (Ubuntu 18.04)
4949
RPM (RHEL)| centos 7</br> rocky 8</br>RHEL7 , RHEL8 & RHEL9</br> Fedora 35, 36, 37, 38 ,39 , 40</br>Oracle Linux 7 & 8</br>Amazon Linux 2
5050
RPM(SUSE) | Opensuse 15.3</br>Opensuse 15.4</br>Opensuse 15.5</br>SLES 12</br>SLES15
5151

5252
As part of this process, the packages are first built, using the appropriate mechanisms, and then a set of unit tests are executed to ensure the builds have completed correctly.
5353

5454
### 1.3. Package Signing & Upload
5555

56-
The final part of the jenkins job is triggered when either/both of the enable enableGpgSigning and uploadPackage options are selected.
56+
The final part of the jenkins job is triggered when either/both of the enable enableGpgSigning and uploadPackage options are selected.
5757

5858
The Gpg signing uses the Adoptium Gpg key to sign the installer packages prior to their upload to the [Jfrog artifactory, hosted at packages.adoptium.net](https://packages.adoptium.net/)
5959

@@ -63,7 +63,7 @@ As part of this process, the packages are first built, using the appropriate mec
6363

6464
Prior to building and releasing any packages, the source code that controls the process requires a number of updates. These updates typically happen once all of the linux platforms for a particular Java version have been released and the binaries uploaded to Github.
6565

66-
Prior to updating the source code, its important to have an understanding of how the source code is structured so that the correct files can be updated. The callout below, highlights the structure of the source code so for example underneath the linux top level directory, a selection of either jdk/jre, followed by the distribution, and then the vendor (temurin in the example), followed by the Java version.
66+
Prior to updating the source code, its important to have an understanding of how the source code is structured so that the correct files can be updated. The callout below, highlights the structure of the source code so for example underneath the linux top level directory, a selection of either jdk/jre, followed by the distribution, and then the vendor (temurin in the example), followed by the Java version.
6767

6868
```
6969
-- linux
@@ -93,7 +93,7 @@ The following sections will detail the source changes required when a release is
9393

9494
And additionally were an additional architecture being added (Alpine is currently only supported on x86_64 and Alpine from JDK version 21 onwards), then the <b>arch</b> field would also need appending.
9595

96-
Once all changes are made in the header section, its time to move on to the footer section.
96+
Once all changes are made in the header section, its time to move on to the footer section.
9797

9898
```
9999
pkgname=temurin-21
@@ -111,10 +111,10 @@ The following sections will detail the source changes required when a release is
111111

112112
<h5>2.1.2 The footer section (example below)</h5>
113113

114-
In this section, the key fields that must be amended are the architecture specific checksum, as shown below. These checksums are released alongside the binary files uploaded to Github, so these checksums can be obtained from there.
114+
In this section, the key fields that must be amended are the architecture specific checksum, as shown below. These checksums are released alongside the binary files uploaded to Github, so these checksums can be obtained from there.
115115

116116
Again, were another architecture being added an additional element in the case statement below would be required, along with its checksum.
117-
117+
118118
<b>NB:</b> Note how the case statement uses the values from the <b>arch</b> field in the header section to determine the correct checksum to use.
119119

120120

@@ -178,7 +178,7 @@ riscv64_checksum = 246acb1db3ef69a7e3328fa378513b2e606e64710626ae8dd29decc0e5253
178178

179179
<h5>2.2.3 The control file (example below:)</h5>
180180

181-
The final file typically only requires updates if this is the first release of a new jdk, or alternatively if a new architecture is being added.
181+
The final file typically only requires updates if this is the first release of a new jdk, or alternatively if a new architecture is being added.
182182

183183

184184
In the event of a new architecture being added, the <b>Architecture</b> line should have the new value appended.
@@ -194,7 +194,7 @@ Build-Depends: debhelper (>= 11), lsb-release
194194
195195
Package: temurin-21-jdk
196196
Architecture: amd64 arm64 ppc64el s390x riscv64
197-
Provides:
197+
Provides:
198198
java15-sdk-headless,
199199
java16-sdk-headless,
200200
java17-sdk-headless,
@@ -215,7 +215,7 @@ The process for updating the source files for both RHEL & Suse based distributio
215215
This section requires updates to the following 2 fields:
216216

217217
<b>global spec version:</b></br> This field should be amended to the FULL version number of the release being processed, e.g , 21.0.3.0.0.9.
218-
<b>global spec release:</b></br> This field should be reset to 0 for the first release of a package, and then incremented should there be patches or additional rebuilds of this package version. The first version should be 1. This will ultimately be appended to the final package name, e.g temurin-21-jdk-21.0.3.0.0.9-1.
218+
<b>global spec release:</b></br> This field should be reset to 0 for the first release of a package, and then incremented should there be patches or additional rebuilds of this package version. The first version should be 1. This will ultimately be appended to the final package name, e.g temurin-21-jdk-21.0.3.0.0.9-1.
219219

220220
In the event that this is a new java major version release, the <b>global priority</b> should also be updated appropriately.
221221

@@ -356,7 +356,7 @@ ExclusiveArch: x86_64 ppc64le aarch64 s390x riscv64 somenew
356356
<details>
357357
<summary>Architectures To Process & Source Version Lines Example</summary>
358358

359-
```ExclusiveArch: x86_64 ppc64le aarch64 s390x riscv64
359+
```ExclusiveArch: x86_64 ppc64le aarch64 s390x riscv64
360360
361361
# First architecture (x86_64)
362362
Source0: %{source_url_base}/jdk-%{upstream_version_url}/OpenJDK21U-jdk_%{vers_arch}_linux_hotspot_%{upstream_version_no_plus}.tar.gz
@@ -429,6 +429,7 @@ For Debian based distributions a similar process is required, firstly add the di
429429
"bookworm", // Debian/12
430430
"bullseye", // Debian/11
431431
"buster", // Debian/10
432+
"plucky", // Ubuntu/25.04 (STS)
432433
"oracular", // Ubuntu/24.10 (STS)
433434
"noble", // Ubuntu/24.04 (LTS)
434435
"jammy", // Ubuntu/22.04 (LTS)
@@ -447,7 +448,7 @@ In addition to the updates detailed above, it is also important to change the fo
447448
the following line should be changed :
448449

449450
```
450-
debVersionList="trixie bookworm bullseye buster oracular noble jammy focal bionic"
451+
debVersionList="trixie bookworm bullseye buster plucky oracular noble jammy focal bionic"
451452
```
452453

453454
And similarly in the following two files
@@ -464,6 +465,7 @@ The array needs to be updated to add or remove distributions as necessary as sho
464465
Arguments.of("debian", "bookworm"), // Debian/12 (testing)
465466
Arguments.of("debian", "bullseye"), // Debian/11 (stable)
466467
Arguments.of("debian", "buster"), // Debian/10 (oldstable)
468+
Arguments.of("ubuntu", "plucky"), // Ubuntu/25.04 (STS)
467469
Arguments.of("ubuntu", "oracular"), // Ubuntu/24.10 (STS)
468470
Arguments.of("ubuntu", "noble"), // Ubuntu/24.04 (LTS)
469471
Arguments.of("ubuntu", "jammy"), // Ubuntu/22.04 (LTS)
@@ -488,7 +490,7 @@ Simply add or remove the supported distributions to the <b>debVersionList</b> li
488490
- name: Upload deb file to Artifactory
489491
if: steps.check-deb.outputs.file_exists == 'false'
490492
run: |
491-
debVersionList=("bookworm" "bullseye" "buster" "oracular" "jammy" "focal" "bionic")
493+
debVersionList=("bookworm" "bullseye" "buster" "oracular" "jammy" "focal" "bionic" "plucky")
492494
for debVersion in "${debVersionList[@]}"; do
493495
distroList+="deb.distribution=${debVersion};"
494496
done
@@ -509,6 +511,7 @@ def deb_versions = [
509511
"bookworm", // Debian/12
510512
"bullseye", // Debian/11
511513
"buster", // Debian/10
514+
"plucky", // Ubuntu/25.04 (STS)
512515
"oracular" // Ubuntu/24.10 (STS)
513516
"noble", // Ubuntu/24.04 (LTS)
514517
"jammy", // Ubuntu/22.04 (LTS)
@@ -540,13 +543,13 @@ In addition to the previous changes, the automated test source code also needs u
540543
linux/ca-certificates/debian/src/packageTest/java/org/adoptium/cacertificates/AptOperationsTest.java
541544
```
542545

543-
This file requires that the <b>.contains("Version: 1.0.4-1")</b> line be updated to reflect the new version number added to the <i>changelog</i> above.
546+
This file requires that the <b>.contains("Version: 1.0.5-1")</b> line be updated to reflect the new version number added to the <i>changelog</i> above.
544547
```
545548
result = runShell(container, "apt-cache show adoptium-ca-certificates");
546549
assertThat(result.getExitCode()).isEqualTo(0);
547550
assertThat(result.getStdout())
548551
.contains("Package: adoptium-ca-certificates")
549-
.contains("Version: 1.0.4-1")
552+
.contains("Version: 1.0.5-1")
550553
.contains("Priority: optional")
551554
.contains("Architecture: all")
552555
.contains("Status: install ok installed");
@@ -564,6 +567,7 @@ linux/ca-certificates/debian/src/packageTest/java/org/adoptium/cacertificates/Ch
564567
"bookworm", // Debian/12
565568
"bullseye", // Debian/11
566569
"buster", // Debian/10
570+
"plucky", // Ubuntu/25.04 (STS)
567571
"noble", // Ubuntu/24.04 (LTS)
568572
"jammy", // Ubuntu/22.04 (LTS)
569573
"focal", // Ubuntu/20.04 (LTS)

linux/Jenkinsfile

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -523,8 +523,8 @@ def uploadDebArtifacts(String buildArch, String Version) {
523523
echo "Debian Architecture Upload List = ${debArchList}"
524524

525525
/*
526-
Debian 10.0 11.0 12.0
527-
Ubuntu 18.04 20.04 22.04 24.04 24.10
526+
Debian 10.0 11.0 12.0 13.0
527+
Ubuntu 18.04 20.04 22.04 24.04 24.10 25.04
528528
add more into list when available for release
529529
also update linux/{jdk,jre}/debian/main/packing/build.sh
530530
*/
@@ -533,6 +533,7 @@ def uploadDebArtifacts(String buildArch, String Version) {
533533
"bookworm", // Debian/12
534534
"bullseye", // Debian/11
535535
"buster", // Debian/10
536+
"plucky", // Ubuntu/25.04 (STS)
536537
"oracular", // Ubuntu/24.10 (STS)
537538
"noble", // Ubuntu/24.04 (LTS)
538539
"jammy", // Ubuntu/22.04 (LTS)

linux/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -202,6 +202,7 @@ Supported platform amd64, arm64, armhf, ppc64le, s390x (s390x is only available
202202
| debian/12 (bookworm/testing) | x86_64 | |
203203
| debian/11 (bullseye/stable) | x86_64 | |
204204
| debian/10 (buster/oldstable) | x86_64 | |
205+
| ubuntu/25.04 (plucky) | x86_64 | |
205206
| ubuntu/24.10 (oracular) | x86_64 | |
206207
| ubuntu/24.04 (noble) | x86_64 | |
207208
| ubuntu/22.04 (jammy) | x86_64 | |

linux/ca-certificates/debian/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ def deb_versions = [
2929
"bookworm", // Debian/12
3030
"bullseye", // Debian/11
3131
"buster", // Debian/10
32+
"plucky", // Ubuntu/25.04 (STS)
3233
"oracular", // Ubuntu/24.10 (STS)
3334
"noble", // Ubuntu/24.04 (LTS)
3435
"jammy", // Ubuntu/22.04 (LTS)

linux/ca-certificates/debian/src/main/packaging/debian/changelog

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
adoptium-ca-certificates (1.0.5-1) STABLE; urgency=medium
2+
3+
* Add Ubuntu Plucky Puffin to the list of supported releases.
4+
5+
-- Eclipse Adoptium Package Maintainers <temurin-dev@eclipse.org> Thu, 16 May 2025 11:00:00 +0000
6+
17
adoptium-ca-certificates (1.0.4-1) STABLE; urgency=medium
28

39
* Add Ubuntu Oracular Oriole to the list of supported releases.

linux/ca-certificates/debian/src/packageTest/java/org/adoptium/cacertificates/AptOperationsTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ void packageSuccessfullyInstalled(String distribution, String codename) {
6060
assertThat(result.getExitCode()).isEqualTo(0);
6161
assertThat(result.getStdout())
6262
.contains("Package: adoptium-ca-certificates")
63-
.contains("Version: 1.0.4-1")
63+
.contains("Version: 1.0.5-1")
6464
.contains("Priority: optional")
6565
.contains("Architecture: all")
6666
.contains("Status: install ok installed");

linux/ca-certificates/debian/src/packageTest/java/org/adoptium/cacertificates/ChangesVerificationTest.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ class ChangesVerificationTest {
3636
"bookworm", // Debian/12
3737
"bullseye", // Debian/11
3838
"buster", // Debian/10
39+
"plucky", // Ubuntu/25.04 (STS)
3940
"oracular", // Ubuntu/24.10 (STS)
4041
"noble", // Ubuntu/24.04 (LTS)
4142
"jammy", // Ubuntu/22.04 (LTS)

linux/ca-certificates/debian/src/packageTest/java/org/adoptium/cacertificates/DebianFlavours.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ public Stream<? extends Arguments> provideArguments(ExtensionContext context) {
4949
Arguments.of(containerRegistry + "debian", "bookworm"), // Debian/12 (testing)
5050
Arguments.of(containerRegistry + "debian", "bullseye"), // Debian/11 (stable)
5151
Arguments.of(containerRegistry + "debian", "buster"), // Debian/10 (oldstable)
52+
Arguments.of(containerRegistry + "ubuntu", "plucky"), // Ubuntu/25.04 (STS)
5253
Arguments.of(containerRegistry + "ubuntu", "oracular"), // Ubuntu/24.10 (STS)
5354
Arguments.of(containerRegistry + "ubuntu", "noble"), // Ubuntu/24.04 (LTS)
5455
Arguments.of(containerRegistry + "ubuntu", "jammy"), // Ubuntu/22.04 (LTS)

linux/jdk/debian/src/main/packaging/build.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ if [ "$buildLocalFlag" == "true" ]; then
2727
fi
2828

2929
# $ and $ARCH are env variables passing in from "docker run"
30-
debVersionList="trixie bookworm bullseye buster oracular noble jammy focal bionic"
30+
debVersionList="trixie bookworm bullseye buster plucky oracular noble jammy focal bionic"
3131

3232
# the target package is only based on the host machine's ARCH
3333
# ${buildArch} is only used for debug purpose what really matter is the label on the jenkins agent

0 commit comments

Comments
 (0)