Modify to add extra labels only during resource creation
This commit is contained in:
parent
00dc810544
commit
071547e5bf
|
|
@ -491,7 +491,7 @@ func (c *Cluster) generatePodTemplate(
|
||||||
|
|
||||||
template := v1.PodTemplateSpec{
|
template := v1.PodTemplateSpec{
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
Labels: c.labelsSet(),
|
Labels: c.labelsSet(true),
|
||||||
Namespace: c.Namespace,
|
Namespace: c.Namespace,
|
||||||
},
|
},
|
||||||
Spec: podSpec,
|
Spec: podSpec,
|
||||||
|
|
@ -559,7 +559,7 @@ func (c *Cluster) generateStatefulSet(spec *spec.PostgresSpec) (*v1beta1.Statefu
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
Name: c.statefulSetName(),
|
Name: c.statefulSetName(),
|
||||||
Namespace: c.Namespace,
|
Namespace: c.Namespace,
|
||||||
Labels: c.labelsSet(),
|
Labels: c.labelsSet(true),
|
||||||
},
|
},
|
||||||
Spec: v1beta1.StatefulSetSpec{
|
Spec: v1beta1.StatefulSetSpec{
|
||||||
Replicas: &numberOfInstances,
|
Replicas: &numberOfInstances,
|
||||||
|
|
@ -653,7 +653,7 @@ func (c *Cluster) generateSingleUserSecret(namespace string, pgUser spec.PgUser)
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
Name: c.credentialSecretName(username),
|
Name: c.credentialSecretName(username),
|
||||||
Namespace: namespace,
|
Namespace: namespace,
|
||||||
Labels: c.labelsSet(),
|
Labels: c.labelsSet(true),
|
||||||
},
|
},
|
||||||
Type: v1.SecretTypeOpaque,
|
Type: v1.SecretTypeOpaque,
|
||||||
Data: map[string][]byte{
|
Data: map[string][]byte{
|
||||||
|
|
@ -780,7 +780,7 @@ func (c *Cluster) generatePodDisruptionBudget() *policybeta1.PodDisruptionBudget
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
Name: c.podDisruptionBudgetName(),
|
Name: c.podDisruptionBudgetName(),
|
||||||
Namespace: c.Namespace,
|
Namespace: c.Namespace,
|
||||||
Labels: c.labelsSet(),
|
Labels: c.labelsSet(true),
|
||||||
},
|
},
|
||||||
Spec: policybeta1.PodDisruptionBudgetSpec{
|
Spec: policybeta1.PodDisruptionBudgetSpec{
|
||||||
MinAvailable: &minAvailable,
|
MinAvailable: &minAvailable,
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@ import (
|
||||||
|
|
||||||
func (c *Cluster) listPods() ([]v1.Pod, error) {
|
func (c *Cluster) listPods() ([]v1.Pod, error) {
|
||||||
listOptions := metav1.ListOptions{
|
listOptions := metav1.ListOptions{
|
||||||
LabelSelector: c.labelsSet().String(),
|
LabelSelector: c.labelsSet(false).String(),
|
||||||
}
|
}
|
||||||
|
|
||||||
pods, err := c.KubeClient.Pods(c.Namespace).List(listOptions)
|
pods, err := c.KubeClient.Pods(c.Namespace).List(listOptions)
|
||||||
|
|
@ -268,7 +268,7 @@ func (c *Cluster) recreatePod(podName spec.NamespacedName) (*v1.Pod, error) {
|
||||||
|
|
||||||
func (c *Cluster) recreatePods() error {
|
func (c *Cluster) recreatePods() error {
|
||||||
c.setProcessName("recreating pods")
|
c.setProcessName("recreating pods")
|
||||||
ls := c.labelsSet()
|
ls := c.labelsSet(false)
|
||||||
namespace := c.Namespace
|
namespace := c.Namespace
|
||||||
|
|
||||||
listOptions := metav1.ListOptions{
|
listOptions := metav1.ListOptions{
|
||||||
|
|
|
||||||
|
|
@ -261,7 +261,7 @@ func (c *Cluster) waitStatefulsetReady() error {
|
||||||
return retryutil.Retry(c.OpConfig.ResourceCheckInterval, c.OpConfig.ResourceCheckTimeout,
|
return retryutil.Retry(c.OpConfig.ResourceCheckInterval, c.OpConfig.ResourceCheckTimeout,
|
||||||
func() (bool, error) {
|
func() (bool, error) {
|
||||||
listOptions := metav1.ListOptions{
|
listOptions := metav1.ListOptions{
|
||||||
LabelSelector: c.labelsSet().String(),
|
LabelSelector: c.labelsSet(false).String(),
|
||||||
}
|
}
|
||||||
ss, err := c.KubeClient.StatefulSets(c.Namespace).List(listOptions)
|
ss, err := c.KubeClient.StatefulSets(c.Namespace).List(listOptions)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
@ -277,7 +277,7 @@ func (c *Cluster) waitStatefulsetReady() error {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Cluster) waitPodLabelsReady() error {
|
func (c *Cluster) waitPodLabelsReady() error {
|
||||||
ls := c.labelsSet()
|
ls := c.labelsSet(false)
|
||||||
namespace := c.Namespace
|
namespace := c.Namespace
|
||||||
|
|
||||||
listOptions := metav1.ListOptions{
|
listOptions := metav1.ListOptions{
|
||||||
|
|
@ -337,19 +337,26 @@ func (c *Cluster) waitStatefulsetPodsReady() error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Cluster) labelsSet() labels.Set {
|
// Returns labels used to create or list k8s objects such as pods
|
||||||
|
// For backward compatability, shouldAddExtraLabels must be false
|
||||||
|
// when listing k8s objects. See operator PR #252
|
||||||
|
func (c *Cluster) labelsSet(shouldAddExtraLabels bool) labels.Set {
|
||||||
lbls := make(map[string]string)
|
lbls := make(map[string]string)
|
||||||
for k, v := range c.OpConfig.ClusterLabels {
|
for k, v := range c.OpConfig.ClusterLabels {
|
||||||
lbls[k] = v
|
lbls[k] = v
|
||||||
}
|
}
|
||||||
lbls[c.OpConfig.ClusterNameLabel] = c.Name
|
lbls[c.OpConfig.ClusterNameLabel] = c.Name
|
||||||
|
|
||||||
|
if shouldAddExtraLabels {
|
||||||
|
// enables filtering resources owned by a team
|
||||||
lbls["team"] = c.Postgresql.Spec.TeamID
|
lbls["team"] = c.Postgresql.Spec.TeamID
|
||||||
|
}
|
||||||
|
|
||||||
return labels.Set(lbls)
|
return labels.Set(lbls)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Cluster) roleLabelsSet(role PostgresRole) labels.Set {
|
func (c *Cluster) roleLabelsSet(role PostgresRole) labels.Set {
|
||||||
lbls := c.labelsSet()
|
lbls := c.labelsSet(false)
|
||||||
lbls[c.OpConfig.PodRoleLabel] = string(role)
|
lbls[c.OpConfig.PodRoleLabel] = string(role)
|
||||||
return lbls
|
return lbls
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ import (
|
||||||
func (c *Cluster) listPersistentVolumeClaims() ([]v1.PersistentVolumeClaim, error) {
|
func (c *Cluster) listPersistentVolumeClaims() ([]v1.PersistentVolumeClaim, error) {
|
||||||
ns := c.Namespace
|
ns := c.Namespace
|
||||||
listOptions := metav1.ListOptions{
|
listOptions := metav1.ListOptions{
|
||||||
LabelSelector: c.labelsSet().String(),
|
LabelSelector: c.labelsSet(false).String(),
|
||||||
}
|
}
|
||||||
|
|
||||||
pvcs, err := c.KubeClient.PersistentVolumeClaims(ns).List(listOptions)
|
pvcs, err := c.KubeClient.PersistentVolumeClaims(ns).List(listOptions)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue