Skip to content
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

feat(24.04): openjdk-17 headless slices #350

Open
wants to merge 25 commits into
base: ubuntu-24.04
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
9f3102d
feat: openjdk-17 slices
vpa1977 Sep 17, 2024
b2a5d05
fix: tools depend on security
vpa1977 Sep 18, 2024
bbe7b26
Merge branch 'ubuntu-24.04' into 24.04-openjdk-17
rebornplusplus Sep 23, 2024
27036a7
feat: add classescache slice
vpa1977 Sep 23, 2024
dbde452
Merge branch '24.04-openjdk-17' of github.com:vpa1977/chisel-releases…
vpa1977 Sep 23, 2024
85be996
feat: amend standard slice
vpa1977 Sep 23, 2024
5a73e9e
fix: use wildcard in classescache
vpa1977 Sep 23, 2024
ea77034
fix: remove management config from core slice
vpa1977 Sep 24, 2024
a2b9607
doc: add slice descriptions
vpa1977 Sep 24, 2024
b3033ee
doc: add comments for jdk slices
vpa1977 Sep 24, 2024
7931998
doc: fix typos in slice definitions comments
vpa1977 Sep 24, 2024
e1c021a
lint: add newline before comment
vpa1977 Sep 24, 2024
8b6dc6f
Merge remote-tracking branch 'upstream/ubuntu-24.04' into 24.04-openj…
vpa1977 Sep 24, 2024
d24b959
fix: update openjdk-17 slices as per review comments
vpa1977 Oct 1, 2024
25da431
test: update openjdk-17 tests as per review comments
vpa1977 Oct 1, 2024
638873a
fix: standard slice dependencies
vpa1977 Oct 1, 2024
a7e325c
test: use openjdk-17 for host jdk
vpa1977 Oct 1, 2024
8bbfea8
doc: fix comment
vpa1977 Oct 1, 2024
d94ffc0
lint: remove empty line
vpa1977 Oct 1, 2024
938d51c
Merge branch 'ubuntu-24.04' into 24.04-openjdk-17
vpa1977 Oct 1, 2024
17428d9
lint: add libc6 and zlib1g explicit dependencies
vpa1977 Oct 2, 2024
221b31d
Merge branch '24.04-openjdk-17' of github.com:vpa1977/chisel-releases…
vpa1977 Oct 2, 2024
1fe16c9
Merge branch 'ubuntu-24.04' into 24.04-openjdk-17
vpa1977 Oct 2, 2024
743b55b
fix: remove jvm.cfg default
vpa1977 Oct 8, 2024
536677b
Merge branch 'ubuntu-24.04' into 24.04-openjdk-17
vpa1977 Oct 8, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
156 changes: 156 additions & 0 deletions slices/openjdk-17-jdk-headless.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,156 @@
package: openjdk-17-jdk-headless

essential:
- openjdk-17-jdk-headless_copyright

slices:

# OpenJDK binaries slice
core:
essential:
- libc6_libs
- openjdk-17-jre-headless_core
- openjdk-17-jre-headless_javac
- zlib1g_libs
contents:
/usr/lib/jvm/java-17-openjdk-*/bin/javac:
/usr/lib/jvm/java-17-openjdk-*/bin/javadoc:
/usr/lib/jvm/java-17-openjdk-*/bin/javap:
/usr/lib/jvm/java-17-openjdk-*/bin/jdeprscan:
/usr/lib/jvm/java-17-openjdk-*/bin/jdeps:
/usr/lib/jvm/java-17-openjdk-*/bin/jimage:
/usr/lib/jvm/java-17-openjdk-*/bin/serialver:

standard:
essential:
- openjdk-17-jdk-headless_core
- openjdk-17-jre-headless_standard
contents:
/usr/lib/jvm/java-17-openjdk-*/bin/jar:
/usr/lib/jvm/java-17-openjdk-*/bin/jarsigner:
/usr/lib/jvm/java-17-openjdk-*/bin/jcmd:
/usr/lib/jvm/java-17-openjdk-*/bin/jdb:
/usr/lib/jvm/java-17-openjdk-*/bin/jfr:
/usr/lib/jvm/java-17-openjdk-*/bin/jhsdb:
arch:
- amd64
- arm64
/usr/lib/jvm/java-17-openjdk-*/bin/jinfo:
/usr/lib/jvm/java-17-openjdk-*/bin/jmap:
/usr/lib/jvm/java-17-openjdk-*/bin/jps:
/usr/lib/jvm/java-17-openjdk-*/bin/jrunscript:
/usr/lib/jvm/java-17-openjdk-*/bin/jshell:
/usr/lib/jvm/java-17-openjdk-*/bin/jstack:
/usr/lib/jvm/java-17-openjdk-*/bin/jstat:
/usr/lib/jvm/java-17-openjdk-*/bin/jstatd:

# OpenJDK modules required to build the runtime image
modules:
essential:
- openjdk-17-jdk-headless_core
contents:
/usr/lib/jvm/java-17-openjdk-*/bin/jlink:
/usr/lib/jvm/java-17-openjdk-*/bin/jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.base.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.compiler.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.datatransfer.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.desktop.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.instrument.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.logging.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.management.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.management.rmi.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.naming.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.net.http.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.prefs.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.rmi.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.scripting.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.se.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.security.jgss.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.security.sasl.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.smartcardio.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.sql.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.sql.rowset.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.transaction.xa.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.xml.crypto.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/java.xml.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.accessibility.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.attach.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.charsets.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.compiler.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.crypto.cryptoki.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.crypto.ec.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.dynalink.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.editpad.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.hotspot.agent.jmod:
arch:
- amd64
- arm64
- ppc64el
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.httpserver.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.incubator.foreign.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.incubator.vector.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.internal.ed.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.internal.jvmstat.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.internal.le.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.internal.opt.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.internal.vm.ci.jmod:
arch:
- amd64
- arm64
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.internal.vm.compiler.jmod:
arch:
- amd64
- arm64
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.internal.vm.compiler.management.jmod:
arch:
- amd64
- arm64
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jartool.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.javadoc.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jcmd.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jconsole.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jdeps.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jdi.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jdwp.agent.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jfr.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jlink.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jpackage.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jshell.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jsobject.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jstatd.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.localedata.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.management.agent.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.management.jfr.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.management.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.naming.dns.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.naming.rmi.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.net.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.nio.mapmode.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.random.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.sctp.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.security.auth.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.security.jgss.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.unsupported.desktop.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.unsupported.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.xml.dom.jmod:
/usr/lib/jvm/java-17-openjdk-*/jmods/jdk.zipfs.jmod:

# OpenJDK headers for JNI
headers:
contents:
/usr/lib/jvm/java-17-openjdk-*/include/classfile_constants.h:
/usr/lib/jvm/java-17-openjdk-*/include/jni.h:
/usr/lib/jvm/java-17-openjdk-*/include/jvmti.h:
/usr/lib/jvm/java-17-openjdk-*/include/jvmticmlr.h:
/usr/lib/jvm/java-17-openjdk-*/include/linux/jni_md.h:

# OpenJDK headers for the debug agent development
debug-headers:
contents:
/usr/lib/jvm/java-17-openjdk-*/include/jdwpTransport.h:

copyright:
essential:
- openjdk-17-jre-headless_copyright
contents:
/usr/share/doc/openjdk-17-jdk-headless:
179 changes: 179 additions & 0 deletions slices/openjdk-17-jre-headless.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,179 @@
package: openjdk-17-jre-headless
vpa1977 marked this conversation as resolved.
Show resolved Hide resolved

essential:
- openjdk-17-jre-headless_copyright

slices:
vpa1977 marked this conversation as resolved.
Show resolved Hide resolved

standard:
essential:
- openjdk-17-jre-headless_class-data-sharing
- openjdk-17-jre-headless_core
- openjdk-17-jre-headless_debug
- openjdk-17-jre-headless_jfr
- openjdk-17-jre-headless_management
- openjdk-17-jre-headless_prefs
- openjdk-17-jre-headless_rmi
- openjdk-17-jre-headless_security
- openjdk-17-jre-headless_tools

