bootc-image-builder icon indicating copy to clipboard operation
bootc-image-builder copied to clipboard

Predictable artifact output paths

Open p5 opened this issue 11 months ago • 1 comments

It would be helpful for automation if the artifact output directories matches the inputs provided to BIB.

Current:

./output/**qcow2**/disk.qcow2 		// --type **qcow2**
./output/**image**/disk.raw 		// --type **raw**
./output/**bootiso**/install.iso 	// --type **iso**
./output/**bootiso**/install.iso 	// --type **anaconda-iso**

Proposed:

./output/**qcow2**/disk.qcow2 			// --type **qcow2**
./output/**raw**/disk.raw 				// --type **raw**
./output/**iso**/install.iso 			// --type **iso**
./output/**anaconda-iso**/install.iso 	// --type **anaconda-iso**

When building for multiple types, it's difficult to know which artifact matches to which type. I started baking in maps from the types to output directories, but things got a lot more confusing when I found out iso and anaconda-iso used the same output locations.

My aim here is to have a script which runs BIB with multiple types, then outputs information about each artifact. "You have requested a qcow2 and raw image. The qcow2 image can be found here, and the raw image can be found here".

This isn't something that can't be worked around, but it would be a nice UX improvement.

There's probably some reasons why these are structured this way that I am unaware of, so I'm happy for this to be closed as "Won't fix" if this is the case.

p5 avatar Jan 12 '25 15:01 p5

Thanks! Yeah, we would like to have a more predictable pattern here and also to provide the user with more control over the output names/directories. Part of the prerequisite work is happening in https://github.com/osbuild/images/pull/1039 (not strictly needed for your proposal though), parts need to happen in osbuild but it is on our radar :)

mvo5 avatar Jan 13 '25 07:01 mvo5