Get VFSContext from caller in misc. places

This commit is contained in:
John Gardiner Myers 2023-07-18 09:03:46 -07:00
parent 5c343b0f80
commit 850abfbc68
4 changed files with 9 additions and 7 deletions

View File

@ -673,7 +673,7 @@ func RunCreateCluster(ctx context.Context, f *util.Factory, out io.Writer, c *Cr
} }
for _, p := range c.AddonPaths { for _, p := range c.AddonPaths {
addon, err := clusteraddons.LoadClusterAddon(p) addon, err := clusteraddons.LoadClusterAddon(clientset.VFSContext(), p)
if err != nil { if err != nil {
return fmt.Errorf("error loading cluster addon %s: %v", p, err) return fmt.Errorf("error loading cluster addon %s: %v", p, err)
} }

View File

@ -31,7 +31,7 @@ type ClusterAddon struct {
} }
// LoadClusterAddon loads a set of objects from the specified VFS location // LoadClusterAddon loads a set of objects from the specified VFS location
func LoadClusterAddon(location string) (*ClusterAddon, error) { func LoadClusterAddon(vfsContext *vfs.VFSContext, location string) (*ClusterAddon, error) {
u, err := url.Parse(location) u, err := url.Parse(location)
if err != nil { if err != nil {
return nil, fmt.Errorf("invalid addon location: %q", location) return nil, fmt.Errorf("invalid addon location: %q", location)
@ -41,7 +41,7 @@ func LoadClusterAddon(location string) (*ClusterAddon, error) {
resolved := u.String() resolved := u.String()
klog.V(2).Infof("Loading addon from %q", resolved) klog.V(2).Infof("Loading addon from %q", resolved)
addonBytes, err := vfs.Context.ReadFile(resolved) addonBytes, err := vfsContext.ReadFile(resolved)
if err != nil { if err != nil {
return nil, fmt.Errorf("error reading addon %q: %v", resolved, err) return nil, fmt.Errorf("error reading addon %q: %v", resolved, err)
} }

View File

@ -37,7 +37,8 @@ type Package struct {
} }
type Builder struct { type Builder struct {
Cluster *kops.Cluster VFSContext *vfs.VFSContext
Cluster *kops.Cluster
} }
func (b *Builder) Build(objects kubemanifest.ObjectList) ([]*Package, kubemanifest.ObjectList, error) { func (b *Builder) Build(objects kubemanifest.ObjectList) ([]*Package, kubemanifest.ObjectList, error) {
@ -94,7 +95,7 @@ func (b *Builder) loadClusterPackage(u *unstructured.Unstructured) (*Package, er
locationURL := channelURL.ResolveReference(&url.URL{Path: location}).String() locationURL := channelURL.ResolveReference(&url.URL{Path: location}).String()
manifestBytes, err := vfs.Context.ReadFile(locationURL) manifestBytes, err := b.VFSContext.ReadFile(locationURL)
if err != nil { if err != nil {
return nil, fmt.Errorf("error reading operator manifest %q: %v", locationURL, err) return nil, fmt.Errorf("error reading operator manifest %q: %v", locationURL, err)
} }

View File

@ -22,7 +22,6 @@ import (
"k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/klog/v2" "k8s.io/klog/v2"
channelsapi "k8s.io/kops/channels/pkg/api" channelsapi "k8s.io/kops/channels/pkg/api"
"k8s.io/kops/pkg/apis/kops" "k8s.io/kops/pkg/apis/kops"
"k8s.io/kops/pkg/assets" "k8s.io/kops/pkg/assets"
@ -47,6 +46,7 @@ import (
"k8s.io/kops/upup/pkg/fi" "k8s.io/kops/upup/pkg/fi"
"k8s.io/kops/upup/pkg/fi/fitasks" "k8s.io/kops/upup/pkg/fi/fitasks"
"k8s.io/kops/upup/pkg/fi/utils" "k8s.io/kops/upup/pkg/fi/utils"
"k8s.io/kops/util/pkg/vfs"
) )
// BootstrapChannelBuilder is responsible for handling the addons in channels // BootstrapChannelBuilder is responsible for handling the addons in channels
@ -162,7 +162,8 @@ func (b *BootstrapChannelBuilder) Build(c *fi.CloudupModelBuilderContext) error
if featureflag.UseAddonOperators.Enabled() { if featureflag.UseAddonOperators.Enabled() {
ob := &wellknownoperators.Builder{ ob := &wellknownoperators.Builder{
Cluster: b.Cluster, VFSContext: vfs.Context,
Cluster: b.Cluster,
} }
addonPackages, clusterAddons, err := ob.Build(b.ClusterAddons) addonPackages, clusterAddons, err := ob.Build(b.ClusterAddons)