we briefly discussed this in a smaller group, but we’d like to revisit possibility of merging foreman-tasks into the core. It was discussed in the past and got support, but we ended up reverting the change, due to packaging issues. So this thread is created to get the feedback and find any concerns early, before the any effort is invested.
Summary of the reasons for the merge:
- many plugins depend on it, katello, REX, ansible, salt, chef, scc_manager, wreckingball, foreman_template_tasks
- it’s quite stable, without breaking changes, the main dependency (dynflow) is already a dependency of core
- the list of runtime dependencies is not big - dynflow (already a dependency), foreman-tasks-core (depends on dynflow only), get_process_mem (requires ffi, already in), parse_cron (no deps), sinatra (this one can raise eyebrow, it’s used by dynflow console, we already have it pacakged in SCL for proxy)
- we’d have mgmt console for active job tasks we already spawn on background, more cron based tasks could be converted and monitored/managed (audits expiration, config reports cleanup etc)
I think it shouldn’t be much work if we decide to merge it in as is. Meaning we’d keep the namespace for example. We should only modify the plugin registration from engine.rb to use native Foreman definitions.
Is there something else people would like to see changed before the merge? E.g. changes in API, like renaming recurring logics? Is there any concern with the merge in general?
Thanks for any feedback!