puppetlabs / puppetlabs/puppetlabs-java

OS version check prevents usage on unsupported platforms

Open
#591 4 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

community
Dominant language
Ruby
Stars
101
Forks
274
Avg merge
1h 33m
Merged PRs (30d)
1

Description

Use Case

Sometimes it happens that stuff runs on legacy platforms for reasons. The code in
https://github.com/puppetlabs/puppetlabs-java/blob/main/manifests/init.pp#L97-L106 prevents the use of the module on unsupported platforms. This pattern is quite unique to this module. For example it prevents the use of the same module on Debian 9 (supported until v10.x.x) and Debian 12 (supported since v11.x.x)
When a new version is released user should be able to define default values in his own environment and allow the use on an unsupported platform.

Describe the Solution You Would Like

Remove the failure on unsupported platforms.

Describe Alternatives You've Considered

Having separate branches of the control repo with different module versions. I prefer a single main branch for all environments though. Multiple control-repo branches lead to merge overhead and/or rotting branches.
Different module versions in different branches can also become an issue with inconsistent types.

Additional Context

https://puppetcommunity.slack.com/archives/CFD8Z9A4T/p1713871729247549

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by inspecting manifests/init.pp around lines 97-106, where the unsupported-platform check is described. Verify how the module behaves for Debian 9 and Debian 12, then confirm that users can provide defaults without the module failing on an unsupported platform.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, ruby
Domain
devops, operating-systems
Issue type
Feature
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.