Skip to content

Commit

Permalink
Returning error from saveUpgradeGraph()
Browse files Browse the repository at this point in the history
  • Loading branch information
bradmwilliams committed Jan 5, 2022
1 parent e790c9d commit 0921282
Showing 1 changed file with 13 additions and 8 deletions.
21 changes: 13 additions & 8 deletions pkg/release-controller/upgrades.go
Expand Up @@ -273,7 +273,10 @@ func syncGraphToSecret(graph *UpgradeGraph, update bool, secretClient kv1core.Se
buf := &bytes.Buffer{}
wait.Until(func() {
buf.Reset()
saveUpgradeGraph(buf, graph, secretClient, ns, name)
err := saveUpgradeGraph(buf, graph, secretClient, ns, name)
if err != nil {
klog.Errorf("Unable to save upgrade graph: %v", err)
}
}, 5*time.Minute, stopCh)
}

Expand Down Expand Up @@ -302,24 +305,23 @@ func loadUpgradeGraph(graph *UpgradeGraph, secretClient kv1core.SecretInterface,
}, stopCh)
}

func saveUpgradeGraph(buf *bytes.Buffer, graph *UpgradeGraph, secretClient kv1core.SecretInterface, ns, name string) {
func saveUpgradeGraph(buf *bytes.Buffer, graph *UpgradeGraph, secretClient kv1core.SecretInterface, ns, name string) error {
if err := graph.Save(buf); err != nil {
klog.Errorf("Unable to calculate graph state: %v", err)
return
return fmt.Errorf("unable to calculate graph state: %v", err)
}
secret, err := secretClient.Get(context.TODO(), name, metav1.GetOptions{})
if err != nil {
klog.Errorf("Can't read latest secret %s/%s: %v", ns, name, err)
return
return fmt.Errorf("can't read latest secret %s/%s: %v", ns, name, err)
}
if secret.Data == nil {
secret.Data = make(map[string][]byte)
}
secret.Data["latest"] = buf.Bytes()
if _, err := secretClient.Update(context.TODO(), secret, metav1.UpdateOptions{}); err != nil {
klog.Errorf("Can't save state to secret %s/%s: %v", ns, name, err)
return fmt.Errorf("can't save state to secret %s/%s: %v", ns, name, err)
}
klog.V(2).Infof("Saved upgrade graph state to %s/%s", ns, name)
return nil
}

func (g *UpgradeGraph) orderedRecords() []UpgradeRecord {
Expand Down Expand Up @@ -412,7 +414,10 @@ func (c *Controller) pruneGraph(secretClient kv1core.SecretInterface, ns, name s

if confirm {
buf := &bytes.Buffer{}
saveUpgradeGraph(buf, c.graph, secretClient, ns, name)
err = saveUpgradeGraph(buf, c.graph, secretClient, ns, name)
if err != nil {
return err
}
} else {
switch printOption {
case PruneGraphPrintDebug:
Expand Down

0 comments on commit 0921282

Please sign in to comment.