manifest: use call-by-reference in pipeline interface
This allows interface methods to modify the state of the pipeline objects. We will use this in subsequent patches.
This commit is contained in:
parent
d0fa58bb2d
commit
0743eb2f81
14 changed files with 73 additions and 73 deletions
|
|
@ -16,16 +16,16 @@ func qcow2Pipelines(t *imageType, customizations *blueprint.Customizations, opti
|
|||
buildPipeline := manifest.NewBuildPipeline(t.arch.distro.runner, repos, packageSetSpecs[buildPkgsKey])
|
||||
pipelines = append(pipelines, buildPipeline)
|
||||
|
||||
treePipeline, err := osPipeline(&buildPipeline, t, repos, packageSetSpecs[osPkgsKey], customizations, options, rng)
|
||||
treePipeline, err := osPipeline(buildPipeline, t, repos, packageSetSpecs[osPkgsKey], customizations, options, rng)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
pipelines = append(pipelines, treePipeline)
|
||||
|
||||
imagePipeline := manifest.NewLiveImgPipeline(&buildPipeline, &treePipeline, "disk.img")
|
||||
imagePipeline := manifest.NewLiveImgPipeline(buildPipeline, treePipeline, "disk.img")
|
||||
pipelines = append(pipelines, imagePipeline)
|
||||
|
||||
qcow2Pipeline := manifest.NewQCOW2Pipeline(&buildPipeline, &imagePipeline, t.filename)
|
||||
qcow2Pipeline := manifest.NewQCOW2Pipeline(buildPipeline, imagePipeline, t.filename)
|
||||
qcow2Pipeline.Compat = "1.1"
|
||||
pipelines = append(pipelines, qcow2Pipeline)
|
||||
|
||||
|
|
@ -38,16 +38,16 @@ func vhdPipelines(t *imageType, customizations *blueprint.Customizations, option
|
|||
buildPipeline := manifest.NewBuildPipeline(t.arch.distro.runner, repos, packageSetSpecs[buildPkgsKey])
|
||||
pipelines = append(pipelines, buildPipeline)
|
||||
|
||||
treePipeline, err := osPipeline(&buildPipeline, t, repos, packageSetSpecs[osPkgsKey], customizations, options, rng)
|
||||
treePipeline, err := osPipeline(buildPipeline, t, repos, packageSetSpecs[osPkgsKey], customizations, options, rng)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
pipelines = append(pipelines, treePipeline)
|
||||
|
||||
imagePipeline := manifest.NewLiveImgPipeline(&buildPipeline, &treePipeline, "disk.img")
|
||||
imagePipeline := manifest.NewLiveImgPipeline(buildPipeline, treePipeline, "disk.img")
|
||||
pipelines = append(pipelines, imagePipeline)
|
||||
|
||||
vpcPipeline := manifest.NewVPCPipeline(&buildPipeline, &imagePipeline, t.filename)
|
||||
vpcPipeline := manifest.NewVPCPipeline(buildPipeline, imagePipeline, t.filename)
|
||||
pipelines = append(pipelines, vpcPipeline)
|
||||
return pipelines, nil
|
||||
}
|
||||
|
|
@ -58,16 +58,16 @@ func vmdkPipelines(t *imageType, customizations *blueprint.Customizations, optio
|
|||
buildPipeline := manifest.NewBuildPipeline(t.arch.distro.runner, repos, packageSetSpecs[buildPkgsKey])
|
||||
pipelines = append(pipelines, buildPipeline)
|
||||
|
||||
treePipeline, err := osPipeline(&buildPipeline, t, repos, packageSetSpecs[osPkgsKey], customizations, options, rng)
|
||||
treePipeline, err := osPipeline(buildPipeline, t, repos, packageSetSpecs[osPkgsKey], customizations, options, rng)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
pipelines = append(pipelines, treePipeline)
|
||||
|
||||
imagePipeline := manifest.NewLiveImgPipeline(&buildPipeline, &treePipeline, "disk.img")
|
||||
imagePipeline := manifest.NewLiveImgPipeline(buildPipeline, treePipeline, "disk.img")
|
||||
pipelines = append(pipelines, imagePipeline)
|
||||
|
||||
vmdkPipeline := manifest.NewVMDKPipeline(&buildPipeline, &imagePipeline, t.filename)
|
||||
vmdkPipeline := manifest.NewVMDKPipeline(buildPipeline, imagePipeline, t.filename)
|
||||
pipelines = append(pipelines, vmdkPipeline)
|
||||
return pipelines, nil
|
||||
}
|
||||
|
|
@ -78,16 +78,16 @@ func openstackPipelines(t *imageType, customizations *blueprint.Customizations,
|
|||
buildPipeline := manifest.NewBuildPipeline(t.arch.distro.runner, repos, packageSetSpecs[buildPkgsKey])
|
||||
pipelines = append(pipelines, buildPipeline)
|
||||
|
||||
treePipeline, err := osPipeline(&buildPipeline, t, repos, packageSetSpecs[osPkgsKey], customizations, options, rng)
|
||||
treePipeline, err := osPipeline(buildPipeline, t, repos, packageSetSpecs[osPkgsKey], customizations, options, rng)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
pipelines = append(pipelines, treePipeline)
|
||||
|
||||
imagePipeline := manifest.NewLiveImgPipeline(&buildPipeline, &treePipeline, "disk.img")
|
||||
imagePipeline := manifest.NewLiveImgPipeline(buildPipeline, treePipeline, "disk.img")
|
||||
pipelines = append(pipelines, imagePipeline)
|
||||
|
||||
qcow2Pipeline := manifest.NewQCOW2Pipeline(&buildPipeline, &imagePipeline, t.filename)
|
||||
qcow2Pipeline := manifest.NewQCOW2Pipeline(buildPipeline, imagePipeline, t.filename)
|
||||
pipelines = append(pipelines, qcow2Pipeline)
|
||||
return pipelines, nil
|
||||
}
|
||||
|
|
@ -100,13 +100,13 @@ func ec2CommonPipelines(t *imageType, customizations *blueprint.Customizations,
|
|||
buildPipeline := manifest.NewBuildPipeline(t.arch.distro.runner, repos, packageSetSpecs[buildPkgsKey])
|
||||
pipelines = append(pipelines, buildPipeline)
|
||||
|
||||
treePipeline, err := osPipeline(&buildPipeline, t, repos, packageSetSpecs[osPkgsKey], customizations, options, rng)
|
||||
treePipeline, err := osPipeline(buildPipeline, t, repos, packageSetSpecs[osPkgsKey], customizations, options, rng)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
pipelines = append(pipelines, treePipeline)
|
||||
|
||||
imagePipeline := manifest.NewLiveImgPipeline(&buildPipeline, &treePipeline, diskfile)
|
||||
imagePipeline := manifest.NewLiveImgPipeline(buildPipeline, treePipeline, diskfile)
|
||||
pipelines = append(pipelines, imagePipeline)
|
||||
return pipelines, nil
|
||||
}
|
||||
|
|
@ -126,22 +126,22 @@ func iotInstallerPipelines(t *imageType, customizations *blueprint.Customization
|
|||
d := t.arch.distro
|
||||
ksUsers := len(customizations.GetUsers())+len(customizations.GetGroups()) > 0
|
||||
|
||||
anacondaTreePipeline := anacondaTreePipeline(&buildPipeline, repos, installerPackages, t.Arch().Name(), d.product, d.osVersion, "IoT", ksUsers)
|
||||
isoTreePipeline := bootISOTreePipeline(&buildPipeline, &anacondaTreePipeline, options, d.vendor, d.isolabelTmpl, customizations.GetUsers(), customizations.GetGroups())
|
||||
isoPipeline := bootISOPipeline(&buildPipeline, &isoTreePipeline, t.Filename(), false)
|
||||
anacondaTreePipeline := anacondaTreePipeline(buildPipeline, repos, installerPackages, t.Arch().Name(), d.product, d.osVersion, "IoT", ksUsers)
|
||||
isoTreePipeline := bootISOTreePipeline(buildPipeline, anacondaTreePipeline, options, d.vendor, d.isolabelTmpl, customizations.GetUsers(), customizations.GetGroups())
|
||||
isoPipeline := bootISOPipeline(buildPipeline, isoTreePipeline, t.Filename(), false)
|
||||
|
||||
return append(pipelines, anacondaTreePipeline, isoTreePipeline, isoPipeline), nil
|
||||
}
|
||||
|
||||
func iotCorePipelines(t *imageType, customizations *blueprint.Customizations, options distro.ImageOptions, repos []rpmmd.RepoConfig, packageSetSpecs map[string][]rpmmd.PackageSpec) (*manifest.BuildPipeline, *manifest.OSPipeline, *manifest.OSTreeCommitPipeline, error) {
|
||||
buildPipeline := manifest.NewBuildPipeline(t.arch.distro.runner, repos, packageSetSpecs[buildPkgsKey])
|
||||
treePipeline, err := osPipeline(&buildPipeline, t, repos, packageSetSpecs[osPkgsKey], customizations, options, nil)
|
||||
treePipeline, err := osPipeline(buildPipeline, t, repos, packageSetSpecs[osPkgsKey], customizations, options, nil)
|
||||
if err != nil {
|
||||
return nil, nil, nil, err
|
||||
}
|
||||
commitPipeline := ostreeCommitPipeline(&buildPipeline, &treePipeline, options, t.arch.distro.osVersion)
|
||||
commitPipeline := ostreeCommitPipeline(buildPipeline, treePipeline, options, t.arch.distro.osVersion)
|
||||
|
||||
return &buildPipeline, &treePipeline, &commitPipeline, nil
|
||||
return buildPipeline, treePipeline, commitPipeline, nil
|
||||
}
|
||||
|
||||
func iotCommitPipelines(t *imageType, customizations *blueprint.Customizations, options distro.ImageOptions, repos []rpmmd.RepoConfig, packageSetSpecs map[string][]rpmmd.PackageSpec, rng *rand.Rand) ([]manifest.Pipeline, error) {
|
||||
|
|
@ -179,7 +179,7 @@ func osPipeline(buildPipeline *manifest.BuildPipeline,
|
|||
packages []rpmmd.PackageSpec,
|
||||
c *blueprint.Customizations,
|
||||
options distro.ImageOptions,
|
||||
rng *rand.Rand) (manifest.OSPipeline, error) {
|
||||
rng *rand.Rand) (*manifest.OSPipeline, error) {
|
||||
|
||||
imageConfig := t.getDefaultImageConfig()
|
||||
|
||||
|
|
@ -189,7 +189,7 @@ func osPipeline(buildPipeline *manifest.BuildPipeline,
|
|||
var err error
|
||||
pt, err = t.getPartitionTable(c.GetFilesystems(), options, rng)
|
||||
if err != nil {
|
||||
return manifest.OSPipeline{}, err
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -299,13 +299,13 @@ func osPipeline(buildPipeline *manifest.BuildPipeline,
|
|||
return pl, nil
|
||||
}
|
||||
|
||||
func ostreeCommitPipeline(buildPipeline *manifest.BuildPipeline, treePipeline *manifest.OSPipeline, options distro.ImageOptions, osVersion string) manifest.OSTreeCommitPipeline {
|
||||
func ostreeCommitPipeline(buildPipeline *manifest.BuildPipeline, treePipeline *manifest.OSPipeline, options distro.ImageOptions, osVersion string) *manifest.OSTreeCommitPipeline {
|
||||
p := manifest.NewOSTreeCommitPipeline(buildPipeline, treePipeline, options.OSTree.Ref)
|
||||
p.OSVersion = osVersion
|
||||
return p
|
||||
}
|
||||
|
||||
func containerTreePipeline(buildPipeline *manifest.BuildPipeline, commitPipeline *manifest.OSTreeCommitPipeline, repos []rpmmd.RepoConfig, packages []rpmmd.PackageSpec, options distro.ImageOptions, c *blueprint.Customizations, nginxConfigPath, listenPort string) manifest.OSTreeCommitServerTreePipeline {
|
||||
func containerTreePipeline(buildPipeline *manifest.BuildPipeline, commitPipeline *manifest.OSTreeCommitPipeline, repos []rpmmd.RepoConfig, packages []rpmmd.PackageSpec, options distro.ImageOptions, c *blueprint.Customizations, nginxConfigPath, listenPort string) *manifest.OSTreeCommitServerTreePipeline {
|
||||
p := manifest.NewOSTreeCommitServerTreePipeline(buildPipeline, repos, packages, commitPipeline, nginxConfigPath, listenPort)
|
||||
language, _ := c.GetPrimaryLocale()
|
||||
if language != nil {
|
||||
|
|
@ -314,14 +314,14 @@ func containerTreePipeline(buildPipeline *manifest.BuildPipeline, commitPipeline
|
|||
return p
|
||||
}
|
||||
|
||||
func containerPipeline(buildPipeline *manifest.BuildPipeline, treePipeline *manifest.BasePipeline, t *imageType, nginxConfigPath, listenPort string) manifest.OCIContainerPipeline {
|
||||
func containerPipeline(buildPipeline *manifest.BuildPipeline, treePipeline *manifest.BasePipeline, t *imageType, nginxConfigPath, listenPort string) *manifest.OCIContainerPipeline {
|
||||
p := manifest.NewOCIContainerPipeline(buildPipeline, treePipeline, t.Arch().Name(), t.Filename())
|
||||
p.Cmd = []string{"nginx", "-c", nginxConfigPath}
|
||||
p.ExposedPorts = []string{listenPort}
|
||||
return p
|
||||
}
|
||||
|
||||
func anacondaTreePipeline(buildPipeline *manifest.BuildPipeline, repos []rpmmd.RepoConfig, packages []rpmmd.PackageSpec, arch, product, osVersion, variant string, users bool) manifest.AnacondaPipeline {
|
||||
func anacondaTreePipeline(buildPipeline *manifest.BuildPipeline, repos []rpmmd.RepoConfig, packages []rpmmd.PackageSpec, arch, product, osVersion, variant string, users bool) *manifest.AnacondaPipeline {
|
||||
p := manifest.NewAnacondaPipeline(buildPipeline, repos, packages, "kernel", arch, product, osVersion)
|
||||
p.Users = users
|
||||
p.Variant = variant
|
||||
|
|
@ -329,7 +329,7 @@ func anacondaTreePipeline(buildPipeline *manifest.BuildPipeline, repos []rpmmd.R
|
|||
return p
|
||||
}
|
||||
|
||||
func bootISOTreePipeline(buildPipeline *manifest.BuildPipeline, anacondaPipeline *manifest.AnacondaPipeline, options distro.ImageOptions, vendor, isoLabelTempl string, users []blueprint.UserCustomization, groups []blueprint.GroupCustomization) manifest.ISOTreePipeline {
|
||||
func bootISOTreePipeline(buildPipeline *manifest.BuildPipeline, anacondaPipeline *manifest.AnacondaPipeline, options distro.ImageOptions, vendor, isoLabelTempl string, users []blueprint.UserCustomization, groups []blueprint.GroupCustomization) *manifest.ISOTreePipeline {
|
||||
p := manifest.NewISOTreePipeline(buildPipeline, anacondaPipeline, options.OSTree.Parent, options.OSTree.URL, options.OSTree.Ref, isoLabelTempl)
|
||||
p.Release = "202010217.n.0"
|
||||
p.OSName = "fedora"
|
||||
|
|
@ -340,7 +340,7 @@ func bootISOTreePipeline(buildPipeline *manifest.BuildPipeline, anacondaPipeline
|
|||
return p
|
||||
}
|
||||
|
||||
func bootISOPipeline(buildPipeline *manifest.BuildPipeline, treePipeline *manifest.ISOTreePipeline, filename string, isolinux bool) manifest.ISOPipeline {
|
||||
func bootISOPipeline(buildPipeline *manifest.BuildPipeline, treePipeline *manifest.ISOTreePipeline, filename string, isolinux bool) *manifest.ISOPipeline {
|
||||
p := manifest.NewISOPipeline(buildPipeline, treePipeline, filename)
|
||||
p.ISOLinux = isolinux
|
||||
return p
|
||||
|
|
|
|||
|
|
@ -42,9 +42,9 @@ func NewAnacondaPipeline(buildPipeline *BuildPipeline,
|
|||
kernelName,
|
||||
arch,
|
||||
product,
|
||||
version string) AnacondaPipeline {
|
||||
version string) *AnacondaPipeline {
|
||||
kernelVer := rpmmd.GetVerStrFromPackageSpecListPanic(packages, kernelName)
|
||||
return AnacondaPipeline{
|
||||
return &AnacondaPipeline{
|
||||
BasePipeline: NewBasePipeline("anaconda-tree", buildPipeline, nil),
|
||||
repos: repos,
|
||||
packageSpecs: packages,
|
||||
|
|
@ -55,11 +55,11 @@ func NewAnacondaPipeline(buildPipeline *BuildPipeline,
|
|||
}
|
||||
}
|
||||
|
||||
func (p AnacondaPipeline) getPackageSpecs() []rpmmd.PackageSpec {
|
||||
func (p *AnacondaPipeline) getPackageSpecs() []rpmmd.PackageSpec {
|
||||
return p.packageSpecs
|
||||
}
|
||||
|
||||
func (p AnacondaPipeline) serialize() osbuild2.Pipeline {
|
||||
func (p *AnacondaPipeline) serialize() osbuild2.Pipeline {
|
||||
pipeline := p.BasePipeline.serialize()
|
||||
|
||||
pipeline.AddStage(osbuild2.NewRPMStage(osbuild2.NewRPMStageOptions(p.repos), osbuild2.NewRpmStageSourceFilesInputs(p.packageSpecs)))
|
||||
|
|
|
|||
|
|
@ -21,8 +21,8 @@ type BuildPipeline struct {
|
|||
|
||||
// NewBuildPipeline creates a new build pipeline from the repositories in repos
|
||||
// and the specified packages.
|
||||
func NewBuildPipeline(runner string, repos []rpmmd.RepoConfig, packages []rpmmd.PackageSpec) BuildPipeline {
|
||||
pipeline := BuildPipeline{
|
||||
func NewBuildPipeline(runner string, repos []rpmmd.RepoConfig, packages []rpmmd.PackageSpec) *BuildPipeline {
|
||||
pipeline := &BuildPipeline{
|
||||
BasePipeline: NewBasePipeline("build", nil, &runner),
|
||||
repos: repos,
|
||||
packageSpecs: packages,
|
||||
|
|
@ -30,11 +30,11 @@ func NewBuildPipeline(runner string, repos []rpmmd.RepoConfig, packages []rpmmd.
|
|||
return pipeline
|
||||
}
|
||||
|
||||
func (p BuildPipeline) getPackageSpecs() []rpmmd.PackageSpec {
|
||||
func (p *BuildPipeline) getPackageSpecs() []rpmmd.PackageSpec {
|
||||
return p.packageSpecs
|
||||
}
|
||||
|
||||
func (p BuildPipeline) serialize() osbuild2.Pipeline {
|
||||
func (p *BuildPipeline) serialize() osbuild2.Pipeline {
|
||||
pipeline := p.BasePipeline.serialize()
|
||||
|
||||
pipeline.AddStage(osbuild2.NewRPMStage(osbuild2.NewRPMStageOptions(p.repos), osbuild2.NewRpmStageSourceFilesInputs(p.packageSpecs)))
|
||||
|
|
|
|||
|
|
@ -16,15 +16,15 @@ type OSTreeCommitPipeline struct {
|
|||
// NewOSTreeCommitPipeline creates a new OSTree commit pipeline. The
|
||||
// treePipeline is the tree representing the content of the commit.
|
||||
// ref is the ref to create the commit under.
|
||||
func NewOSTreeCommitPipeline(buildPipeline *BuildPipeline, treePipeline *OSPipeline, ref string) OSTreeCommitPipeline {
|
||||
return OSTreeCommitPipeline{
|
||||
func NewOSTreeCommitPipeline(buildPipeline *BuildPipeline, treePipeline *OSPipeline, ref string) *OSTreeCommitPipeline {
|
||||
return &OSTreeCommitPipeline{
|
||||
BasePipeline: NewBasePipeline("ostree-commit", buildPipeline, nil),
|
||||
treePipeline: treePipeline,
|
||||
ref: ref,
|
||||
}
|
||||
}
|
||||
|
||||
func (p OSTreeCommitPipeline) serialize() osbuild2.Pipeline {
|
||||
func (p *OSTreeCommitPipeline) serialize() osbuild2.Pipeline {
|
||||
pipeline := p.BasePipeline.serialize()
|
||||
|
||||
pipeline.AddStage(osbuild2.NewOSTreeInitStage(&osbuild2.OSTreeInitStageOptions{Path: "/repo"}))
|
||||
|
|
|
|||
|
|
@ -32,8 +32,8 @@ func NewOSTreeCommitServerTreePipeline(buildPipeline *BuildPipeline,
|
|||
packageSpecs []rpmmd.PackageSpec,
|
||||
commitPipeline *OSTreeCommitPipeline,
|
||||
nginxConfigPath,
|
||||
listenPort string) OSTreeCommitServerTreePipeline {
|
||||
return OSTreeCommitServerTreePipeline{
|
||||
listenPort string) *OSTreeCommitServerTreePipeline {
|
||||
return &OSTreeCommitServerTreePipeline{
|
||||
BasePipeline: NewBasePipeline("container-tree", buildPipeline, nil),
|
||||
repos: repos,
|
||||
packageSpecs: packageSpecs,
|
||||
|
|
@ -44,11 +44,11 @@ func NewOSTreeCommitServerTreePipeline(buildPipeline *BuildPipeline,
|
|||
}
|
||||
}
|
||||
|
||||
func (p OSTreeCommitServerTreePipeline) getPackageSpecs() []rpmmd.PackageSpec {
|
||||
func (p *OSTreeCommitServerTreePipeline) getPackageSpecs() []rpmmd.PackageSpec {
|
||||
return p.packageSpecs
|
||||
}
|
||||
|
||||
func (p OSTreeCommitServerTreePipeline) serialize() osbuild2.Pipeline {
|
||||
func (p *OSTreeCommitServerTreePipeline) serialize() osbuild2.Pipeline {
|
||||
pipeline := p.BasePipeline.serialize()
|
||||
|
||||
pipeline.AddStage(osbuild2.NewRPMStage(osbuild2.NewRPMStageOptions(p.repos), osbuild2.NewRpmStageSourceFilesInputs(p.packageSpecs)))
|
||||
|
|
|
|||
|
|
@ -14,15 +14,15 @@ type ISOPipeline struct {
|
|||
filename string
|
||||
}
|
||||
|
||||
func NewISOPipeline(buildPipeline *BuildPipeline, treePipeline *ISOTreePipeline, filename string) ISOPipeline {
|
||||
return ISOPipeline{
|
||||
func NewISOPipeline(buildPipeline *BuildPipeline, treePipeline *ISOTreePipeline, filename string) *ISOPipeline {
|
||||
return &ISOPipeline{
|
||||
BasePipeline: NewBasePipeline("bootiso", buildPipeline, nil),
|
||||
treePipeline: treePipeline,
|
||||
filename: filename,
|
||||
}
|
||||
}
|
||||
|
||||
func (p ISOPipeline) serialize() osbuild2.Pipeline {
|
||||
func (p *ISOPipeline) serialize() osbuild2.Pipeline {
|
||||
pipeline := p.BasePipeline.serialize()
|
||||
|
||||
pipeline.AddStage(osbuild2.NewXorrisofsStage(xorrisofsStageOptions(p.filename, p.treePipeline.isoLabel, p.ISOLinux), osbuild2.NewXorrisofsStagePipelineTreeInputs(p.treePipeline.Name())))
|
||||
|
|
|
|||
|
|
@ -28,11 +28,11 @@ type ISOTreePipeline struct {
|
|||
osTreeRef string
|
||||
}
|
||||
|
||||
func NewISOTreePipeline(buildPipeline *BuildPipeline, anacondaPipeline *AnacondaPipeline, osTreeCommit, osTreeURL, osTreeRef, isoLabelTmpl string) ISOTreePipeline {
|
||||
func NewISOTreePipeline(buildPipeline *BuildPipeline, anacondaPipeline *AnacondaPipeline, osTreeCommit, osTreeURL, osTreeRef, isoLabelTmpl string) *ISOTreePipeline {
|
||||
// TODO: replace isoLabelTmpl with more high-level properties
|
||||
isoLabel := fmt.Sprintf(isoLabelTmpl, anacondaPipeline.arch)
|
||||
|
||||
return ISOTreePipeline{
|
||||
return &ISOTreePipeline{
|
||||
BasePipeline: NewBasePipeline("bootiso-tree", buildPipeline, nil),
|
||||
anacondaPipeline: anacondaPipeline,
|
||||
isoLabel: isoLabel,
|
||||
|
|
@ -42,7 +42,7 @@ func NewISOTreePipeline(buildPipeline *BuildPipeline, anacondaPipeline *Anaconda
|
|||
}
|
||||
}
|
||||
|
||||
func (p ISOTreePipeline) getOSTreeCommits() []osTreeCommit {
|
||||
func (p *ISOTreePipeline) getOSTreeCommits() []osTreeCommit {
|
||||
return []osTreeCommit{
|
||||
{
|
||||
checksum: p.osTreeCommit,
|
||||
|
|
@ -51,7 +51,7 @@ func (p ISOTreePipeline) getOSTreeCommits() []osTreeCommit {
|
|||
}
|
||||
}
|
||||
|
||||
func (p ISOTreePipeline) serialize() osbuild2.Pipeline {
|
||||
func (p *ISOTreePipeline) serialize() osbuild2.Pipeline {
|
||||
pipeline := p.BasePipeline.serialize()
|
||||
|
||||
kspath := "/osbuild.ks"
|
||||
|
|
|
|||
|
|
@ -13,15 +13,15 @@ type LiveImgPipeline struct {
|
|||
filename string
|
||||
}
|
||||
|
||||
func NewLiveImgPipeline(buildPipeline *BuildPipeline, treePipeline *OSPipeline, filename string) LiveImgPipeline {
|
||||
return LiveImgPipeline{
|
||||
func NewLiveImgPipeline(buildPipeline *BuildPipeline, treePipeline *OSPipeline, filename string) *LiveImgPipeline {
|
||||
return &LiveImgPipeline{
|
||||
BasePipeline: NewBasePipeline("image", buildPipeline, nil),
|
||||
treePipeline: treePipeline,
|
||||
filename: filename,
|
||||
}
|
||||
}
|
||||
|
||||
func (p LiveImgPipeline) serialize() osbuild2.Pipeline {
|
||||
func (p *LiveImgPipeline) serialize() osbuild2.Pipeline {
|
||||
pipeline := p.BasePipeline.serialize()
|
||||
|
||||
pt := p.treePipeline.partitionTable
|
||||
|
|
|
|||
|
|
@ -16,8 +16,8 @@ type OCIContainerPipeline struct {
|
|||
filename string
|
||||
}
|
||||
|
||||
func NewOCIContainerPipeline(buildPipeline *BuildPipeline, treePipeline *BasePipeline, architecture, filename string) OCIContainerPipeline {
|
||||
return OCIContainerPipeline{
|
||||
func NewOCIContainerPipeline(buildPipeline *BuildPipeline, treePipeline *BasePipeline, architecture, filename string) *OCIContainerPipeline {
|
||||
return &OCIContainerPipeline{
|
||||
BasePipeline: NewBasePipeline("container", buildPipeline, nil),
|
||||
treePipeline: treePipeline,
|
||||
architecture: architecture,
|
||||
|
|
@ -25,7 +25,7 @@ func NewOCIContainerPipeline(buildPipeline *BuildPipeline, treePipeline *BasePip
|
|||
}
|
||||
}
|
||||
|
||||
func (p OCIContainerPipeline) serialize() osbuild2.Pipeline {
|
||||
func (p *OCIContainerPipeline) serialize() osbuild2.Pipeline {
|
||||
pipeline := p.BasePipeline.serialize()
|
||||
|
||||
options := &osbuild2.OCIArchiveStageOptions{
|
||||
|
|
|
|||
|
|
@ -97,7 +97,7 @@ func NewOSPipeline(buildPipeline *BuildPipeline,
|
|||
partitionTable *disk.PartitionTable,
|
||||
bootLoader BootLoader,
|
||||
grubLegacy string,
|
||||
kernelName string) OSPipeline {
|
||||
kernelName string) *OSPipeline {
|
||||
name := "os"
|
||||
if osTree {
|
||||
name = "ostree-tree"
|
||||
|
|
@ -106,7 +106,7 @@ func NewOSPipeline(buildPipeline *BuildPipeline,
|
|||
if kernelName != "" {
|
||||
kernelVer = rpmmd.GetVerStrFromPackageSpecListPanic(packages, kernelName)
|
||||
}
|
||||
return OSPipeline{
|
||||
return &OSPipeline{
|
||||
BasePipeline: NewBasePipeline(name, buildPipeline, nil),
|
||||
osTree: osTree,
|
||||
osTreeParent: osTreeParent,
|
||||
|
|
@ -124,7 +124,7 @@ func NewOSPipeline(buildPipeline *BuildPipeline,
|
|||
}
|
||||
}
|
||||
|
||||
func (p OSPipeline) getOSTreeCommits() []osTreeCommit {
|
||||
func (p *OSPipeline) getOSTreeCommits() []osTreeCommit {
|
||||
commits := []osTreeCommit{}
|
||||
if p.osTreeParent != "" && p.osTreeURL != "" {
|
||||
commits = append(commits, osTreeCommit{
|
||||
|
|
@ -135,11 +135,11 @@ func (p OSPipeline) getOSTreeCommits() []osTreeCommit {
|
|||
return commits
|
||||
}
|
||||
|
||||
func (p OSPipeline) getPackageSpecs() []rpmmd.PackageSpec {
|
||||
func (p *OSPipeline) getPackageSpecs() []rpmmd.PackageSpec {
|
||||
return p.packageSpecs
|
||||
}
|
||||
|
||||
func (p OSPipeline) serialize() osbuild2.Pipeline {
|
||||
func (p *OSPipeline) serialize() osbuild2.Pipeline {
|
||||
pipeline := p.BasePipeline.serialize()
|
||||
|
||||
if p.osTree && p.osTreeParent != "" {
|
||||
|
|
|
|||
|
|
@ -16,15 +16,15 @@ type QCOW2Pipeline struct {
|
|||
// NewQCOW2Pipeline createsa new QCOW2 pipeline. imgPipeline is the pipeline producing the
|
||||
// raw image. The pipeline name is the name of the new pipeline. Filename is the name
|
||||
// of the produced qcow2 image.
|
||||
func NewQCOW2Pipeline(buildPipeline *BuildPipeline, imgPipeline *LiveImgPipeline, filename string) QCOW2Pipeline {
|
||||
return QCOW2Pipeline{
|
||||
func NewQCOW2Pipeline(buildPipeline *BuildPipeline, imgPipeline *LiveImgPipeline, filename string) *QCOW2Pipeline {
|
||||
return &QCOW2Pipeline{
|
||||
BasePipeline: NewBasePipeline("qcow2", buildPipeline, nil),
|
||||
imgPipeline: imgPipeline,
|
||||
filename: filename,
|
||||
}
|
||||
}
|
||||
|
||||
func (p QCOW2Pipeline) serialize() osbuild2.Pipeline {
|
||||
func (p *QCOW2Pipeline) serialize() osbuild2.Pipeline {
|
||||
pipeline := p.BasePipeline.serialize()
|
||||
|
||||
pipeline.AddStage(osbuild2.NewQEMUStage(
|
||||
|
|
|
|||
|
|
@ -14,15 +14,15 @@ type TarPipeline struct {
|
|||
// NewTarPipeline creates a new TarPipeline. The inputPipeline represents the
|
||||
// filesystem tree which will be the contents of the tar file. The pipelinename
|
||||
// is the name of the pipeline. The filename is the name of the output tar file.
|
||||
func NewTarPipeline(buildPipeline *BuildPipeline, inputPipeline *BasePipeline, pipelinename, filename string) TarPipeline {
|
||||
return TarPipeline{
|
||||
func NewTarPipeline(buildPipeline *BuildPipeline, inputPipeline *BasePipeline, pipelinename, filename string) *TarPipeline {
|
||||
return &TarPipeline{
|
||||
BasePipeline: NewBasePipeline(pipelinename, buildPipeline, nil),
|
||||
inputPipeline: inputPipeline,
|
||||
filename: filename,
|
||||
}
|
||||
}
|
||||
|
||||
func (p TarPipeline) serialize() osbuild2.Pipeline {
|
||||
func (p *TarPipeline) serialize() osbuild2.Pipeline {
|
||||
pipeline := p.BasePipeline.serialize()
|
||||
|
||||
tree := new(osbuild2.TarStageInput)
|
||||
|
|
|
|||
|
|
@ -14,15 +14,15 @@ type VMDKPipeline struct {
|
|||
|
||||
// NewVMDKPipeline creates a new VMDK pipeline. imgPipeline is the pipeline producing the
|
||||
// raw image. Filename is the name of the produced image.
|
||||
func NewVMDKPipeline(buildPipeline *BuildPipeline, imgPipeline *LiveImgPipeline, filename string) VMDKPipeline {
|
||||
return VMDKPipeline{
|
||||
func NewVMDKPipeline(buildPipeline *BuildPipeline, imgPipeline *LiveImgPipeline, filename string) *VMDKPipeline {
|
||||
return &VMDKPipeline{
|
||||
BasePipeline: NewBasePipeline("vmdk", buildPipeline, nil),
|
||||
imgPipeline: imgPipeline,
|
||||
filename: filename,
|
||||
}
|
||||
}
|
||||
|
||||
func (p VMDKPipeline) serialize() osbuild2.Pipeline {
|
||||
func (p *VMDKPipeline) serialize() osbuild2.Pipeline {
|
||||
pipeline := p.BasePipeline.serialize()
|
||||
|
||||
pipeline.AddStage(osbuild2.NewQEMUStage(
|
||||
|
|
|
|||
|
|
@ -15,15 +15,15 @@ type VPCPipeline struct {
|
|||
// NewVPCPipeline createsa new Qemu pipeline. imgPipeline is the pipeline producing the
|
||||
// raw image. The pipeline name is the name of the new pipeline. Filename is the name
|
||||
// of the produced image.
|
||||
func NewVPCPipeline(buildPipeline *BuildPipeline, imgPipeline *LiveImgPipeline, filename string) VPCPipeline {
|
||||
return VPCPipeline{
|
||||
func NewVPCPipeline(buildPipeline *BuildPipeline, imgPipeline *LiveImgPipeline, filename string) *VPCPipeline {
|
||||
return &VPCPipeline{
|
||||
BasePipeline: NewBasePipeline("vpc", buildPipeline, nil),
|
||||
imgPipeline: imgPipeline,
|
||||
filename: filename,
|
||||
}
|
||||
}
|
||||
|
||||
func (p VPCPipeline) serialize() osbuild2.Pipeline {
|
||||
func (p *VPCPipeline) serialize() osbuild2.Pipeline {
|
||||
pipeline := p.BasePipeline.serialize()
|
||||
|
||||
pipeline.AddStage(osbuild2.NewQEMUStage(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue