We’re trying to round up all of the unmaintained plugins that people actually use to ensure that your favorite plugin doesn’t get left behind. I took a look at all of the plugins listed here (Foreman :: Plugin Manuals) and here (List of Plugins - Foreman) and checked if they’ve been updated within the past 6 months or so.
The plugins that appeared to be unmaintained are listed below. Please let us know if any of the plugins you use are on that list. Likewise, let us know if there are any plugins missing from this list. If you’re a maintainer, let us know if you’re still keeping an eye on your plugin(s) in this list.
Chef
Unmaintained
Default Host Group
Unmaintained? 8 months since last commit
Column View
Unmaintained
Default Host Group
Unmaintained? 8 months since last commit
Kubevirt
Unmaintained? Last commit was in 2021
Memcache
Unmaintained
Setup
Unmaintained? 8 months since last commit
Digital Ocean
Unmaintained
Docker (not to be confused with Katello’s Docker content type)
I think this is now redundant and we should archive it. There’s Caching with Rails: An Overview — Ruby on Rails Guides and we have built in support for Redis caching (using the foreman-redis package; there’s installer support for this).
While we have not quite prioritized it to the point of putting major effort into revitalizing this plugin, we do have our eyes on it. I would say it is definitely on our internal wish list to revitalize it. We do have some internal test systems with the plugin installed and an attached proxmox compute resource.
I did a further bit of playing with this (since I also have an interest). Here’s a script that retrieves the repo and determines if it’s archived. If not, it retrieves the last commit. That’s all written back to the original file.
As a GH admin I can also see which teams should be attached to Foreman repos and if they have members. That might be a good next step.
I lack the knowledge (and time) to do more than triage pullrequests, merge them and create a release for the Foreman plugin. Timo is also not very active here anymore.
For the Smart Proxy plugin I can do much more.
So it depends on the level of maintenance needed if you want it to list unmaintained or maintained.
I think as long there is someone who cares for the plugin to work, and can either do the needed fixes or at least notice breakage and ask for help, I’ll call that maintained.
So I took a stab at listing what the Foreman Installer’s Puppet modules can manage and also checked what the installer actually exposes. The result is: https://ekohl.github.io/foreman-plugin-overview/
The source is:
From that I do see some TODOs and things we should drop.
For my own sanity, I actually want to expand on that to create more context. For example, are there acceptance tests in the Puppet modules (which can help prove a plugin at least installs or is broken).
From the list, we have foreman_expire_hosts installed.
I am also missing the hooks plugins on the list. While I know foreman_hooks is deprecated and we are currently working on migrating our hooks to webhooks/shellhooks, we still have it installed. Accordingly, the webhooks plugin seems to be missing in the list (and shellhooks, in case you are also looking for smart-proxy plugins).
The Puppet plugin is also missing (probably due to it’s history). @ekohl’s list seems to include all of those, though.
I’ve released foreman_supervisor_authority 0.1.0 which should be compatible with current Foreman releases. The new release also needs elastic-apm >= 4.0 due to changes in Ruby / the APM agent.
I’ve tried to build all the dependencies locally but I’m stuck building llhttp-ffi. I suspect it’s because this gem is building native extensions.
Note: yes, I’m still building for/with SCL. All the other gems (http, http-form_data, ffi-compiler) were build just fine.
LoadError: cannot load such file -- ffi_c
/opt/theforeman/tfm/root/usr/share/gems/gems/ffi-1.12.2/lib/ffi.rb:6:in `rescue in <top (required)>'
/opt/theforeman/tfm/root/usr/share/gems/gems/ffi-1.12.2/lib/ffi.rb:3:in `<top (required)>'
/opt/theforeman/tfm/root/usr/share/gems/gems/ffi-compiler-1.0.1/lib/ffi-compiler/compile_task.rb:4:in `<top (required)>'
/home/rpmbuild/rpmbuild/BUILD/llhttp-ffi-0.4.0/opt/theforeman/tfm/root/usr/share/gems/gems/llhttp-ffi-0.4.0/ext/Rakefile:3:in `<top (required)>'
/opt/rh/rh-ruby27/root/usr/share/gems/gems/rake-13.0.1/exe/rake:27:in `<main>'
Caused by:
LoadError: cannot load such file -- 2.7/ffi_c
/opt/theforeman/tfm/root/usr/share/gems/gems/ffi-1.12.2/lib/ffi.rb:4:in `<top (required)>'
/opt/theforeman/tfm/root/usr/share/gems/gems/ffi-compiler-1.0.1/lib/ffi-compiler/compile_task.rb:4:in `<top (required)>'
/home/rpmbuild/rpmbuild/BUILD/llhttp-ffi-0.4.0/opt/theforeman/tfm/root/usr/share/gems/gems/llhttp-ffi-0.4.0/ext/Rakefile:3:in `<top (required)>'
/opt/rh/rh-ruby27/root/usr/share/gems/gems/rake-13.0.1/exe/rake:27:in `<main>'
Caused by:
LoadError: cannot load such file -- ffi-compiler/compile_task
/home/rpmbuild/rpmbuild/BUILD/llhttp-ffi-0.4.0/opt/theforeman/tfm/root/usr/share/gems/gems/llhttp-ffi-0.4.0/ext/Rakefile:3:in `<top (required)>'
/opt/rh/rh-ruby27/root/usr/share/gems/gems/rake-13.0.1/exe/rake:27:in `<main>'
(See full trace by running task with --trace)
ERROR: Error installing llhttp-ffi-0.4.0.gem:
ERROR: Failed to build gem native extension.
current directory: /home/rpmbuild/rpmbuild/BUILD/llhttp-ffi-0.4.0/opt/theforeman/tfm/root/usr/share/gems/gems/llhttp-ffi-0.4.0/ext
/opt/rh/rh-ruby27/root/usr/bin/ruby -I/opt/rh/rh-ruby27/root/usr/share/rubygems/rubygems -rrubygems /opt/rh/rh-ruby27/root/usr/share/gems/gems/rake-13.0.1/exe/rake RUBYARCHDIR\=/home/rpmbuild/rpmbuild/BUILD/llhttp-ffi-0.4.0/opt/theforeman/tfm/root/usr/lib64/gems/ruby/llhttp-ffi-0.4.0 RUBYLIBDIR\=/home/rpmbuild/rpmbuild/BUILD/llhttp-ffi-0.4.0/opt/theforeman/tfm/root/usr/lib64/gems/ruby/llhttp-ffi-0.4.0
Building has failed. See above output for more information on the failure.
rake failed, exit code 1
Do you have any idea on how to solve this problem?