zalando / zalando/postgres-operator
Display the resources created in ArgoCD associated to a CRD instance
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 5.2k
- Forks
- 1.1k
- Avg merge
- 2d 16h
- Merged PRs (30d)
- 3
Description
Please, answer some short questions which should help us to understand your problem / question better?
-
Which image of the operator are you using?
registry.opensource.zalan.do/acid/postgres-operator:v1.7.1 -
Where do you run it - cloud or metal? Kubernetes or OpenShift?
AWS K8s EKS -
Are you running Postgres Operator in production?
yes -
Type of issue?
feature request
🐛 Current Implementation
- We can see the CRD instance
postgres, but we don't see the list of resources - We don't see the resources created...
- Endpoints
- Services
- Secrets
- StatefulSet

❓What to display the created resources?
- When we create a database, we see the list of resources created, those are listed in the
Events section- Endpoints
- Services
- Secrets
- StatefulSet
- PersistentVolumeClaim
$ kubectl describe postgresqls -n x-aws-sae1-prdt-ppd-dev
Name: x-postgres-server-aws-sae1-prdt-ppd-dev
Namespace: x-aws-sae1-prdt-ppd-dev
Labels: app.kubernetes.io/instance=x-postgres-server-aws-sae1-ppd-dev
cloud=aws
env=dev
product=x
region=sae1
segment=ppd
type=prdt
Annotations: <none>
API Version: acid.zalan.do/v1
Kind: postgresql
Metadata:
Creation Timestamp: 2022-02-01T00:57:09Z
Generation: 1
Managed Fields:
API Version: acid.zalan.do/v1
Fields Type: FieldsV1
fieldsV1:
f:metadata:
f:annotations:
Manager: argocd-application-controller
Operation: Update
Time: 2022-02-01T00:57:09Z
API Version: acid.zalan.do/v1
Fields Type: FieldsV1
fieldsV1:
f:status:
.:
f:PostgresClusterStatus:
Manager: postgres-operator
Operation: Update
Time: 2022-02-01T00:57:09Z
Resource Version: 1342972
UID: 72927efa-5dec-4696-8f84-87452c4da221
Spec:
Databases:
x: y
Enable Master Load Balancer: true
Node Affinity:
Required During Scheduling Ignored During Execution:
Node Selector Terms:
Match Expressions:
Key: x.z-worker_group-name
Operator: In
Values:
system
Number Of Instances: 2
Postgresql:
Version: 14
Prepared Databases:
x:
Resources:
Limits:
Cpu: 750m
Memory: 1Gi
Requests:
Cpu: 750m
Memory: 1Gi
Team Id: xy
Users:
xz:
superuser
createdb
Volume:
Size: 10Gi
Status:
Postgres Cluster Status: Creating
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Create 36s postgres-operator Started creation of new cluster resources
Normal Endpoints 36s postgres-operator Endpoint "x-aws-sae1-prdt-ppd-dev/x-postgres-server-aws-sae1-prdt-ppd-dev" has been successfully created
Normal Services 36s postgres-operator The service "x-aws-sae1-prdt-ppd-dev/x-postgres-server-aws-sae1-prdt-ppd-dev" for role master has been successfully created
Normal Services 36s postgres-operator The service "x-aws-sae1-prdt-ppd-dev/x-postgres-server-aws-sae1-prdt-ppd-dev-repl" for role replica has been successfully created
Normal Secrets 35s postgres-operator The secrets have been successfully created
Normal StatefulSet 35s postgres-operator Statefulset "x-aws-sae1-prdt-ppd-dev/x-postgres-server-aws-sae1-prdt-ppd-dev" has been successfully created
- In addition, other resources include the PVCs created by the deployment
Volumes:
pgdata:
Type: PersistentVolumeClaim (a reference to a PersistentVolumeClaim in the same namespace)
ClaimName: pgdata-x-postgres-server-aws-sae1-prdt-ppd-dev-0
ReadOnly: false
🎉 What should we see?
- ArgoCD helps visualizing and automating GitOps operations based on the deployment
- All the resources listed and associated with the CRD
- Endpoints
- Services
- Secrets
- StatefulSet
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Create 36s postgres-operator Started creation of new cluster resources
Normal Endpoints 36s postgres-operator Endpoint "x-aws-sae1-prdt-ppd-dev/x-postgres-server-aws-sae1-prdt-ppd-dev" has been successfully created
Normal Services 36s postgres-operator The service "x-aws-sae1-prdt-ppd-dev/x-postgres-server-aws-sae1-prdt-ppd-dev" for role master has been successfully created
Normal Services 36s postgres-operator The service "x-aws-sae1-prdt-ppd-dev/x-postgres-server-aws-sae1-prdt-ppd-dev-repl" for role replica has been successfully created
Normal Secrets 35s postgres-operator The secrets have been successfully created
Normal StatefulSet 35s postgres-operator Statefulset "x-aws-sae1-prdt-ppd-dev/x-postgres-server-aws-sae1-prdt-ppd-dev" has been successfully created
- It should display all of them on the same screen

🔧 Configuration Used
- A configuration in ArgoCD looks like the following:
- Application.yaml that links a Github Repo resource (Ref, Dir) to a Namespace in a K8S cluster
SEE: https://argo-cd.readthedocs.io/en/stable/operator-manual/declarative-setup/#applications
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the ArgoCD Application.yaml configuration described in the issue and the Kubernetes CRD instance shown in the kubectl describe output. Determine how the operator-created Endpoints, Services, Secrets, StatefulSet, and PVCs should be associated with that instance for ArgoCD to display them together. Done means all listed resources appear on the same ArgoCD screen.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- kubernetes, postgresql
- Domain
- databases, devops
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100