-
Notifications
You must be signed in to change notification settings - Fork 0
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
Security: CI Hardening #2
Commits on Jun 10, 2024
-
Adds a JAR publication at `jna-graalvm.jar`, with accompanying build infrastructure, which provides support for JNA within the context of the Substrate Virtual Machine (SVM). GraalVM Native Image targets use SVM instead of JVM at runtime. JNA's current strategy of unpacking libraries at runtime works under SVM, but is suboptimal; the binary is native, so it can simply include JNA object code for the current platform directly. To accomplish this, several GraalVM "feature" implementations are provided in this new publication. By default, regular JNA access is enabled through the `JavaNativeAccess` feature; this class enables reflection and runtime JNI configurations for downstream projects which use JNA. Another feature, `SubstrateStaticJNA`, is experimental because it relies on unstable GraalVM APIs, but instead of loading JNA at runtime from a dynamic library, it builds JNA into the final native image with a static object. These features are enabled through a resource within `META-INF`, called `native-image.properties`, which is picked up by the native image compiler at build time. The new artifact only needs to be present for GraalVM native targets at build time; otherwise, the classes and libraries in `jna-graalvm.jar` are inert. Includes tested support for: - macOS aarch64 - Linux amd64 Signed-off-by: Sam Gammon <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c1a6c95 - Browse repository at this point
Copy the full SHA c1a6c95View commit details -
fix: only build gvm sources on jdk11+
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e7863cd - Browse repository at this point
Copy the full SHA e7863cdView commit details -
Configuration menu - View commit details
-
Copy full SHA for ae2ec5c - Browse repository at this point
Copy the full SHA ae2ec5cView commit details -
fixup!: jdk8 missing classses dir
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8da6e16 - Browse repository at this point
Copy the full SHA 8da6e16View commit details -
test: sample/test gradle build for native image
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for adf136c - Browse repository at this point
Copy the full SHA adf136cView commit details -
chore: ci config to run native sample
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a730c69 - Browse repository at this point
Copy the full SHA a730c69View commit details -
Configuration menu - View commit details
-
Copy full SHA for 14d3102 - Browse repository at this point
Copy the full SHA 14d3102View commit details -
fix: duplicate dependencies block in gvm pom
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for cf31c77 - Browse repository at this point
Copy the full SHA cf31c77View commit details -
fix: method alignment in default feature
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8ae4edb - Browse repository at this point
Copy the full SHA 8ae4edbView commit details -
fixup!: give native image test an arg
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e607719 - Browse repository at this point
Copy the full SHA e607719View commit details -
fix: proxy config for user code sample
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c6fad3d - Browse repository at this point
Copy the full SHA c6fad3dView commit details -
Configuration menu - View commit details
-
Copy full SHA for cdd2fe9 - Browse repository at this point
Copy the full SHA cdd2fe9View commit details -
chore: update remaining distlibs
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for afe9e2c - Browse repository at this point
Copy the full SHA afe9e2cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2b6e853 - Browse repository at this point
Copy the full SHA 2b6e853View commit details -
fixup!: missing license header
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for eb78053 - Browse repository at this point
Copy the full SHA eb78053View commit details -
chore: dispatch graalvm ci as sub-workflow
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ad5e68c - Browse repository at this point
Copy the full SHA ad5e68cView commit details -
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 84090b5 - Browse repository at this point
Copy the full SHA 84090b5View commit details -
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c91b6ea - Browse repository at this point
Copy the full SHA c91b6eaView commit details -
fixup!: reusable workflow issues
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c0183be - Browse repository at this point
Copy the full SHA c0183beView commit details -
fixup!: fail on native image build err
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 49666a4 - Browse repository at this point
Copy the full SHA 49666a4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 40ba080 - Browse repository at this point
Copy the full SHA 40ba080View commit details -
Configuration menu - View commit details
-
Copy full SHA for 51b6a30 - Browse repository at this point
Copy the full SHA 51b6a30View commit details -
fixup!: mkdirs for gvm target directories
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1525c23 - Browse repository at this point
Copy the full SHA 1525c23View commit details -
feat(graalvm): add
Library
proxy auto-configAdds a subtype reachability handler for `com.sun.jna.Library`, so that user types which extend `Library` are automatically registered as runtime-capable proxy types Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9bba1dd - Browse repository at this point
Copy the full SHA 9bba1ddView commit details -
Configuration menu - View commit details
-
Copy full SHA for 46460e9 - Browse repository at this point
Copy the full SHA 46460e9View commit details -
chore: add @sgammon and @darvld to developers of graalvm integration
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0c905a0 - Browse repository at this point
Copy the full SHA 0c905a0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 66e6fad - Browse repository at this point
Copy the full SHA 66e6fadView commit details -
chore: dependency graph submission
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1ecf5be - Browse repository at this point
Copy the full SHA 1ecf5beView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6bb32c5 - Browse repository at this point
Copy the full SHA 6bb32c5View commit details -
fixup!: token permissions for dependency graph
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 93d065a - Browse repository at this point
Copy the full SHA 93d065aView commit details -
chore: local deploy capability
Adds an Ant task which "deploys" to a local directory, at `build/stage`. Also adds a CI task which runs `deploy-local` and uploads the resulting `build/stage` directory as an artifact. This artifact can be unpacked and deployed to custom (or private) Maven repositories, enabling easy testing downstream. Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 423f82d - Browse repository at this point
Copy the full SHA 423f82dView commit details -
fixup!: security manager for ci build
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 321ed51 - Browse repository at this point
Copy the full SHA 321ed51View commit details -
fixup!: conditional java security manager fix
Signed-off-by: GitHub <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fde7283 - Browse repository at this point
Copy the full SHA fde7283View commit details