apiVersion: batch/v1 kind: Job metadata: name: notesnook-db-init namespace: notesnook annotations: argocd.argoproj.io/hook: PostSync argocd.argoproj.io/hook-delete-policy: BeforeHookCreation spec: backoffLimit: 20 template: spec: restartPolicy: OnFailure containers: - name: rs-init image: mongo:7.0.12 command: ["bash", "-c"] args: - | until mongosh mongodb://notesnook-db:27017 --quiet --eval 'db.runCommand("ping").ok' ; do echo "waiting for mongod..."; sleep 3; done mongosh mongodb://notesnook-db:27017 --quiet --eval ' try { rs.status() } catch (e) { rs.initiate({_id:"rs0", members:[{_id:0, host:"notesnook-db:27017"}]}) } ' echo "replica set ready"