Bug 1589614 - Don't include dependencies for tasks in the kickstart with %packages by default
Summary: Don't include dependencies for tasks in the kickstart with %packages by default
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Beaker
Classification: Retired
Component: general
Version: 25
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: 26.0
Assignee: Dan Callaghan
QA Contact: Dan Callaghan
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-06-11 01:11 UTC by Roman Joost
Modified: 2018-10-08 02:16 UTC (History)
3 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2018-10-08 02:16:57 UTC
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Beaker Project Gerrit 6211 0 None None None 2018-07-19 23:06:20 UTC
Red Hat Bugzilla 1589610 0 urgent CLOSED Make restraint the default harness for Fedora 29, RHEL8, and later 2021-02-22 00:41:40 UTC

Internal Links: 1589610

Description Roman Joost 2018-06-11 01:11:46 UTC
Description of problem:

Currently all tasks are build as RPMs in Beaker. The dependencies are installed by anaconda with filling the %packages directive in the kickstart file.

Restraint goes a different way. Since it is possible to load tasks from git repositories, there is no inherited meta data which declares dependencies. Instead these dependencies are declared by the task metadata[1] and installed before the task is executed.

With our switch to restraint by default in Bug 1589610, Beaker will now install dependencies with anaconda during provisioning time and again when restraint executes the task. This can introduce unnecessary problems (e.g. if anaconda picks different versions than restraint would pick after the system is provisioned).

With this bug, we want to:

a) remove the ability that the kickstart is pre-filling dependencies in %packages by default
b) introduce a new ks_meta variable for the user to opt-in for Beaker pre-filling dependencies in the kickstart file under %packages

[1] -https://restraint.readthedocs.io/en/latest/tasks.html#metadata

Comment 1 Roman Joost 2018-06-11 06:27:56 UTC
The following bugs include some insight into problems we've discovered earlier and which can be fixed by implementing this RFE:

https://bugzilla.redhat.com/show_bug.cgi?id=472740
https://bugzilla.redhat.com/show_bug.cgi?id=577796
https://bugzilla.redhat.com/show_bug.cgi?id=651828

Comment 2 Dan Callaghan 2018-07-20 01:23:31 UTC
Specifically I think the expected behaviour should be:

"install_task_requires": a new ksmeta var which controls whether task requirements are included in kickstart %packages

RHEL8+ and Fedora 29+: "install_task_requires" is *not* defined by default => let Restraint install task requirements instead of Anaconda (Restraint will be the default harness)

older distros: "install_task_requires" *is* defined by default (Beah is still the default harness so it needs the old behaviour)

People can thus always override install_task_requires to define it or un-define it if the default does not suit them. But it means if you don't know or care about any of these ksmeta variables, the defaults will work out of the box for you.

Comment 6 Dan Callaghan 2018-10-08 02:16:57 UTC
Beaker 26.0 has been released.


Note You need to log in before you can comment on or make changes to this bug.