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

Acceptance tests for CentOS 7 , remove RHEL6 #309

Merged
merged 3 commits into from
Sep 7, 2021

Conversation

treydock
Copy link
Contributor

Pull Request (PR) description

Add CentOS 7 to metadata.json hoping that will trigger acceptance tests.
Remove RHEL6 from metadata.json, that OS version is EOL

@treydock
Copy link
Contributor Author

Ugh, the failures are a long standing issue I've run into where systemd processes running inside a Docker container will throw errors on startup if they run as someone other than root due to some weirdness with cgroups inside container and what systemd expects to see. With several of my modules I've had to hack things to force the daemon run as root in something that runs in a before(:suite) kind of thing.

@treydock
Copy link
Contributor Author

This is what I had to do for one of my modules:

https://github.com/treydock/puppet-munge/blob/5a801f82f162450927d08a11b05014d325a0a8a4/spec/spec_helper_acceptance_setup.rb#L2-L11

It's really ugly but it works to avoid this issue.

@treydock
Copy link
Contributor Author

@bastelfreak Thanks for the pointers, I made the necessary adjustments but still seeing failures. Not quite sure why things still failed, I see that beaker setfile was correct:

BEAKER_setfile: centos7-64{hostname=centos7-64.example.com,image=centos:7.6.1810}

The generated Dockerfile also used this specific version.

@bastelfreak
Copy link
Member

meh. We sometimes see strange systemd failures on docker containers, I've no clue what's the correct workaround here :(

@treydock
Copy link
Contributor Author

@bastelfreak I think I fixed the issues. The only way I could get this to work was force slapd on CentOS to run as root which required a few systemd hacks. It's extremely ugly but it's something I've had to do for other modules like ones using MongoDB for example.

Copy link
Member

@smortex smortex left a comment

Choose a reason for hiding this comment

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

Since the workaround is clearly indicated, I am fine with this!

Do you mind arranging the commits (there are a few tries & reverts)?

Maybe we can also add CentOS 8 and RedHat 8 in metadata.json (if it works, otherwise it will be in another PR 😋)?

@treydock
Copy link
Contributor Author

treydock commented Sep 7, 2021

@smortex I squashed the commits down.

Enabling CentOS/RHEL 8 isn't possible without significant changes. RHEL8 dropped openldap-servers packages so all they provide is openldap client packages. I tried to get EPEL to approve packaging just the openldap-servers packages but was denied since upstream RHEL provides conflicting client packages. To enable CentOS 8 / RHEL 8 support will require a new PR that is much more involved that pulls the openldap packages from non-OS and non-EPEL repos. There are a few sources that were mentioned to me in my EPEL request so can try those out.

@smortex smortex merged commit 40481a7 into voxpupuli:master Sep 7, 2021
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.

3 participants