Currently we put all the dbg packages into a separate top-level "COMPOSE_ID-dbg" directory. This is bad for a few reasons:
It's difficult for QE, developers, and users to discover the dbg packages for a compose
It's difficult to move the compose to another location on disk
The latest- symlink management is complicated and error-prone
The primary reason we do this is because we want to keep the ISO file size down.
The ISO is a 1:1 copy of what is in the "online" repositories. The ISO generation step is really simple: merfi iso just execs genisoimage -r -o outputdir topdir, where topdir is the top-level directory for the whole compose.
It would be better to make rhcephcompose work in stages here.
1) Generate an "ISO" tree of the variants's repos without dbg packages.
2) Generate an ISO file from that tree.
3) Add the dbg packages to the variants' repos.
4) Those are the "online" repos.
Currently we put all the dbg packages into a separate top-level
"COMPOSE_ID-dbg"
directory. This is bad for a few reasons:latest-
symlink management is complicated and error-proneThe primary reason we do this is because we want to keep the ISO file size down.
The ISO is a 1:1 copy of what is in the "online" repositories. The ISO generation step is really simple:
merfi iso
just execsgenisoimage -r -o outputdir topdir
, where topdir is the top-level directory for the whole compose.It would be better to make rhcephcompose work in stages here.
1) Generate an "ISO" tree of the variants's repos without dbg packages. 2) Generate an ISO file from that tree. 3) Add the dbg packages to the variants' repos. 4) Those are the "online" repos.
This will require exec'ing merfi as part of rhcephcompose https://github.com/red-hat-storage/rhcephcompose/issues/10
We should be able to do this work without drastically changing the compose directory tree layout we expose to the QE team.
RCM's pub job configuration may need to change to avoid handling the non-existing -dbg directory.