Skip to content

Commit 1084574

Browse files
authored
Merge pull request #1013 from praddy26/fix-bug-996
fix: Prevent permission errors for ignored workload types #996
2 parents bd767a7 + a77c10a commit 1084574

1 file changed

Lines changed: 22 additions & 6 deletions

File tree

internal/pkg/handler/upgrade.go

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -172,18 +172,34 @@ func sendWebhook(url string) (string, []error) {
172172
func doRollingUpgrade(config common.Config, collectors metrics.Collectors, recorder record.EventRecorder, invoke invokeStrategy) error {
173173
clients := kube.GetClients()
174174

175-
err := rollingUpgrade(clients, config, GetDeploymentRollingUpgradeFuncs(), collectors, recorder, invoke)
175+
// Get ignored workload types to avoid listing resources without RBAC permissions
176+
ignoredWorkloadTypes, err := util.GetIgnoredWorkloadTypesList()
176177
if err != nil {
177-
return err
178+
logrus.Errorf("Failed to parse ignored workload types: %v", err)
179+
ignoredWorkloadTypes = util.List{} // Continue with empty list if parsing fails
178180
}
179-
err = rollingUpgrade(clients, config, GetCronJobCreateJobFuncs(), collectors, recorder, invoke)
181+
182+
err = rollingUpgrade(clients, config, GetDeploymentRollingUpgradeFuncs(), collectors, recorder, invoke)
180183
if err != nil {
181184
return err
182185
}
183-
err = rollingUpgrade(clients, config, GetJobCreateJobFuncs(), collectors, recorder, invoke)
184-
if err != nil {
185-
return err
186+
187+
// Only process CronJobs if they are not ignored
188+
if !ignoredWorkloadTypes.Contains("cronjobs") {
189+
err = rollingUpgrade(clients, config, GetCronJobCreateJobFuncs(), collectors, recorder, invoke)
190+
if err != nil {
191+
return err
192+
}
186193
}
194+
195+
// Only process Jobs if they are not ignored
196+
if !ignoredWorkloadTypes.Contains("jobs") {
197+
err = rollingUpgrade(clients, config, GetJobCreateJobFuncs(), collectors, recorder, invoke)
198+
if err != nil {
199+
return err
200+
}
201+
}
202+
187203
err = rollingUpgrade(clients, config, GetDaemonSetRollingUpgradeFuncs(), collectors, recorder, invoke)
188204
if err != nil {
189205
return err

0 commit comments

Comments
 (0)