emit events during major version upgrade
This commit is contained in:
		
							parent
							
								
									a478fd3eba
								
							
						
					
					
						commit
						d3dc22c9e5
					
				| 
						 | 
				
			
			@ -1310,6 +1310,7 @@ func (c *Cluster) Switchover(curMaster *v1.Pod, candidate spec.NamespacedName) e
 | 
			
		|||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		err = fmt.Errorf("could not switch over from %q to %q: %v", curMaster.Name, candidate, err)
 | 
			
		||||
		c.eventRecorder.Eventf(c.GetReference(), v1.EventTypeNormal, "Switchover", "Switchover from %q to %q FAILED: %v", curMaster.Name, candidate, err)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// signal the role label waiting goroutine to close the shop and go home
 | 
			
		||||
| 
						 | 
				
			
			@ -1320,9 +1321,7 @@ func (c *Cluster) Switchover(curMaster *v1.Pod, candidate spec.NamespacedName) e
 | 
			
		|||
	// close the label waiting channel no sooner than the waiting goroutine terminates.
 | 
			
		||||
	close(podLabelErr)
 | 
			
		||||
 | 
			
		||||
	c.eventRecorder.Eventf(c.GetReference(), v1.EventTypeNormal, "Switchover", "Switchover from %q to %q FAILED: %v", curMaster.Name, candidate, err)
 | 
			
		||||
	return err
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Lock locks the cluster
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -85,13 +85,17 @@ func (c *Cluster) majorVersionUpgrade() error {
 | 
			
		|||
		if c.currentMajorVersion < desiredVersion {
 | 
			
		||||
			podName := &spec.NamespacedName{Namespace: masterPod.Namespace, Name: masterPod.Name}
 | 
			
		||||
			c.logger.Infof("triggering major version upgrade on pod %s of %d pods", masterPod.Name, numberOfPods)
 | 
			
		||||
			c.eventRecorder.Eventf(c.GetReference(), v1.EventTypeNormal, "Major Version Upgrade", "Starting major version upgrade on pod %s of %d pods", masterPod.Name, numberOfPods)
 | 
			
		||||
			upgradeCommand := fmt.Sprintf("/usr/bin/python3 /scripts/inplace_upgrade.py %d 2>&1 | tee last_upgrade.log", numberOfPods)
 | 
			
		||||
 | 
			
		||||
			result, err := c.ExecCommand(podName, "/bin/su", "postgres", "-c", upgradeCommand)
 | 
			
		||||
			if err != nil {
 | 
			
		||||
				c.eventRecorder.Eventf(c.GetReference(), v1.EventTypeNormal, "Major Version Upgrade", "Upgrade from %d to %d FAILED: %v", c.currentMajorVersion, desiredVersion, err)
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			c.logger.Infof("upgrade action triggered and command completed: %s", result[:50])
 | 
			
		||||
			c.eventRecorder.Eventf(c.GetReference(), v1.EventTypeNormal, "Major Version Upgrade", "Upgrade from %d to %d finished", c.currentMajorVersion, desiredVersion)
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue