Skip to content

Provide explicit JRE dependencies and bin paths for each OS version#93

Merged
bastelfreak merged 5 commits intomainfrom
provide-java-bin-per-os
Apr 14, 2026
Merged

Provide explicit JRE dependencies and bin paths for each OS version#93
bastelfreak merged 5 commits intomainfrom
provide-java-bin-per-os

Conversation

@bastelfreak
Copy link
Copy Markdown
Contributor

This is a minimal / cleaned up version of #61. It introduces two OS specific options, java and java_bin. The first is the name of a specific JRE package that we want to depend on. We depend on JRE 21 where available, otherwise 17. java_bin points to the Java binary. This OS-specific value is currently not used. In a future PR, we will update the systemd units to directly start the process via java_bin, instead of the wrapper script.

ekohl and others added 4 commits April 14, 2026 18:02
Making it a config option allows for differentiation. The comment for
version 8 was outdated, since puppetserver 8 refuses to start up with
Java 8.

Signed-off-by: Tim Meusel <tim@bastelfreak.de>
In the ezbake config we define the desired Java binary location, but we
don't always have access to this so it still needs some fallback.

Signed-off-by: Tim Meusel <tim@bastelfreak.de>
Signed-off-by: Tim Meusel <tim@bastelfreak.de>
Signed-off-by: Tim Meusel <tim@bastelfreak.de>
@bastelfreak bastelfreak changed the title Provide java bin per os Provide explicit JRE dependencies and bin paths for each OS version Apr 14, 2026
Signed-off-by: Tim Meusel <tim@bastelfreak.de>
@bastelfreak bastelfreak force-pushed the provide-java-bin-per-os branch from 1c1ffc3 to f15d9ea Compare April 14, 2026 16:21
@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 14, 2026

The rpm/deb packages and the JAR file for OpenVoxProject/ezbake are available in a zip archive:
https://github.com/OpenVoxProject/ezbake/actions/runs/24410093180/artifacts/6432650927

The rpm/deb packages and the JAR file for OpenVoxProject/ezbake are available in a zip archive:
https://github.com/OpenVoxProject/ezbake/actions/runs/24410093180/artifacts/6432664543

The rpm/deb packages and the JAR file for OpenVoxProject/ezbake are available in a zip archive:
https://github.com/OpenVoxProject/ezbake/actions/runs/24410326386/artifacts/6432749403

The rpm/deb packages and the JAR file for OpenVoxProject/ezbake are available in a zip archive:
https://github.com/OpenVoxProject/ezbake/actions/runs/24410326386/artifacts/6432771881

The rpm/deb packages and the JAR file for OpenVoxProject/ezbake are available in a zip archive:
https://github.com/OpenVoxProject/ezbake/actions/runs/24410409486/artifacts/6432791339

The rpm/deb packages and the JAR file for OpenVoxProject/ezbake are available in a zip archive:
https://github.com/OpenVoxProject/ezbake/actions/runs/24410409486/artifacts/6432815142

@bastelfreak
Copy link
Copy Markdown
Contributor Author

example on Ubuntu 24.04:

root@openvox-ubuntu24204:~# apt info openvox-server
Package: openvox-server
Version: 8.13.0-0.1SNAPSHOT.2026.04.14T1628+ubuntu24.04
Status: install ok installed
Priority: optional
Section: utils
Maintainer: Vox Pupuli <openvox@voxpupuli.org>
Installed-Size: 82.9 MB
Depends: openjdk-21-jre-headless, bash, net-tools, adduser, procps, openvox-agent (>= 8.21.1)
Conflicts: puppetserver
Replaces: puppetserver
Homepage: http://github.com/openvoxproject
License: Apache-2.0
Vendor: Vox Pupuli <openvox@voxpupuli.org>
Build-Depends: cdbs, bc, mawk, lsb-release, ruby | ruby-interpreter
Download-Size: unknown
APT-Manual-Installed: yes
APT-Sources: /var/lib/dpkg/status
Description: Vox Pupuli puppetserver
 Contains: OpenVox Server (org.openvoxproject/puppetserver 8.12.1,org.clojure/clojure 1.12.4,org.bouncycastle/bcpkix-jdk18on 1.83,org.openvoxproject/jruby-utils 5.3.6,org.openvoxproject/puppetserver 8.12.1,org.openvoxproject/trapperkeeper-webserver-jetty10 1.1.4,org.openvoxproject/trapperkeeper-metrics 2.1.7)

