@@ -58,25 +58,26 @@ type Deployer struct {
58
58
59
59
* latest.KubectlDeploy
60
60
61
- accessor access.Accessor
62
- imageLoader loader.ImageLoader
63
- logger k8slogger.Logger
64
- debugger debug.Debugger
65
- statusMonitor kstatus.Monitor
66
- syncer sync.Syncer
67
- hookRunner hooks.Runner
68
- originalImages []graph.Artifact // the set of images parsed from the Deployer's manifest set
69
- localImages []graph.Artifact // the set of images marked as "local" by the Runner
70
- podSelector * kubernetes.ImageList
71
- hydratedManifests []string
72
- workingDir string
73
- globalConfig string
74
- defaultRepo * string
75
- multiLevelRepo * bool
76
- kubectl CLI
77
- insecureRegistries map [string ]bool
78
- labeller * label.DefaultLabeller
79
- namespaces * []string
61
+ accessor access.Accessor
62
+ imageLoader loader.ImageLoader
63
+ logger k8slogger.Logger
64
+ debugger debug.Debugger
65
+ statusMonitor kstatus.Monitor
66
+ syncer sync.Syncer
67
+ hookRunner hooks.Runner
68
+ originalImages []graph.Artifact // the set of images parsed from the Deployer's manifest set
69
+ localImages []graph.Artifact // the set of images marked as "local" by the Runner
70
+ podSelector * kubernetes.ImageList
71
+ hydratedManifests []string
72
+ workingDir string
73
+ globalConfig string
74
+ defaultRepo * string
75
+ multiLevelRepo * bool
76
+ kubectl CLI
77
+ insecureRegistries map [string ]bool
78
+ labeller * label.DefaultLabeller
79
+ namespaces * []string
80
+ manifestsNamespaces * []string
80
81
81
82
transformableAllowlist map [apimachinery.GroupKind ]latest.ResourceFilter
82
83
transformableDenylist map [apimachinery.GroupKind ]latest.ResourceFilter
@@ -121,26 +122,29 @@ func NewDeployer(cfg Config, labeller *label.DefaultLabeller, d *latest.KubectlD
121
122
})
122
123
}
123
124
125
+ manifestsNamespaces := []string {}
126
+
124
127
return & Deployer {
125
- originalImages : ogImages ,
126
- configName : configName ,
127
- KubectlDeploy : d ,
128
- podSelector : podSelector ,
129
- namespaces : & namespaces ,
130
- accessor : component .NewAccessor (cfg , cfg .GetKubeContext (), kubectl .CLI , podSelector , labeller , & namespaces ),
131
- debugger : component .NewDebugger (cfg .Mode (), podSelector , & namespaces , cfg .GetKubeContext ()),
132
- imageLoader : component .NewImageLoader (cfg , kubectl .CLI ),
133
- logger : logger ,
134
- statusMonitor : component .NewMonitor (cfg , cfg .GetKubeContext (), labeller , & namespaces , customResourceSelectors ),
135
- syncer : component .NewSyncer (kubectl .CLI , & namespaces , logger .GetFormatter ()),
136
- hookRunner : hooks .NewDeployRunner (kubectl .CLI , d .LifecycleHooks , & namespaces , logger .GetFormatter (), hooks .NewDeployEnvOpts (labeller .GetRunID (), kubectl .KubeContext , namespaces )),
137
- workingDir : cfg .GetWorkingDir (),
138
- globalConfig : cfg .GlobalConfig (),
139
- defaultRepo : cfg .DefaultRepo (),
140
- multiLevelRepo : cfg .MultiLevelRepo (),
141
- kubectl : kubectl ,
142
- insecureRegistries : cfg .GetInsecureRegistries (),
143
- labeller : labeller ,
128
+ originalImages : ogImages ,
129
+ configName : configName ,
130
+ KubectlDeploy : d ,
131
+ podSelector : podSelector ,
132
+ namespaces : & namespaces ,
133
+ accessor : component .NewAccessor (cfg , cfg .GetKubeContext (), kubectl .CLI , podSelector , labeller , & namespaces ),
134
+ debugger : component .NewDebugger (cfg .Mode (), podSelector , & namespaces , cfg .GetKubeContext ()),
135
+ imageLoader : component .NewImageLoader (cfg , kubectl .CLI ),
136
+ logger : logger ,
137
+ statusMonitor : component .NewMonitor (cfg , cfg .GetKubeContext (), labeller , & namespaces , customResourceSelectors ),
138
+ syncer : component .NewSyncer (kubectl .CLI , & namespaces , logger .GetFormatter ()),
139
+ manifestsNamespaces : & manifestsNamespaces ,
140
+ hookRunner : hooks .NewDeployRunner (kubectl .CLI , d .LifecycleHooks , & namespaces , logger .GetFormatter (), hooks .NewDeployEnvOpts (labeller .GetRunID (), kubectl .KubeContext , namespaces ), & manifestsNamespaces ),
141
+ workingDir : cfg .GetWorkingDir (),
142
+ globalConfig : cfg .GlobalConfig (),
143
+ defaultRepo : cfg .DefaultRepo (),
144
+ multiLevelRepo : cfg .MultiLevelRepo (),
145
+ kubectl : kubectl ,
146
+ insecureRegistries : cfg .GetInsecureRegistries (),
147
+ labeller : labeller ,
144
148
// hydratedManifests refers to the DIR in the `skaffold apply DIR`. Used in both v1 and v2.
145
149
hydratedManifests : cfg .HydratedManifests (),
146
150
transformableAllowlist : transformableAllowlist ,
@@ -270,6 +274,7 @@ func (k *Deployer) Deploy(ctx context.Context, out io.Writer, builds []graph.Art
270
274
k .statusMonitor .RegisterDeployManifests (manifests )
271
275
endTrace ()
272
276
k .trackNamespaces (namespaces )
277
+ * k .manifestsNamespaces = namespaces
273
278
return nil
274
279
}
275
280
0 commit comments