Skip to content

Commit

Permalink
refactor: normal creator
Browse files Browse the repository at this point in the history
Signed-off-by: Philip Laine <[email protected]>
  • Loading branch information
phillebaba committed Oct 17, 2024
1 parent 56e48d4 commit ae6c1dc
Show file tree
Hide file tree
Showing 36 changed files with 3,110 additions and 27 deletions.
2 changes: 1 addition & 1 deletion examples/manifests/zarf.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ components:
kustomizations:
# kustomizations can be specified relative to the `zarf.yaml` or as remoteBuild resources with the
# following syntax: https://github.com/kubernetes-sigs/kustomize/blob/master/examples/remoteBuild.md:
- github.com/stefanprodan/podinfo//kustomize?ref=6.4.0
- https://github.com/stefanprodan/podinfo//kustomize?ref=6.4.0
# while ?ref= is not a requirement, it is recommended to use a specific commit hash / git tag to
# ensure that the kustomization is not changed in a way that breaks your deployment.
# image discovery is supported in all manifests and charts using:
Expand Down
22 changes: 10 additions & 12 deletions src/cmd/package.go
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ import (
"github.com/zarf-dev/zarf/src/internal/dns"
"github.com/zarf-dev/zarf/src/internal/packager2"
"github.com/zarf-dev/zarf/src/pkg/cluster"
"github.com/zarf-dev/zarf/src/pkg/lint"
"github.com/zarf-dev/zarf/src/pkg/message"
"github.com/zarf-dev/zarf/src/pkg/packager"
"github.com/zarf-dev/zarf/src/pkg/packager/filters"
Expand Down Expand Up @@ -59,19 +58,18 @@ var packageCreateCmd = &cobra.Command{
pkgConfig.CreateOpts.SetVariables = helpers.TransformAndMergeMap(
v.GetStringMapString(common.VPkgCreateSet), pkgConfig.CreateOpts.SetVariables, strings.ToUpper)

pkgClient, err := packager.New(&pkgConfig)
if err != nil {
return err
}
defer pkgClient.ClearTempPaths()

err = pkgClient.Create(cmd.Context())
var lintErr *lint.LintError
if errors.As(err, &lintErr) {
common.PrintFindings(lintErr)
opt := packager2.CreateOptions{
Flavor: pkgConfig.CreateOpts.Flavor,
RegistryOverrides: pkgConfig.CreateOpts.RegistryOverrides,
SigningKeyPath: pkgConfig.CreateOpts.SigningKeyPath,
SigningKeyPassword: pkgConfig.CreateOpts.SigningKeyPassword,
SetVariables: pkgConfig.CreateOpts.SetVariables,
MaxPackageSizeMB: pkgConfig.CreateOpts.MaxPackageSizeMB,
Output: pkgConfig.CreateOpts.Output,
}
err := packager2.Create(cmd.Context(), pkgConfig.CreateOpts.BaseDir, opt)
if err != nil {
return fmt.Errorf("failed to create package: %w", err)
return err
}
return nil
},
Expand Down
37 changes: 37 additions & 0 deletions src/internal/packager2/create.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
// SPDX-License-Identifier: Apache-2.0
// SPDX-FileCopyrightText: 2021-Present The Zarf Authors

package packager2

import (
"context"

layout2 "github.com/zarf-dev/zarf/src/internal/packager2/layout"
)

type CreateOptions struct {
Flavor string
RegistryOverrides map[string]string
SigningKeyPath string
SigningKeyPassword string
SetVariables map[string]string
MaxPackageSizeMB int
Output string
}

func Create(ctx context.Context, packagePath string, opt CreateOptions) error {
createOpt := layout2.CreateOptions{
Flavor: opt.Flavor,
RegistryOverrides: opt.RegistryOverrides,
SigningKeyPath: opt.SigningKeyPath,
SigningKeyPassword: opt.SigningKeyPassword,
SetVariables: opt.SetVariables,
MaxPackageSizeMB: opt.MaxPackageSizeMB,
Output: opt.Output,
}
_, err := layout2.CreatePackage(ctx, packagePath, createOpt)
if err != nil {
return err
}
return nil
}
Loading

0 comments on commit ae6c1dc

Please sign in to comment.