N: There are 3 additional records. Please use the '-a' switch to see them.
root@openvox-ubuntu24204:~#

@bastelfreak
Copy link
Copy Markdown
Contributor Author

root@openvox-ubuntu24204:~# grep JAVA_BIN /etc/default/puppetserver
JAVA_BIN="/usr/bin/java"
root@openvox-ubuntu24204:~#

@bastelfreak
Copy link
Copy Markdown
Contributor Author

And on EL:

[root@openvox ~]# dnf info openvox-server
Last metadata expiration check: 0:22:48 ago on Tue 14 Apr 2026 07:12:55 PM UTC.
Installed Packages
Name         : openvox-server
Version      : 8.13.0
Release      : 0.1SNAPSHOT.2026.04.14T1628.el10
Architecture : noarch
Size         : 79 M
Source       : openvox-server-8.13.0-0.1SNAPSHOT.2026.04.14T1628.el10.src.rpm
Repository   : @System
From repo    : @commandline
Summary      : Vox Pupuli puppetserver
URL          : http://github.com/openvoxproject
License      : Apache-2.0
Description  : Vox Pupuli puppetserver
             : Contains: OpenVox Server (org.openvoxproject/puppetserver 8.13.0-SNAPSHOT,org.clojure/clojure
             : 1.12.4,org.bouncycastle/bcpkix-jdk18on 1.83,org.openvoxproject/jruby-utils 5.3.7,org.openvoxproject/puppetserver
             : 8.13.0-SNAPSHOT,org.openvoxproject/trapperkeeper-webserver-jetty10 1.1.5,org.openvoxproject/trapperkeeper-metrics 2.1.7)

[root@openvox ~]# grep JAVA_BIN /etc/sysconfig/puppetserver
JAVA_BIN="/usr/bin/java"
[root@openvox ~]# dnf repoquery --requires openvox-server --resolve
Last metadata expiration check: 0:25:06 ago on Tue 14 Apr 2026 07:12:55 PM UTC.
bash-0:5.2.26-6.el10.x86_64
java-21-openjdk-headless-1:21.0.10.0.7-1.el10.x86_64
net-tools-0:2.0-0.73.20160912git.el10.x86_64
openvox-agent-0:8.25.0-1.el10.x86_64
procps-ng-0:4.0.4-8.el10.x86_64
systemd-0:257-13.el10.rocky.0.1.x86_64
tzdata-java-0:2026a-1.el10_1.noarch
which-0:2.21-44.el10_0.x86_64
[root@openvox ~]#

Comment thread resources/puppetlabs/lein-ezbake/template/global/ext/fpm.rb
Copy link
Copy Markdown
Member

@kenyon kenyon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It would be neat if there were a way to avoid duplicating the default-java-selection work that's done in https://github.com/puppetlabs/puppetlabs-java, but that's probably more effort than it's worth.

@bastelfreak
Copy link
Copy Markdown
Contributor Author

deduplicating would be complicated. In ezbake we set the used JRE version for our openvoxdb/openvox-server packages. And ezbake is a lot, but not a puppet module.

@bastelfreak bastelfreak enabled auto-merge April 14, 2026 20:16
@bastelfreak bastelfreak merged commit fbf5b19 into main Apr 14, 2026
13 checks passed
@bastelfreak bastelfreak deleted the provide-java-bin-per-os branch April 14, 2026 20:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants