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

Drop EL7 support #1061

Merged
merged 1 commit into from
Jul 8, 2022
Merged

Drop EL7 support #1061

merged 1 commit into from
Jul 8, 2022

Conversation

ehelms
Copy link
Member

@ehelms ehelms commented Jun 7, 2022

No description provided.

@jhoblitt
Copy link
Contributor

jhoblitt commented Jun 7, 2022

Please don't drop EL7 yet... I'm still working on migrating my production foreman deployments to EL8.

@ehelms
Copy link
Member Author

ehelms commented Jun 8, 2022

Please don't drop EL7 yet... I'm still working on migrating my production foreman deployments to EL8

Can you share your timeline? We've been communicating this drop [1] and timeline [2].

[1] https://community.theforeman.org/t/deprecation-plans-for-foreman-on-el7-debian-10-and-ubuntu-18-04/25008
[2] https://community.theforeman.org/t/the-el7-deprecation-checklist/28041/4

A release of this module will exist with continued EL7 support. This drop will affect the main branch of this module and the nightly Foreman ecosystem. As we remove EL7 nightly repositories this module will be broken if we do not drop the EL7 support from the module itself.

@alexjfisher
Copy link
Contributor

@ehelms Any chance of getting a release out that includes @jhoblitt 's #1054 before EL7 support is removed?

@ehelms
Copy link
Member Author

ehelms commented Jun 8, 2022

@ehelms Any chance of getting a release out that includes @jhoblitt 's #1054 before EL7 support is removed?

Aye, we can do that.

@ehelms
Copy link
Member Author

ehelms commented Jun 22, 2022

@alexjfisher @jhoblitt the requested release is available and we can cut future ones if needed https://forge.puppet.com/modules/theforeman/foreman/20.2.0

Copy link
Member

@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.

I only looked at the actual code and currently I'm not answering the "should we drop it now or keep support in the module for a while" question.

}
'Debian': {
$_hammer_plugin_prefix = 'ruby-hammer-cli-'
}
'Linux': {
case $facts['os']['name'] {
'Amazon': {
$_hammer_plugin_prefix = 'tfm-rubygem-hammer_cli_'
}
default: {
Copy link
Member

Choose a reason for hiding this comment

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

This is now the only value. Perhaps just drop the entire Linux OS family?

$_plugin_prefix = 'tfm-rubygem-foreman_'
$configure_scl_repo = true
$user_shell = '/sbin/nologin'
}
default: {
Copy link
Member

Choose a reason for hiding this comment

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

Also here you can probably drop the entire Linux OS family branch.

} else {
$oauth_package = 'rubygem-oauth'
}
}
default: {
Copy link
Member

Choose a reason for hiding this comment

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

And here

@@ -1,11 +1,6 @@
---
Copy link
Member

Choose a reason for hiding this comment

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

This whole file can be dropped: it's only for EL7.

@@ -8,7 +8,6 @@
case $facts['os']['family'] {
'RedHat', 'Linux': {
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
'RedHat', 'Linux': {
'RedHat': {

Comment on lines 10 to 13
$yumcode = $facts['os']['name'] ? {
'Amazon' => 'el7',
'Fedora' => "f${facts['os']['release']['major']}",
default => "el${facts['os']['release']['major']}",
}
Copy link
Member

Choose a reason for hiding this comment

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

We haven't had Fedora releases for a long time. Simplify it to $yumcode = "el${facts['os']['release']['major']}" perhaps? Or even inline it in the foreman::repos::yum declaration a few lines below.

spec/spec_helper_acceptance.rb Show resolved Hide resolved
@jhoblitt
Copy link
Contributor

@ehelms I had hoped to migrate to EL8 in the Q1 of the CY... I am in the process of migrating my production deployments to Foreman 3.2 and increasing the level of puppet management of foreman itself. Foreman 2 -> 3 required some minor template changes, which means having to audit and get on top of per installation template sprawl. The next step is to validate that the ~110 puppet modules in my production env will work on EL8. At least as of a few weeks ago, there were still major puppet modules without a release that supports AlmaLinux/Rocky. The uncertainty over centos 8 caused may organizations to delay EL7 -> EL8 migration and I think that has resulted in puppet modules being slow to gain support for new members of the EL family. The final major hurdle is testing if an place upgrade with leapp is practical for a foreman deployment or if it needs to be a from scratch redeployment -- either operation requires careful planning as foreman is managing DNS and DHCP.

Practically, I think I am at least a month away from migrating my foreman deployments onto EL8 and I wouldn't be surprised if it ended up being 2-3 months.

@ehelms
Copy link
Member Author

ehelms commented Jun 22, 2022

@jhoblitt We can continue to help support any updates you might need through 20.X releases through stable branches but due to the timelines and broader community the master branch of puppet-foreman will need to drop EL7. Sorry if this inconveniences you but as I said if you need anything we can do it through a 20.X release on a stable branch.

@ehelms ehelms marked this pull request as ready for review June 22, 2022 20:30
@ehelms
Copy link
Member Author

ehelms commented Jun 22, 2022

Updated based on reviews and rebased it on top of latest updates, also moved this out of draft status.

@ehelms ehelms force-pushed the drop-el7 branch 2 times, most recently from d1e3702 to f817b5b Compare June 28, 2022 17:01
@ehelms
Copy link
Member Author

ehelms commented Jun 28, 2022

The nightly pipelines have been updated to no longer test EL7, that means that this PR is both ready and should be merged soon to prevent PRs from failing on EL7. While the nightly repositories have not yet been removed, tests could start failing at any moment.

@ehelms
Copy link
Member Author

ehelms commented Jul 7, 2022

Shall we take in this change given EL7 has been dropped from nightly and thus will be for Foreman 3.4?

Copy link
Member

@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.

@ehelms
Copy link
Member Author

ehelms commented Jul 8, 2022

Let me know thoughts on that wording.

@ehelms ehelms merged commit 95f2b4d into theforeman:master Jul 8, 2022
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.

5 participants