# List of classes required to create the Class Data Sharing archive
class-data-sharing:
essential:
- openjdk-17-jre-headless_core
contents:
/usr/lib/jvm/java-17-openjdk-*/lib/classlist:

# A minimal set of files to run a Java application
# excluded dependencies:
# - ca-certificates-java_essential - needs chisel support to run
# maintainer scripts.
# - java-common - provides update-alternatives,
# not relevant.
# - util-linux - needed for bash completion
# not relevant.
# - libjpeg8 - used in awt, not relevant
# - liblcms2-2 - used in awt, not relevant
core:
essential:
- libc6_libs
- libgcc-s1_libs
- libstdc++6_libs
- zlib1g_libs
contents:
/etc/java-17-openjdk/jvm-*.cfg:
/etc/java-17-openjdk/logging.properties:
/etc/java-17-openjdk/net.properties:
/etc/java-17-openjdk/security/java.policy:
/etc/java-17-openjdk/security/java.security:
/usr/lib/jvm/java-17-openjdk-*/bin/java:
/usr/lib/jvm/java-17-openjdk-*/conf/logging.properties:
/usr/lib/jvm/java-17-openjdk-*/conf/net.properties:
/usr/lib/jvm/java-17-openjdk-*/conf/security/java.policy:
/usr/lib/jvm/java-17-openjdk-*/conf/security/java.security:
/usr/lib/jvm/java-17-openjdk-*/lib/jexec:
/usr/lib/jvm/java-17-openjdk-*/lib/jspawnhelper:
/usr/lib/jvm/java-17-openjdk-*/lib/jvm.cfg:
/usr/lib/jvm/java-17-openjdk-*/lib/libextnet.so:
/usr/lib/jvm/java-17-openjdk-*/lib/libjava.so:
# lib/modules support
/usr/lib/jvm/java-17-openjdk-*/lib/libjimage.so:
/usr/lib/jvm/java-17-openjdk-*/lib/libjli.so:
/usr/lib/jvm/java-17-openjdk-*/lib/libjsig.so:
# required for IO.
/usr/lib/jvm/java-17-openjdk-*/lib/libnet.so:
# required for IO.
/usr/lib/jvm/java-17-openjdk-*/lib/libnio.so:
/usr/lib/jvm/java-17-openjdk-*/lib/libverify.so:
/usr/lib/jvm/java-17-openjdk-*/lib/libzip.so:
/usr/lib/jvm/java-17-openjdk-*/lib/modules:
/usr/lib/jvm/java-17-openjdk-*/lib/server/libjsig.so:
/usr/lib/jvm/java-17-openjdk-*/lib/server/libjvm.so:
/usr/lib/jvm/java-17-openjdk-*/lib/tzdb.dat:

# Native part of jdk.prefs modules
prefs:
essential:
- openjdk-17-jre-headless_core
contents:
/usr/lib/jvm/java-17-openjdk-*/lib/libprefs.so:

# Native part of java.rmi
rmi:
essential:
- openjdk-17-jre-headless_security
contents:
/usr/lib/jvm/java-17-openjdk-*/bin/rmiregistry:
/usr/lib/jvm/java-17-openjdk-*/lib/librmi.so:

# Debug support
debug:
essential:
- openjdk-17-jre-headless_core
contents:
/usr/lib/jvm/java-17-openjdk-*/lib/libattach.so:
/usr/lib/jvm/java-17-openjdk-*/lib/libdt_socket.so:
/usr/lib/jvm/java-17-openjdk-*/lib/libinstrument.so:
/usr/lib/jvm/java-17-openjdk-*/lib/libjdwp.so:
/usr/lib/jvm/java-17-openjdk-*/lib/libsaproc.so:
arch:
- amd64
- arm64
- armhf
- ppc64el

# Configuration and native part of Java Management Extensions
management:
essential:
- openjdk-17-jre-headless_rmi
contents:
/etc/java-17-openjdk/management/jmxremote.access:
/etc/java-17-openjdk/management/management.properties:
/usr/lib/jvm/java-17-openjdk-*/conf/management/jmxremote.access:
/usr/lib/jvm/java-17-openjdk-*/conf/management/management.properties:
/usr/lib/jvm/java-17-openjdk-*/lib/libmanagement.so:
/usr/lib/jvm/java-17-openjdk-*/lib/libmanagement_agent.so:
/usr/lib/jvm/java-17-openjdk-*/lib/libmanagement_ext.so:

