Skip to content

Commit

Permalink
Split reading zarf.yaml and setting arch apart
Browse files Browse the repository at this point in the history
  • Loading branch information
lucasrod16 committed Jan 12, 2024
1 parent 80fd2ec commit 8e9790b
Show file tree
Hide file tree
Showing 8 changed files with 21 additions and 19 deletions.
6 changes: 4 additions & 2 deletions src/pkg/packager/create_stages.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,11 @@ import (
)

func (p *Packager) load() error {
if err := p.readZarfYAML(layout.ZarfYAML); err != nil {
return fmt.Errorf("unable to read the zarf.yaml file: %s", err.Error())
if err := utils.ReadYaml(p.layout.ZarfYAML, &p.cfg.Pkg); err != nil {
return err
}
p.arch = config.GetArch(p.cfg.Pkg.Metadata.Architecture, p.cfg.Pkg.Build.Architecture)

if p.isInitConfig() {
p.cfg.Pkg.Metadata.Version = config.CLIVersion
}
Expand Down
3 changes: 2 additions & 1 deletion src/pkg/packager/deploy.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,10 @@ func (p *Packager) Deploy() (err error) {
return fmt.Errorf("unable to load the package: %w", err)
}

if err = p.readZarfYAML(p.layout.ZarfYAML); err != nil {
if err := utils.ReadYaml(p.layout.ZarfYAML, &p.cfg.Pkg); err != nil {
return err
}
p.arch = config.GetArch(p.cfg.Pkg.Metadata.Architecture, p.cfg.Pkg.Build.Architecture)

p.runMigrations()

Expand Down
4 changes: 3 additions & 1 deletion src/pkg/packager/inspect.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
package packager

import (
"github.com/defenseunicorns/zarf/src/config"
"github.com/defenseunicorns/zarf/src/internal/packager/sbom"
"github.com/defenseunicorns/zarf/src/pkg/utils"
)
Expand All @@ -17,9 +18,10 @@ func (p *Packager) Inspect() (err error) {
return err
}

if err = p.readZarfYAML(p.layout.ZarfYAML); err != nil {
if err := utils.ReadYaml(p.layout.ZarfYAML, &p.cfg.Pkg); err != nil {
return err
}
p.arch = config.GetArch(p.cfg.Pkg.Metadata.Architecture, p.cfg.Pkg.Build.Architecture)

utils.ColorPrintYAML(p.cfg.Pkg, nil, false)

Expand Down
4 changes: 3 additions & 1 deletion src/pkg/packager/mirror.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ import (

"github.com/defenseunicorns/zarf/src/config"
"github.com/defenseunicorns/zarf/src/pkg/message"
"github.com/defenseunicorns/zarf/src/pkg/utils"
"github.com/defenseunicorns/zarf/src/types"
)

Expand All @@ -21,9 +22,10 @@ func (p *Packager) Mirror() (err error) {
if err = p.source.LoadPackage(p.layout, true); err != nil {
return fmt.Errorf("unable to load the package: %w", err)
}
if err = p.readZarfYAML(p.layout.ZarfYAML); err != nil {
if err := utils.ReadYaml(p.layout.ZarfYAML, &p.cfg.Pkg); err != nil {
return err
}
p.arch = config.GetArch(p.cfg.Pkg.Metadata.Architecture, p.cfg.Pkg.Build.Architecture)

if err := p.stageSBOMViewFiles(); err != nil {
return err
Expand Down
6 changes: 3 additions & 3 deletions src/pkg/packager/prepare.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ import (
"github.com/defenseunicorns/zarf/src/internal/packager/helm"
"github.com/defenseunicorns/zarf/src/internal/packager/kustomize"
"github.com/defenseunicorns/zarf/src/pkg/k8s"
"github.com/defenseunicorns/zarf/src/pkg/layout"
"github.com/defenseunicorns/zarf/src/pkg/message"
"github.com/defenseunicorns/zarf/src/pkg/utils"
"github.com/defenseunicorns/zarf/src/pkg/utils/helpers"
Expand Down Expand Up @@ -47,9 +46,10 @@ func (p *Packager) FindImages() (imgMap map[string][]string, err error) {
}
message.Note(fmt.Sprintf("Using build directory %s", p.cfg.CreateOpts.BaseDir))

if err = p.readZarfYAML(layout.ZarfYAML); err != nil {
return nil, fmt.Errorf("unable to read the zarf.yaml file: %s", err.Error())
if err := utils.ReadYaml(p.layout.ZarfYAML, &p.cfg.Pkg); err != nil {
return nil, err
}
p.arch = config.GetArch(p.cfg.Pkg.Metadata.Architecture, p.cfg.Pkg.Build.Architecture)

if err := p.composeComponents(); err != nil {
return nil, err
Expand Down
3 changes: 2 additions & 1 deletion src/pkg/packager/publish.go
Original file line number Diff line number Diff line change
Expand Up @@ -103,9 +103,10 @@ func (p *Packager) Publish() (err error) {
if err = p.source.LoadPackage(p.layout, false); err != nil {
return fmt.Errorf("unable to load the package: %w", err)
}
if err = p.readZarfYAML(p.layout.ZarfYAML); err != nil {
if err := utils.ReadYaml(p.layout.ZarfYAML, &p.cfg.Pkg); err != nil {
return err
}
p.arch = config.GetArch(p.cfg.Pkg.Metadata.Architecture, p.cfg.Pkg.Build.Architecture)
}

// Get a reference to the registry for this package
Expand Down
5 changes: 4 additions & 1 deletion src/pkg/packager/remove.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ import (
"github.com/defenseunicorns/zarf/src/pkg/cluster"
"github.com/defenseunicorns/zarf/src/pkg/message"
"github.com/defenseunicorns/zarf/src/pkg/packager/sources"
"github.com/defenseunicorns/zarf/src/pkg/utils"
"github.com/defenseunicorns/zarf/src/pkg/utils/helpers"
"github.com/defenseunicorns/zarf/src/types"
"helm.sh/helm/v3/pkg/storage/driver"
Expand All @@ -38,9 +39,11 @@ func (p *Packager) Remove() (err error) {
if err = p.source.LoadPackageMetadata(p.layout, false, false); err != nil {
return err
}
if err = p.readZarfYAML(p.layout.ZarfYAML); err != nil {
if err := utils.ReadYaml(p.layout.ZarfYAML, &p.cfg.Pkg); err != nil {
return err
}
p.arch = config.GetArch(p.cfg.Pkg.Metadata.Architecture, p.cfg.Pkg.Build.Architecture)

p.filterComponents()
packageName = p.cfg.Pkg.Metadata.Name

Expand Down
9 changes: 0 additions & 9 deletions src/pkg/packager/yaml.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,6 @@ import (
"github.com/defenseunicorns/zarf/src/types"
)

// readZarfYAML reads a Zarf YAML file.
func (p *Packager) readZarfYAML(path string) error {
if err := utils.ReadYaml(path, &p.cfg.Pkg); err != nil {
return err
}
p.arch = config.GetArch(p.cfg.Pkg.Metadata.Architecture, p.cfg.Pkg.Build.Architecture)
return nil
}

// filterComponents removes components not matching the current OS if filterByOS is set.
func (p *Packager) filterComponents() {
// Filter each component to only compatible platforms.
Expand Down

0 comments on commit 8e9790b

Please sign in to comment.