Skip to content

Commit ff9c982

Browse files
authored
Merge pull request #2867 from fluxcd/image-finalizers
Remove image finalizers on uninstall
2 parents 769e204 + 724c93c commit ff9c982

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

cmd/flux/uninstall.go

+41
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ import (
3333
"github.com/fluxcd/flux2/internal/utils"
3434
"github.com/fluxcd/flux2/pkg/manifestgen"
3535
helmv2 "github.com/fluxcd/helm-controller/api/v2beta1"
36+
autov1 "github.com/fluxcd/image-automation-controller/api/v1beta1"
37+
imagev1 "github.com/fluxcd/image-reflector-controller/api/v1beta1"
3638
kustomizev1 "github.com/fluxcd/kustomize-controller/api/v1beta2"
3739
sourcev1 "github.com/fluxcd/source-controller/api/v1beta2"
3840
)
@@ -261,6 +263,45 @@ func uninstallFinalizers(ctx context.Context, kubeClient client.Client, dryRun b
261263
}
262264
}
263265
}
266+
{
267+
var list imagev1.ImagePolicyList
268+
if err := kubeClient.List(ctx, &list, client.InNamespace("")); err == nil {
269+
for _, r := range list.Items {
270+
r.Finalizers = []string{}
271+
if err := kubeClient.Update(ctx, &r, opts); err != nil {
272+
logger.Failuref("%s/%s/%s removing finalizers failed: %s", r.Kind, r.Namespace, r.Name, err.Error())
273+
} else {
274+
logger.Successf("%s/%s/%s finalizers deleted %s", r.Kind, r.Namespace, r.Name, dryRunStr)
275+
}
276+
}
277+
}
278+
}
279+
{
280+
var list imagev1.ImageRepositoryList
281+
if err := kubeClient.List(ctx, &list, client.InNamespace("")); err == nil {
282+
for _, r := range list.Items {
283+
r.Finalizers = []string{}
284+
if err := kubeClient.Update(ctx, &r, opts); err != nil {
285+
logger.Failuref("%s/%s/%s removing finalizers failed: %s", r.Kind, r.Namespace, r.Name, err.Error())
286+
} else {
287+
logger.Successf("%s/%s/%s finalizers deleted %s", r.Kind, r.Namespace, r.Name, dryRunStr)
288+
}
289+
}
290+
}
291+
}
292+
{
293+
var list autov1.ImageUpdateAutomationList
294+
if err := kubeClient.List(ctx, &list, client.InNamespace("")); err == nil {
295+
for _, r := range list.Items {
296+
r.Finalizers = []string{}
297+
if err := kubeClient.Update(ctx, &r, opts); err != nil {
298+
logger.Failuref("%s/%s/%s removing finalizers failed: %s", r.Kind, r.Namespace, r.Name, err.Error())
299+
} else {
300+
logger.Successf("%s/%s/%s finalizers deleted %s", r.Kind, r.Namespace, r.Name, dryRunStr)
301+
}
302+
}
303+
}
304+
}
264305
}
265306

266307
func uninstallCustomResourceDefinitions(ctx context.Context, kubeClient client.Client, dryRun bool) {

0 commit comments

Comments
 (0)