# Security configuration files and native libraries
security:
essential:
- libnss3_libs
- libpcsclite1_libs
- openjdk-17-jre-headless_core
contents:
/etc/java-17-openjdk/security/blocked.certs:
/etc/java-17-openjdk/security/default.policy:
/etc/java-17-openjdk/security/nss.cfg:
/etc/java-17-openjdk/security/policy/limited/default_US_export.policy:
/etc/java-17-openjdk/security/policy/limited/default_local.policy:
/etc/java-17-openjdk/security/policy/limited/exempt_local.policy:
/etc/java-17-openjdk/security/policy/unlimited/default_US_export.policy:
/etc/java-17-openjdk/security/policy/unlimited/default_local.policy:
/etc/java-17-openjdk/security/public_suffix_list.dat:
/usr/lib/jvm/java-17-openjdk-*/conf/security/nss.cfg:
/usr/lib/jvm/java-17-openjdk-*/conf/security/policy/limited/default_US_export.policy:
/usr/lib/jvm/java-17-openjdk-*/conf/security/policy/limited/default_local.policy:
/usr/lib/jvm/java-17-openjdk-*/conf/security/policy/limited/exempt_local.policy:
/usr/lib/jvm/java-17-openjdk-*/conf/security/policy/unlimited/default_US_export.policy:
/usr/lib/jvm/java-17-openjdk-*/conf/security/policy/unlimited/default_local.policy:
/usr/lib/jvm/java-17-openjdk-*/lib/libj2gss.so:
/usr/lib/jvm/java-17-openjdk-*/lib/libj2pcsc.so:
/usr/lib/jvm/java-17-openjdk-*/lib/libj2pkcs11.so:
/usr/lib/jvm/java-17-openjdk-*/lib/libjaas.so:
/usr/lib/jvm/java-17-openjdk-*/lib/security/blocked.certs:
/usr/lib/jvm/java-17-openjdk-*/lib/security/cacerts:
/usr/lib/jvm/java-17-openjdk-*/lib/security/default.policy:
/usr/lib/jvm/java-17-openjdk-*/lib/security/public_suffix_list.dat:

# OpenJDK tools
tools:
essential:
- openjdk-17-jre-headless_security
contents:
/usr/lib/jvm/java-17-openjdk-*/bin/keytool:
/usr/lib/jvm/java-17-openjdk-amd64/bin/jpackage:
arch:
- amd64

# Java Flight Recorder configuration and jar file
jfr:
essential:
- openjdk-17-jre-headless_core
contents:
/etc/java-17-openjdk/jfr/default.jfc:
/etc/java-17-openjdk/jfr/profile.jfc:
/usr/lib/jvm/java-17-openjdk-*/lib/jfr/default.jfc:
/usr/lib/jvm/java-17-openjdk-*/lib/jfr/profile.jfc:
/usr/lib/jvm/java-17-openjdk-*/lib/jrt-fs.jar:

# Javac JDK API signatures for the backwards compatibility
javac:
essential:
- openjdk-17-jre-headless_core
contents:
/usr/lib/jvm/java-17-openjdk-*/lib/ct.sym:

copyright:
contents:
/usr/share/doc/openjdk-17-jre-headless/copyright:
5 changes: 5 additions & 0 deletions tests/spread/integration/openjdk-17-jdk-headless/Main.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
public class Main {
public static void main(String[] args){
System.out.println("Hello world");
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
public class MonitoringTest {
public static void main(String[] args) throws InterruptedException {
while (true) {
Thread.sleep(1000);
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
import java.rmi.Remote;

public class RemoteInterface implements Remote {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
import java.io.Serializable;

public class SerializableObject implements Serializable {
}
3 changes: 3 additions & 0 deletions tests/spread/integration/openjdk-17-jdk-headless/all.policy
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
grant {
permission java.security.AllPermission;
};
Loading
Loading