#752 Scratch builds of modules
Closed: Fixed 4 years ago by merlinm. Opened 6 years ago by jkaluza.

People just need a way how to do scratch builds of modules. It means the module builds which would be garbage collected after few days. My ideas how to do that:

  • Add --scratch to rpkg module-build command. That would send "scratch": True to MBS.
  • Add "scratch" column to builds table and set it according to the module build request handled in views.py.
  • Change the ModuleBuild.json() to include scratch record.
  • Change the reuse_component code in utils.py to ignore module builds with scratch=True.
  • Build the module as usually, but mark all the components built as part of scratch-build with some scratch_module=True extra_option. Note that this does not mean the component should be scratch-builds, they would be normal real build, but just marked with "scratch_module=True` flag.
  • InKojiContentGenerator.py, ignore the scratch module builds completely or mark then with scratch_module=True flag too.
  • In pdc-updater project, do not set active=True in PDC for modules with scratch=True.
  • Optionally, add scratch column to unreleasedvariants in PDC and set it by the pdc-updater.
  • Change the producer.py to find all builds with scratch=True and if they are older than certain time, untag all the components from its build.koji_tag and also build.koji_tag + "-build". Also remove these two koji_tags from Koji.

Since this is touching multiple projects, if we decide this is a way how to implement this, we should create separate tickets for other projects like rpkg, pdc-updater and pdc.

Hm, yes. We are +1 to this.

@mikeb thinks that we should call the value something other than scratch, just because that is a loaded term and people may end up confused by it (since the rpm builds will still be real builds).

How about --temporary for the rpkg argument and calling them temporary or module_temporary everywhere?

A big +1 as a user. I will be much less likely to start using modules seriously if I can't do scratch build locally and on the build servers.

FWIW, you can do local builds today. The big missing piece here are scratch builds in the mbs/koji servers.

QE is missing this scratch build feature.

@merlinm is in the process of writing this feature in #1136.

This was implemented by #1136, which has been merged and released. It was deployed to the Fedora MBS infrastructure this week.

Metadata Update from @merlinm:
- Issue close_status updated to: Fixed
- Issue status updated to: Closed (was: Open)

4 years ago

Login to comment on this ticket.

Metadata