distro: switch liveImagePipelines to use GenImage*Stages
Use the new `GenImage{Prepare,Finish}Stages` in all liveImagePipelines
methods. This should allow us to handle partition tables with LUKS2 and
LVM2 transparently. Since none of the existing layouts contain any of
those, nothing should currently change.
Co-Authored-By: Achilleas Koutsou <achilleas@koutsou.net>
This commit is contained in:
parent
85e2a53606
commit
4a8cf5e4c4
4 changed files with 30 additions and 24 deletions
|
|
@ -1222,12 +1222,7 @@ func liveImagePipeline(inputPipelineName string, outputFilename string, pt *disk
|
|||
p.Name = "image"
|
||||
p.Build = "name:build"
|
||||
|
||||
p.AddStage(osbuild.NewTruncateStage(&osbuild.TruncateStageOptions{Filename: outputFilename, Size: fmt.Sprintf("%d", pt.Size)}))
|
||||
sfOptions := sfdiskStageOptions(pt)
|
||||
loopback := osbuild.NewLoopbackDevice(&osbuild.LoopbackDeviceOptions{Filename: outputFilename})
|
||||
p.AddStage(osbuild.NewSfdiskStage(sfOptions, loopback))
|
||||
|
||||
for _, stage := range osbuild.GenMkfsStages(pt, loopback) {
|
||||
for _, stage := range osbuild.GenImagePrepareStages(pt, outputFilename) {
|
||||
p.AddStage(stage)
|
||||
}
|
||||
|
||||
|
|
@ -1235,6 +1230,12 @@ func liveImagePipeline(inputPipelineName string, outputFilename string, pt *disk
|
|||
copyOptions, copyDevices, copyMounts := osbuild.GenCopyFSTreeOptions(inputName, inputPipelineName, outputFilename, pt)
|
||||
copyInputs := osbuild.NewCopyStagePipelineTreeInputs(inputName, inputPipelineName)
|
||||
p.AddStage(osbuild.NewCopyStage(copyOptions, copyInputs, copyDevices, copyMounts))
|
||||
|
||||
for _, stage := range osbuild.GenImageFinishStages(pt, outputFilename) {
|
||||
p.AddStage(stage)
|
||||
}
|
||||
|
||||
loopback := osbuild.NewLoopbackDevice(&osbuild.LoopbackDeviceOptions{Filename: outputFilename})
|
||||
p.AddStage(bootloaderInstStage(outputFilename, pt, arch, kernelVer, copyDevices, copyMounts, loopback))
|
||||
return p
|
||||
}
|
||||
|
|
|
|||
|
|
@ -946,12 +946,7 @@ func liveImagePipeline(inputPipelineName string, outputFilename string, pt *disk
|
|||
p.Name = "image"
|
||||
p.Build = "name:build"
|
||||
|
||||
p.AddStage(osbuild.NewTruncateStage(&osbuild.TruncateStageOptions{Filename: outputFilename, Size: fmt.Sprintf("%d", pt.Size)}))
|
||||
sfOptions := sfdiskStageOptions(pt)
|
||||
loopback := osbuild.NewLoopbackDevice(&osbuild.LoopbackDeviceOptions{Filename: outputFilename})
|
||||
p.AddStage(osbuild.NewSfdiskStage(sfOptions, loopback))
|
||||
|
||||
for _, stage := range osbuild.GenMkfsStages(pt, loopback) {
|
||||
for _, stage := range osbuild.GenImagePrepareStages(pt, outputFilename) {
|
||||
p.AddStage(stage)
|
||||
}
|
||||
|
||||
|
|
@ -959,7 +954,14 @@ func liveImagePipeline(inputPipelineName string, outputFilename string, pt *disk
|
|||
copyOptions, copyDevices, copyMounts := osbuild.GenCopyFSTreeOptions(inputName, inputPipelineName, outputFilename, pt)
|
||||
copyInputs := osbuild.NewCopyStagePipelineTreeInputs(inputName, inputPipelineName)
|
||||
p.AddStage(osbuild.NewCopyStage(copyOptions, copyInputs, copyDevices, copyMounts))
|
||||
|
||||
for _, stage := range osbuild.GenImageFinishStages(pt, outputFilename) {
|
||||
p.AddStage(stage)
|
||||
}
|
||||
|
||||
loopback := osbuild.NewLoopbackDevice(&osbuild.LoopbackDeviceOptions{Filename: outputFilename})
|
||||
p.AddStage(bootloaderInstStage(outputFilename, pt, arch, kernelVer, copyDevices, copyMounts, loopback))
|
||||
|
||||
return p
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -946,12 +946,7 @@ func liveImagePipeline(inputPipelineName string, outputFilename string, pt *disk
|
|||
p.Name = "image"
|
||||
p.Build = "name:build"
|
||||
|
||||
p.AddStage(osbuild.NewTruncateStage(&osbuild.TruncateStageOptions{Filename: outputFilename, Size: fmt.Sprintf("%d", pt.Size)}))
|
||||
sfOptions := sfdiskStageOptions(pt)
|
||||
loopback := osbuild.NewLoopbackDevice(&osbuild.LoopbackDeviceOptions{Filename: outputFilename})
|
||||
p.AddStage(osbuild.NewSfdiskStage(sfOptions, loopback))
|
||||
|
||||
for _, stage := range osbuild.GenMkfsStages(pt, loopback) {
|
||||
for _, stage := range osbuild.GenImagePrepareStages(pt, outputFilename) {
|
||||
p.AddStage(stage)
|
||||
}
|
||||
|
||||
|
|
@ -959,6 +954,12 @@ func liveImagePipeline(inputPipelineName string, outputFilename string, pt *disk
|
|||
copyOptions, copyDevices, copyMounts := osbuild.GenCopyFSTreeOptions(inputName, inputPipelineName, outputFilename, pt)
|
||||
copyInputs := osbuild.NewCopyStagePipelineTreeInputs(inputName, inputPipelineName)
|
||||
p.AddStage(osbuild.NewCopyStage(copyOptions, copyInputs, copyDevices, copyMounts))
|
||||
|
||||
for _, stage := range osbuild.GenImageFinishStages(pt, outputFilename) {
|
||||
p.AddStage(stage)
|
||||
}
|
||||
|
||||
loopback := osbuild.NewLoopbackDevice(&osbuild.LoopbackDeviceOptions{Filename: outputFilename})
|
||||
p.AddStage(bootloaderInstStage(outputFilename, pt, arch, kernelVer, copyDevices, copyMounts, loopback))
|
||||
return p
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1037,12 +1037,7 @@ func liveImagePipeline(inputPipelineName string, outputFilename string, pt *disk
|
|||
p.Name = "image"
|
||||
p.Build = "name:build"
|
||||
|
||||
p.AddStage(osbuild.NewTruncateStage(&osbuild.TruncateStageOptions{Filename: outputFilename, Size: fmt.Sprintf("%d", pt.Size)}))
|
||||
sfOptions := sfdiskStageOptions(pt)
|
||||
loopback := osbuild.NewLoopbackDevice(&osbuild.LoopbackDeviceOptions{Filename: outputFilename})
|
||||
p.AddStage(osbuild.NewSfdiskStage(sfOptions, loopback))
|
||||
|
||||
for _, stage := range osbuild.GenMkfsStages(pt, loopback) {
|
||||
for _, stage := range osbuild.GenImagePrepareStages(pt, outputFilename) {
|
||||
p.AddStage(stage)
|
||||
}
|
||||
|
||||
|
|
@ -1050,7 +1045,14 @@ func liveImagePipeline(inputPipelineName string, outputFilename string, pt *disk
|
|||
copyOptions, copyDevices, copyMounts := osbuild.GenCopyFSTreeOptions(inputName, inputPipelineName, outputFilename, pt)
|
||||
copyInputs := osbuild.NewCopyStagePipelineTreeInputs(inputName, inputPipelineName)
|
||||
p.AddStage(osbuild.NewCopyStage(copyOptions, copyInputs, copyDevices, copyMounts))
|
||||
|
||||
loopback := osbuild.NewLoopbackDevice(&osbuild.LoopbackDeviceOptions{Filename: outputFilename})
|
||||
p.AddStage(bootloaderInstStage(outputFilename, pt, arch, kernelVer, copyDevices, copyMounts, loopback))
|
||||
|
||||
for _, stage := range osbuild.GenImageFinishStages(pt, outputFilename) {
|
||||
p.AddStage(stage)
|
||||
}
|
||||
|
||||
return p
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue