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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add EL9 support #1591

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open

Add EL9 support #1591

wants to merge 1 commit into from

Conversation

bastelfreak
Copy link
Collaborator

Summary

Provide a detailed description of all the changes present in this pull request.

Additional Context

Add any additional context about the problem here.

  • Root cause and the steps to reproduce. (If applicable)
  • Thought process behind the implementation.

Related Issues (if any)

Mention any related issues or pull requests.

Checklist

  • 馃煝 Spec tests.
  • 馃煝 Acceptance tests.
  • Manually verified. (For example puppet apply)

@SimonHoenscheid
Copy link
Collaborator

SimonHoenscheid commented Apr 15, 2024

EL9 manages the default postgres in dnf modules, the postgres repo does not.

Recommended way is to disable the postgres dnf modules and install from the postgres repo.

the postgres repo requires a version which is defined via postgresql::globals::version, this is also the default version which is passed to the dnf module via the globals_version variable, which would need a value of 'disabled' here, to act correcty, the globals class requires a patch to make this possible.

My suggestion is to add an optional_parameter like dnf_module_version, unless set real_dnf_module_version defaults to $version/global_version.

https://github.com/puppetlabs/puppetlabs-postgresql/blob/main/manifests/globals.pp#L289

Copy link
Collaborator

@ekohl ekohl left a comment

Choose a reason for hiding this comment

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

EL9 manages the default postgres in dnf modules, the postgres repo does not.

For plain EL9 this isn't true:

# dnf install postgresql
...
# dnf module list --enabled -q

You can install PostgreSQL 15 or 16 via modules, but the default (13) is not modular.

The reason the test fails is that it sets manage_dnf_module to true and version to '13'. That isn't a combination that exists.

The easiest fix is to pick a version that exists in both EL 8 & 9 as modular versions, which means picking 15 or 16.

@@ -3,7 +3,7 @@
# run a test task
require 'spec_helper_acceptance'

describe 'postgresql instance test1', if: os[:family] == 'redhat' && os[:release].start_with?('8') do
describe 'postgresql instance test1', if: os[:family] == 'redhat' && !os[:release].start_with?('7') do
pp = <<-MANIFEST
# set global defaults
class { 'postgresql::globals':
Copy link
Collaborator

Choose a reason for hiding this comment

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

I'd change the version to 15 or 16. I don't have a RHEL 8 at hand to see if it ships 16 already, so I'd suggest 15.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants