diff --git a/build/pbm-entry.sh b/build/pbm-entry.sh index e85e3eaef2..8b921fce63 100755 --- a/build/pbm-entry.sh +++ b/build/pbm-entry.sh @@ -1,13 +1,21 @@ #!/bin/bash -PBM_MONGODB_URI="mongodb://${PBM_AGENT_MONGODB_USERNAME}:${PBM_AGENT_MONGODB_PASSWORD}@localhost:${PBM_MONGODB_PORT}/?replicaSet=${PBM_MONGODB_REPLSET}" +function urlencode { + uri="$1" + echo -n "$uri" | jq -s -R -r @uri +} -if [[ -z ${PBM_AGENT_TLS_ENABLED} ]] || [[ ${PBM_AGENT_TLS_ENABLED} == "true" ]]; then - MONGO_SSL_DIR=/etc/mongodb-ssl - if [[ -f "${MONGO_SSL_DIR}/tls.crt" ]] && [[ -f "${MONGO_SSL_DIR}/tls.key" ]]; then - PBM_MONGODB_URI="${PBM_MONGODB_URI}&tls=true&tlsCertificateKeyFile=%2Ftmp%2Ftls.pem&tlsCAFile=${MONGO_SSL_DIR}%2Fca.crt&tlsInsecure=true" - cat "${MONGO_SSL_DIR}/tls.key" "${MONGO_SSL_DIR}/tls.crt" >/tmp/tls.pem +if [[ -z $POD_NAME ]]; then + PBM_MONGODB_URI="mongodb://$(urlencode "$PBM_AGENT_MONGODB_USERNAME"):$(urlencode "$PBM_AGENT_MONGODB_PASSWORD")@localhost:${PBM_MONGODB_PORT}/?replicaSet=${PBM_MONGODB_REPLSET}" + if [[ -z ${PBM_AGENT_TLS_ENABLED} ]] || [[ ${PBM_AGENT_TLS_ENABLED} == "true" ]]; then + MONGO_SSL_DIR=/etc/mongodb-ssl + if [[ -f "${MONGO_SSL_DIR}/tls.crt" ]] && [[ -f "${MONGO_SSL_DIR}/tls.key" ]]; then + PBM_MONGODB_URI="${PBM_MONGODB_URI}&tls=true&tlsCertificateKeyFile=%2Ftmp%2Ftls.pem&tlsCAFile=${MONGO_SSL_DIR}%2Fca.crt&tlsInsecure=true" + cat "${MONGO_SSL_DIR}/tls.key" "${MONGO_SSL_DIR}/tls.crt" >/tmp/tls.pem + fi fi +else + PBM_MONGODB_URI="mongodb://$(urlencode "$PBM_AGENT_MONGODB_USERNAME"):$(urlencode "$PBM_AGENT_MONGODB_PASSWORD")@$POD_NAME" fi export PBM_MONGODB_URI diff --git a/build/physical-restore-ps-entry.sh b/build/physical-restore-ps-entry.sh index 8927c16f1d..72f8045a69 100755 --- a/build/physical-restore-ps-entry.sh +++ b/build/physical-restore-ps-entry.sh @@ -7,7 +7,7 @@ log=/tmp/pbm-agent.log touch /opt/percona/restore-in-progress -/opt/percona/pbm-agent 1>&2 2>${log} & +/opt/percona/pbm-entry.sh /opt/percona/pbm-agent 1>&2 2>${log} & /opt/percona/ps-entry.sh "$@" 1>&2 2>/tmp/mongod.log echo "Physical restore in progress" diff --git a/e2e-tests/conf/secrets.yml b/e2e-tests/conf/secrets.yml index 47ae5012ff..df4f20924b 100644 --- a/e2e-tests/conf/secrets.yml +++ b/e2e-tests/conf/secrets.yml @@ -4,8 +4,8 @@ metadata: name: some-users type: Opaque data: - MONGODB_BACKUP_USER: YmFja3Vw - MONGODB_BACKUP_PASSWORD: YmFja3VwMTIzNDU2 + MONGODB_BACKUP_USER: YmFja3VwJCMl + MONGODB_BACKUP_PASSWORD: YmFja3VwMTIzNDU2Iw== MONGODB_DATABASE_ADMIN_USER: ZGF0YWJhc2VBZG1pbg== MONGODB_DATABASE_ADMIN_PASSWORD: ZGF0YWJhc2VBZG1pbjEyMzQ1Ng== MONGODB_USER_ADMIN_USER: dXNlckFkbWlu diff --git a/e2e-tests/custom-replset-name/conf/some-name.yml b/e2e-tests/custom-replset-name/conf/some-name.yml index 9dd2b04398..c34b9de33d 100644 --- a/e2e-tests/custom-replset-name/conf/some-name.yml +++ b/e2e-tests/custom-replset-name/conf/some-name.yml @@ -3,7 +3,7 @@ kind: PerconaServerMongoDB metadata: name: some-name spec: - crVersion: 1.16.0 + crVersion: 1.18.0 backup: enabled: true image: percona/percona-backup-mongodb:2.0.4 diff --git a/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-cfg-oc.yml b/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-cfg-oc.yml index b7b8b72f86..e035b04ba8 100644 --- a/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-cfg-oc.yml +++ b/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-cfg-oc.yml @@ -165,8 +165,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-cfg.yml b/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-cfg.yml index 6935997d8b..c5955afaf0 100644 --- a/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-cfg.yml +++ b/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-cfg.yml @@ -166,8 +166,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-rs0-oc.yml b/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-rs0-oc.yml index 851fb27e0d..3c129f9cea 100644 --- a/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-rs0-oc.yml +++ b/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-rs0-oc.yml @@ -172,8 +172,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-rs0.yml b/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-rs0.yml index 307da430d1..88b1879edd 100644 --- a/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-rs0.yml +++ b/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-rs0.yml @@ -173,8 +173,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/default-cr/compare/statefulset_my-cluster-name-cfg-oc.yml b/e2e-tests/default-cr/compare/statefulset_my-cluster-name-cfg-oc.yml index d2b4a54067..8185d012dd 100644 --- a/e2e-tests/default-cr/compare/statefulset_my-cluster-name-cfg-oc.yml +++ b/e2e-tests/default-cr/compare/statefulset_my-cluster-name-cfg-oc.yml @@ -171,8 +171,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/default-cr/compare/statefulset_my-cluster-name-cfg.yml b/e2e-tests/default-cr/compare/statefulset_my-cluster-name-cfg.yml index a12630b6c2..afa947b546 100644 --- a/e2e-tests/default-cr/compare/statefulset_my-cluster-name-cfg.yml +++ b/e2e-tests/default-cr/compare/statefulset_my-cluster-name-cfg.yml @@ -172,8 +172,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/default-cr/compare/statefulset_my-cluster-name-rs0-oc.yml b/e2e-tests/default-cr/compare/statefulset_my-cluster-name-rs0-oc.yml index 198c7abe0f..9b7a710ccb 100644 --- a/e2e-tests/default-cr/compare/statefulset_my-cluster-name-rs0-oc.yml +++ b/e2e-tests/default-cr/compare/statefulset_my-cluster-name-rs0-oc.yml @@ -171,8 +171,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/default-cr/compare/statefulset_my-cluster-name-rs0.yml b/e2e-tests/default-cr/compare/statefulset_my-cluster-name-rs0.yml index 18b7dbf1e4..b511c42cdf 100644 --- a/e2e-tests/default-cr/compare/statefulset_my-cluster-name-rs0.yml +++ b/e2e-tests/default-cr/compare/statefulset_my-cluster-name-rs0.yml @@ -172,8 +172,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/demand-backup-eks-credentials/compare/statefulset_some-name-rs0.yml b/e2e-tests/demand-backup-eks-credentials/compare/statefulset_some-name-rs0.yml index 7d0ed280db..b9cfbcc879 100644 --- a/e2e-tests/demand-backup-eks-credentials/compare/statefulset_some-name-rs0.yml +++ b/e2e-tests/demand-backup-eks-credentials/compare/statefulset_some-name-rs0.yml @@ -172,8 +172,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/demand-backup-fs/compare/statefulset_some-name-rs0.yml b/e2e-tests/demand-backup-fs/compare/statefulset_some-name-rs0.yml index 15b556f506..72a569e36f 100644 --- a/e2e-tests/demand-backup-fs/compare/statefulset_some-name-rs0.yml +++ b/e2e-tests/demand-backup-fs/compare/statefulset_some-name-rs0.yml @@ -181,8 +181,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/demand-backup-fs/run b/e2e-tests/demand-backup-fs/run index 044837f026..4f769e61f8 100755 --- a/e2e-tests/demand-backup-fs/run +++ b/e2e-tests/demand-backup-fs/run @@ -35,7 +35,7 @@ run_recovery_check() { get_latest_oplog_chunk_ts() { local cluster=$1 - echo $(kubectl_bin exec ${cluster}-rs0-0 -c backup-agent -- pbm status -o json | jq '.backups.pitrChunks.pitrChunks | last | .range.end') + echo $(kubectl_bin exec ${cluster}-rs0-0 -c backup-agent -- /opt/percona/pbm-entry.sh pbm status -o json | jq '.backups.pitrChunks.pitrChunks | last | .range.end') } format_date() { @@ -46,7 +46,7 @@ format_date() { wait_for_oplogs() { local cluster1=$1 - local backup_last_write=$(kubectl_bin exec ${cluster}-rs0-0 -c backup-agent -- pbm status -o json | jq .backups.snapshot[0].restoreTo) + local backup_last_write=$(kubectl_bin exec ${cluster}-rs0-0 -c backup-agent -- /opt/percona/pbm-entry.sh pbm status -o json | jq .backups.snapshot[0].restoreTo) local retries=0 local last_chunk=$(get_latest_oplog_chunk_ts ${cluster}) @@ -94,7 +94,6 @@ write_data() { compare_mongo_cmd "find" "myApp:myPass@${cluster}-rs0.${namespace}" "${find_prefix}" ".svc.cluster.local" "myApp" "test" } - cluster="some-name" create_infra ${namespace} diff --git a/e2e-tests/demand-backup-physical-sharded/compare/statefulset_some-name-rs0_restore_sharded-oc.yml b/e2e-tests/demand-backup-physical-sharded/compare/statefulset_some-name-rs0_restore_sharded-oc.yml index da0c8c96c4..d06f3fd15a 100644 --- a/e2e-tests/demand-backup-physical-sharded/compare/statefulset_some-name-rs0_restore_sharded-oc.yml +++ b/e2e-tests/demand-backup-physical-sharded/compare/statefulset_some-name-rs0_restore_sharded-oc.yml @@ -83,8 +83,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) envFrom: - secretRef: name: internal-some-name-users diff --git a/e2e-tests/demand-backup-physical-sharded/compare/statefulset_some-name-rs0_restore_sharded.yml b/e2e-tests/demand-backup-physical-sharded/compare/statefulset_some-name-rs0_restore_sharded.yml index 7b9bd4007c..909b4ad37c 100644 --- a/e2e-tests/demand-backup-physical-sharded/compare/statefulset_some-name-rs0_restore_sharded.yml +++ b/e2e-tests/demand-backup-physical-sharded/compare/statefulset_some-name-rs0_restore_sharded.yml @@ -83,8 +83,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) envFrom: - secretRef: name: internal-some-name-users diff --git a/e2e-tests/demand-backup-physical/compare/statefulset_some-name-rs0_restore-arbiter-nv-oc.yml b/e2e-tests/demand-backup-physical/compare/statefulset_some-name-rs0_restore-arbiter-nv-oc.yml index 67124caaec..127c82d680 100644 --- a/e2e-tests/demand-backup-physical/compare/statefulset_some-name-rs0_restore-arbiter-nv-oc.yml +++ b/e2e-tests/demand-backup-physical/compare/statefulset_some-name-rs0_restore-arbiter-nv-oc.yml @@ -82,8 +82,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) envFrom: - secretRef: name: internal-some-name-users diff --git a/e2e-tests/demand-backup-physical/compare/statefulset_some-name-rs0_restore-arbiter-nv.yml b/e2e-tests/demand-backup-physical/compare/statefulset_some-name-rs0_restore-arbiter-nv.yml index 89ca6ec396..0936cdd2d7 100644 --- a/e2e-tests/demand-backup-physical/compare/statefulset_some-name-rs0_restore-arbiter-nv.yml +++ b/e2e-tests/demand-backup-physical/compare/statefulset_some-name-rs0_restore-arbiter-nv.yml @@ -82,8 +82,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) envFrom: - secretRef: name: internal-some-name-users diff --git a/e2e-tests/demand-backup-physical/compare/statefulset_some-name-rs0_restore-oc.yml b/e2e-tests/demand-backup-physical/compare/statefulset_some-name-rs0_restore-oc.yml index 9725456cc9..ed538b5558 100644 --- a/e2e-tests/demand-backup-physical/compare/statefulset_some-name-rs0_restore-oc.yml +++ b/e2e-tests/demand-backup-physical/compare/statefulset_some-name-rs0_restore-oc.yml @@ -82,8 +82,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) envFrom: - secretRef: name: internal-some-name-users diff --git a/e2e-tests/demand-backup-physical/compare/statefulset_some-name-rs0_restore.yml b/e2e-tests/demand-backup-physical/compare/statefulset_some-name-rs0_restore.yml index f5a3db62f8..5dcf57d475 100644 --- a/e2e-tests/demand-backup-physical/compare/statefulset_some-name-rs0_restore.yml +++ b/e2e-tests/demand-backup-physical/compare/statefulset_some-name-rs0_restore.yml @@ -82,8 +82,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) envFrom: - secretRef: name: internal-some-name-users diff --git a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-cfg-4-oc.yml b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-cfg-4-oc.yml index 3af5d4247e..2e83633d47 100644 --- a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-cfg-4-oc.yml +++ b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-cfg-4-oc.yml @@ -186,8 +186,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-cfg-oc.yml b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-cfg-oc.yml index 8cdb41c8c2..c40d25011a 100644 --- a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-cfg-oc.yml +++ b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-cfg-oc.yml @@ -186,8 +186,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-cfg.yml b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-cfg.yml index 468ac78982..6bb1a973bd 100644 --- a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-cfg.yml +++ b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-cfg.yml @@ -187,8 +187,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs0-4-oc.yml b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs0-4-oc.yml index ea31b859d8..0a214ab684 100644 --- a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs0-4-oc.yml +++ b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs0-4-oc.yml @@ -174,8 +174,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs0-oc.yml b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs0-oc.yml index 198b29fa59..e00ec3bd95 100644 --- a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs0-oc.yml +++ b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs0-oc.yml @@ -174,8 +174,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs0.yml b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs0.yml index 24ffe9ab28..39547b9f5c 100644 --- a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs0.yml +++ b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs0.yml @@ -175,8 +175,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs1-oc.yml b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs1-oc.yml index 84bd8fea48..b27110b1a1 100644 --- a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs1-oc.yml +++ b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs1-oc.yml @@ -174,8 +174,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs1.yml b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs1.yml index 4d7284b8e5..00c74e2edf 100644 --- a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs1.yml +++ b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs1.yml @@ -175,8 +175,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs2-oc.yml b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs2-oc.yml index ad1563ceee..e9fb25f060 100644 --- a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs2-oc.yml +++ b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs2-oc.yml @@ -184,8 +184,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs2.yml b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs2.yml index 2245d41cf8..c446b96ce6 100644 --- a/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs2.yml +++ b/e2e-tests/demand-backup-sharded/compare/statefulset_some-name-rs2.yml @@ -185,8 +185,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/demand-backup/compare/statefulset_some-name-rs0-oc.yml b/e2e-tests/demand-backup/compare/statefulset_some-name-rs0-oc.yml index 0da2b27db3..2431be7ad5 100644 --- a/e2e-tests/demand-backup/compare/statefulset_some-name-rs0-oc.yml +++ b/e2e-tests/demand-backup/compare/statefulset_some-name-rs0-oc.yml @@ -171,8 +171,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/demand-backup/compare/statefulset_some-name-rs0.yml b/e2e-tests/demand-backup/compare/statefulset_some-name-rs0.yml index 7d0ed280db..b9cfbcc879 100644 --- a/e2e-tests/demand-backup/compare/statefulset_some-name-rs0.yml +++ b/e2e-tests/demand-backup/compare/statefulset_some-name-rs0.yml @@ -172,8 +172,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/functions b/e2e-tests/functions index 90921a8444..6e00e076c3 100755 --- a/e2e-tests/functions +++ b/e2e-tests/functions @@ -250,7 +250,7 @@ wait_for_pbm_operations() { set +o xtrace echo -n "waiting for PBM operation to finish" retry=0 - until [[ $(kubectl_bin exec ${cluster}-rs0-0 -c backup-agent -- pbm status -o json -s running | jq -r .running.opID) == null ]]; do + until [[ $(kubectl_bin exec ${cluster}-rs0-0 -c backup-agent -- /opt/percona/pbm-entry.sh pbm status -o json -s running | jq -r .running.opID) == null ]]; do if [ $retry -ge 540 ]; then echo max retry count $retry reached. something went wrong with PBM operations exit 1 @@ -262,7 +262,6 @@ wait_for_pbm_operations() { set_debug } - run_restore() { local backup_name=$1 @@ -1189,6 +1188,11 @@ getSecretData() { echo "$data" } +function urlencode { + uri="$1" + echo -n "$uri" | jq -s -R -r @uri +} + check_mongo_auth() { local uri="$1" @@ -1517,10 +1521,10 @@ get_latest_restorable_time() { # "pbm-agent status" can return different timestamp in first few seconds # we need to get it twice to be sure that timestamp was not changed until [[ $first_timestamp != "" && $first_timestamp != "null" && $first_timestamp == $second_timestamp ]]; do - first_timestamp=$(kubectl_bin exec "$cluster-0" -c backup-agent -- pbm status -o json | jq '.backups.pitrChunks.pitrChunks | last | .range.end') + first_timestamp=$(kubectl_bin exec "$cluster-0" -c backup-agent -- /opt/percona/pbm-entry.sh pbm status -o json | jq '.backups.pitrChunks.pitrChunks | last | .range.end') sleep 5 if [[ $first_timestamp != "" && $first_timestamp != "null" ]]; then - second_timestamp=$(kubectl_bin exec "$cluster-0" -c backup-agent -- pbm status -o json | jq '.backups.pitrChunks.pitrChunks | last | .range.end') + second_timestamp=$(kubectl_bin exec "$cluster-0" -c backup-agent -- /opt/percona/pbm-entry.sh pbm status -o json | jq '.backups.pitrChunks.pitrChunks | last | .range.end') fi let retry+=1 if [[ $retry -gt 30 ]]; then diff --git a/e2e-tests/liveness/compare/statefulset_liveness-rs0-changed-oc.yml b/e2e-tests/liveness/compare/statefulset_liveness-rs0-changed-oc.yml index ed56332cbd..9735721526 100644 --- a/e2e-tests/liveness/compare/statefulset_liveness-rs0-changed-oc.yml +++ b/e2e-tests/liveness/compare/statefulset_liveness-rs0-changed-oc.yml @@ -166,8 +166,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/liveness/compare/statefulset_liveness-rs0-changed.yml b/e2e-tests/liveness/compare/statefulset_liveness-rs0-changed.yml index 2b864fe03f..103c1512cf 100644 --- a/e2e-tests/liveness/compare/statefulset_liveness-rs0-changed.yml +++ b/e2e-tests/liveness/compare/statefulset_liveness-rs0-changed.yml @@ -167,8 +167,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/one-pod/compare/statefulset_one-pod-rs0-oc.yml b/e2e-tests/one-pod/compare/statefulset_one-pod-rs0-oc.yml index 38bf6d3d57..0f859a472d 100644 --- a/e2e-tests/one-pod/compare/statefulset_one-pod-rs0-oc.yml +++ b/e2e-tests/one-pod/compare/statefulset_one-pod-rs0-oc.yml @@ -177,8 +177,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/one-pod/compare/statefulset_one-pod-rs0-secret-oc.yml b/e2e-tests/one-pod/compare/statefulset_one-pod-rs0-secret-oc.yml index b99c291809..60d6d4a904 100644 --- a/e2e-tests/one-pod/compare/statefulset_one-pod-rs0-secret-oc.yml +++ b/e2e-tests/one-pod/compare/statefulset_one-pod-rs0-secret-oc.yml @@ -177,8 +177,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/one-pod/compare/statefulset_one-pod-rs0-secret.yml b/e2e-tests/one-pod/compare/statefulset_one-pod-rs0-secret.yml index dc3169a016..008cdf9f49 100644 --- a/e2e-tests/one-pod/compare/statefulset_one-pod-rs0-secret.yml +++ b/e2e-tests/one-pod/compare/statefulset_one-pod-rs0-secret.yml @@ -178,8 +178,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/one-pod/compare/statefulset_one-pod-rs0.yml b/e2e-tests/one-pod/compare/statefulset_one-pod-rs0.yml index 888e3e1b56..04cbc620bd 100644 --- a/e2e-tests/one-pod/compare/statefulset_one-pod-rs0.yml +++ b/e2e-tests/one-pod/compare/statefulset_one-pod-rs0.yml @@ -178,8 +178,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-physical/compare/statefulset_some-name-cfg-4-oc.yml b/e2e-tests/pitr-physical/compare/statefulset_some-name-cfg-4-oc.yml index 41d891a44e..65b3aa25b3 100644 --- a/e2e-tests/pitr-physical/compare/statefulset_some-name-cfg-4-oc.yml +++ b/e2e-tests/pitr-physical/compare/statefulset_some-name-cfg-4-oc.yml @@ -185,8 +185,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-physical/compare/statefulset_some-name-cfg-oc.yml b/e2e-tests/pitr-physical/compare/statefulset_some-name-cfg-oc.yml index 41d891a44e..65b3aa25b3 100644 --- a/e2e-tests/pitr-physical/compare/statefulset_some-name-cfg-oc.yml +++ b/e2e-tests/pitr-physical/compare/statefulset_some-name-cfg-oc.yml @@ -185,8 +185,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-physical/compare/statefulset_some-name-cfg.yml b/e2e-tests/pitr-physical/compare/statefulset_some-name-cfg.yml index 1704dd4295..eecb397cf4 100644 --- a/e2e-tests/pitr-physical/compare/statefulset_some-name-cfg.yml +++ b/e2e-tests/pitr-physical/compare/statefulset_some-name-cfg.yml @@ -186,8 +186,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-physical/compare/statefulset_some-name-rs0-4-oc.yml b/e2e-tests/pitr-physical/compare/statefulset_some-name-rs0-4-oc.yml index 198b29fa59..e00ec3bd95 100644 --- a/e2e-tests/pitr-physical/compare/statefulset_some-name-rs0-4-oc.yml +++ b/e2e-tests/pitr-physical/compare/statefulset_some-name-rs0-4-oc.yml @@ -174,8 +174,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-physical/compare/statefulset_some-name-rs0-oc.yml b/e2e-tests/pitr-physical/compare/statefulset_some-name-rs0-oc.yml index 198b29fa59..e00ec3bd95 100644 --- a/e2e-tests/pitr-physical/compare/statefulset_some-name-rs0-oc.yml +++ b/e2e-tests/pitr-physical/compare/statefulset_some-name-rs0-oc.yml @@ -174,8 +174,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-physical/compare/statefulset_some-name-rs0.yml b/e2e-tests/pitr-physical/compare/statefulset_some-name-rs0.yml index 4682000eab..9615c98a07 100644 --- a/e2e-tests/pitr-physical/compare/statefulset_some-name-rs0.yml +++ b/e2e-tests/pitr-physical/compare/statefulset_some-name-rs0.yml @@ -175,8 +175,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-physical/compare/statefulset_some-name-rs1-4-oc.yml b/e2e-tests/pitr-physical/compare/statefulset_some-name-rs1-4-oc.yml index 84bd8fea48..b27110b1a1 100644 --- a/e2e-tests/pitr-physical/compare/statefulset_some-name-rs1-4-oc.yml +++ b/e2e-tests/pitr-physical/compare/statefulset_some-name-rs1-4-oc.yml @@ -174,8 +174,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-physical/compare/statefulset_some-name-rs1-oc.yml b/e2e-tests/pitr-physical/compare/statefulset_some-name-rs1-oc.yml index baeff78d95..5990f473fc 100644 --- a/e2e-tests/pitr-physical/compare/statefulset_some-name-rs1-oc.yml +++ b/e2e-tests/pitr-physical/compare/statefulset_some-name-rs1-oc.yml @@ -172,8 +172,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-physical/compare/statefulset_some-name-rs1.yml b/e2e-tests/pitr-physical/compare/statefulset_some-name-rs1.yml index 4d7284b8e5..00c74e2edf 100644 --- a/e2e-tests/pitr-physical/compare/statefulset_some-name-rs1.yml +++ b/e2e-tests/pitr-physical/compare/statefulset_some-name-rs1.yml @@ -175,8 +175,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-physical/compare/statefulset_some-name-rs2-4-oc.yml b/e2e-tests/pitr-physical/compare/statefulset_some-name-rs2-4-oc.yml index ad1563ceee..e9fb25f060 100644 --- a/e2e-tests/pitr-physical/compare/statefulset_some-name-rs2-4-oc.yml +++ b/e2e-tests/pitr-physical/compare/statefulset_some-name-rs2-4-oc.yml @@ -184,8 +184,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-physical/compare/statefulset_some-name-rs2-oc.yml b/e2e-tests/pitr-physical/compare/statefulset_some-name-rs2-oc.yml index 47f062d5cb..6c227cfd36 100644 --- a/e2e-tests/pitr-physical/compare/statefulset_some-name-rs2-oc.yml +++ b/e2e-tests/pitr-physical/compare/statefulset_some-name-rs2-oc.yml @@ -182,8 +182,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-physical/compare/statefulset_some-name-rs2.yml b/e2e-tests/pitr-physical/compare/statefulset_some-name-rs2.yml index 2245d41cf8..c446b96ce6 100644 --- a/e2e-tests/pitr-physical/compare/statefulset_some-name-rs2.yml +++ b/e2e-tests/pitr-physical/compare/statefulset_some-name-rs2.yml @@ -185,8 +185,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-physical/run b/e2e-tests/pitr-physical/run index 49ae125d4a..d332889381 100755 --- a/e2e-tests/pitr-physical/run +++ b/e2e-tests/pitr-physical/run @@ -13,7 +13,7 @@ format_date() { get_latest_oplog_chunk_ts() { local cluster=$1 - echo $(kubectl_bin exec $cluster-rs0-0 -c backup-agent -- pbm status -o json | jq '.backups.pitrChunks.pitrChunks | last | .range.end') + echo $(kubectl_bin exec $cluster-rs0-0 -c backup-agent -- /opt/percona/pbm-entry.sh pbm status -o json | jq '.backups.pitrChunks.pitrChunks | last | .range.end') } write_document() { @@ -156,7 +156,7 @@ main() { write_document "-2nd" - backup_last_write=$(kubectl_bin exec $cluster-rs0-0 -c backup-agent -- pbm status -o json | jq .backups.snapshot[0].restoreTo) + backup_last_write=$(kubectl_bin exec $cluster-rs0-0 -c backup-agent -- /opt/percona/pbm-entry.sh pbm status -o json | jq .backups.snapshot[0].restoreTo) last_chunk=$(get_latest_oplog_chunk_ts $cluster) retries=0 diff --git a/e2e-tests/pitr-sharded/compare/statefulset_some-name-cfg-4-oc.yml b/e2e-tests/pitr-sharded/compare/statefulset_some-name-cfg-4-oc.yml index 3af5d4247e..2e83633d47 100644 --- a/e2e-tests/pitr-sharded/compare/statefulset_some-name-cfg-4-oc.yml +++ b/e2e-tests/pitr-sharded/compare/statefulset_some-name-cfg-4-oc.yml @@ -186,8 +186,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-sharded/compare/statefulset_some-name-cfg-oc.yml b/e2e-tests/pitr-sharded/compare/statefulset_some-name-cfg-oc.yml index 8cdb41c8c2..c40d25011a 100644 --- a/e2e-tests/pitr-sharded/compare/statefulset_some-name-cfg-oc.yml +++ b/e2e-tests/pitr-sharded/compare/statefulset_some-name-cfg-oc.yml @@ -186,8 +186,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-sharded/compare/statefulset_some-name-cfg.yml b/e2e-tests/pitr-sharded/compare/statefulset_some-name-cfg.yml index 468ac78982..6bb1a973bd 100644 --- a/e2e-tests/pitr-sharded/compare/statefulset_some-name-cfg.yml +++ b/e2e-tests/pitr-sharded/compare/statefulset_some-name-cfg.yml @@ -187,8 +187,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs0-4-oc.yml b/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs0-4-oc.yml index ea31b859d8..0a214ab684 100644 --- a/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs0-4-oc.yml +++ b/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs0-4-oc.yml @@ -174,8 +174,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs0-oc.yml b/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs0-oc.yml index 198b29fa59..e00ec3bd95 100644 --- a/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs0-oc.yml +++ b/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs0-oc.yml @@ -174,8 +174,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs0.yml b/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs0.yml index 24ffe9ab28..39547b9f5c 100644 --- a/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs0.yml +++ b/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs0.yml @@ -175,8 +175,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs1-4-oc.yml b/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs1-4-oc.yml index 84bd8fea48..b27110b1a1 100644 --- a/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs1-4-oc.yml +++ b/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs1-4-oc.yml @@ -174,8 +174,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs1-oc.yml b/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs1-oc.yml index baeff78d95..5990f473fc 100644 --- a/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs1-oc.yml +++ b/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs1-oc.yml @@ -172,8 +172,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs1.yml b/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs1.yml index 4d7284b8e5..00c74e2edf 100644 --- a/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs1.yml +++ b/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs1.yml @@ -175,8 +175,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs2-4-oc.yml b/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs2-4-oc.yml index ad1563ceee..e9fb25f060 100644 --- a/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs2-4-oc.yml +++ b/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs2-4-oc.yml @@ -184,8 +184,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs2-oc.yml b/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs2-oc.yml index 47f062d5cb..6c227cfd36 100644 --- a/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs2-oc.yml +++ b/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs2-oc.yml @@ -182,8 +182,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs2.yml b/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs2.yml index 2245d41cf8..c446b96ce6 100644 --- a/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs2.yml +++ b/e2e-tests/pitr-sharded/compare/statefulset_some-name-rs2.yml @@ -185,8 +185,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr-sharded/run b/e2e-tests/pitr-sharded/run index 94638aed9a..82ecb50d02 100755 --- a/e2e-tests/pitr-sharded/run +++ b/e2e-tests/pitr-sharded/run @@ -130,7 +130,7 @@ main() { backup_name="backup-minio" else kubectl_bin patch psmdb some-name --type=merge -p '{"spec":{"backup":{"pitr":{"enabled":true}}}}' - kubectl_bin exec some-name-rs0-0 -it -c backup-agent -- pbm status + kubectl_bin exec some-name-rs0-0 -it -c backup-agent -- /opt/percona/pbm-entry.sh pbm status exit_status=$? if [ $exit_status -gt 0 ]; then exit 1 diff --git a/e2e-tests/pitr/compare/statefulset_some-name-rs0-oc.yml b/e2e-tests/pitr/compare/statefulset_some-name-rs0-oc.yml index 0da2b27db3..2431be7ad5 100644 --- a/e2e-tests/pitr/compare/statefulset_some-name-rs0-oc.yml +++ b/e2e-tests/pitr/compare/statefulset_some-name-rs0-oc.yml @@ -171,8 +171,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/pitr/compare/statefulset_some-name-rs0.yml b/e2e-tests/pitr/compare/statefulset_some-name-rs0.yml index 7d0ed280db..b9cfbcc879 100644 --- a/e2e-tests/pitr/compare/statefulset_some-name-rs0.yml +++ b/e2e-tests/pitr/compare/statefulset_some-name-rs0.yml @@ -172,8 +172,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/scheduled-backup/compare/statefulset_some-name-rs0-oc.yml b/e2e-tests/scheduled-backup/compare/statefulset_some-name-rs0-oc.yml index 4c2b4ef8a4..f71360b098 100644 --- a/e2e-tests/scheduled-backup/compare/statefulset_some-name-rs0-oc.yml +++ b/e2e-tests/scheduled-backup/compare/statefulset_some-name-rs0-oc.yml @@ -171,8 +171,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/scheduled-backup/compare/statefulset_some-name-rs0.yml b/e2e-tests/scheduled-backup/compare/statefulset_some-name-rs0.yml index 945ec3743c..bb6ed018c7 100644 --- a/e2e-tests/scheduled-backup/compare/statefulset_some-name-rs0.yml +++ b/e2e-tests/scheduled-backup/compare/statefulset_some-name-rs0.yml @@ -172,8 +172,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/security-context/compare/statefulset_sec-context-rs0-changed.yml b/e2e-tests/security-context/compare/statefulset_sec-context-rs0-changed.yml index 83f217fa8c..bc5dbba6f2 100644 --- a/e2e-tests/security-context/compare/statefulset_sec-context-rs0-changed.yml +++ b/e2e-tests/security-context/compare/statefulset_sec-context-rs0-changed.yml @@ -172,8 +172,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/service-per-pod/compare/statefulset_cluster-ip-rs0-oc.yml b/e2e-tests/service-per-pod/compare/statefulset_cluster-ip-rs0-oc.yml index c8cbb6ac4f..091b1966b2 100644 --- a/e2e-tests/service-per-pod/compare/statefulset_cluster-ip-rs0-oc.yml +++ b/e2e-tests/service-per-pod/compare/statefulset_cluster-ip-rs0-oc.yml @@ -164,8 +164,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/service-per-pod/compare/statefulset_cluster-ip-rs0.yml b/e2e-tests/service-per-pod/compare/statefulset_cluster-ip-rs0.yml index df36e2eee6..fdfa7cbdf2 100644 --- a/e2e-tests/service-per-pod/compare/statefulset_cluster-ip-rs0.yml +++ b/e2e-tests/service-per-pod/compare/statefulset_cluster-ip-rs0.yml @@ -165,8 +165,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/service-per-pod/compare/statefulset_local-balancer-rs0-oc.yml b/e2e-tests/service-per-pod/compare/statefulset_local-balancer-rs0-oc.yml index 673b027cff..fa48de1e28 100644 --- a/e2e-tests/service-per-pod/compare/statefulset_local-balancer-rs0-oc.yml +++ b/e2e-tests/service-per-pod/compare/statefulset_local-balancer-rs0-oc.yml @@ -164,8 +164,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/service-per-pod/compare/statefulset_local-balancer-rs0.yml b/e2e-tests/service-per-pod/compare/statefulset_local-balancer-rs0.yml index 976052c5c0..86e4d4094c 100644 --- a/e2e-tests/service-per-pod/compare/statefulset_local-balancer-rs0.yml +++ b/e2e-tests/service-per-pod/compare/statefulset_local-balancer-rs0.yml @@ -165,8 +165,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/service-per-pod/compare/statefulset_node-port-rs0-oc.yml b/e2e-tests/service-per-pod/compare/statefulset_node-port-rs0-oc.yml index 0092629b13..dcbcf3bfe9 100644 --- a/e2e-tests/service-per-pod/compare/statefulset_node-port-rs0-oc.yml +++ b/e2e-tests/service-per-pod/compare/statefulset_node-port-rs0-oc.yml @@ -164,8 +164,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/service-per-pod/compare/statefulset_node-port-rs0.yml b/e2e-tests/service-per-pod/compare/statefulset_node-port-rs0.yml index ecbfd0f053..d825f5aa46 100644 --- a/e2e-tests/service-per-pod/compare/statefulset_node-port-rs0.yml +++ b/e2e-tests/service-per-pod/compare/statefulset_node-port-rs0.yml @@ -165,8 +165,6 @@ spec: fieldRef: apiVersion: v1 fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" imagePullPolicy: Always diff --git a/e2e-tests/users/conf/secrets.yml b/e2e-tests/users/conf/secrets.yml index 0afab1b238..ebc5399bfb 100644 --- a/e2e-tests/users/conf/secrets.yml +++ b/e2e-tests/users/conf/secrets.yml @@ -4,8 +4,8 @@ metadata: name: some-users type: Opaque data: - MONGODB_BACKUP_USER: YmFja3Vw - MONGODB_BACKUP_PASSWORD: YmFja3VwMTIzNDU2 + MONGODB_BACKUP_USER: YmFja3VwJCMl + MONGODB_BACKUP_PASSWORD: YmFja3VwMTIzNDU2Iw== MONGODB_CLUSTER_ADMIN_USER: Y2x1c3RlckFkbWlu MONGODB_CLUSTER_ADMIN_PASSWORD: Y2x1c3RlckFkbWluMTIzNDU2 MONGODB_CLUSTER_MONITOR_USER: Y2x1c3Rlck1vbml0b3I= diff --git a/e2e-tests/users/run b/e2e-tests/users/run index bb61bd132c..ffbd0e9849 100755 --- a/e2e-tests/users/run +++ b/e2e-tests/users/run @@ -34,7 +34,13 @@ psmdb="some-name" wait_cluster_consistency $psmdb sleep 15 -user=$(getSecretData "some-users" "MONGODB_DATABASE_ADMIN_USER") +getUserData() { + local secretName=$1 + local dataKey=$2 + urlencode "$(getSecretData "$secretName" "$dataKey")" +} + +user=$(getUserData "some-users" "MONGODB_DATABASE_ADMIN_USER") check_mongo_auth "$user:$newpass@$cluster-0.$cluster.$namespace" check_mongo_auth "$user:$newpass@$cluster-1.$cluster.$namespace" check_mongo_auth "$user:$newpass@$cluster-2.$cluster.$namespace" @@ -44,7 +50,7 @@ patch_secret "some-users" "MONGODB_BACKUP_PASSWORD" "$newpassencrypted" sleep 25 wait_cluster_consistency $psmdb sleep 15 -user=$(getSecretData "some-users" "MONGODB_BACKUP_USER") +user=$(getUserData "some-users" "MONGODB_BACKUP_USER") check_mongo_auth "$user:$newpass@$cluster-0.$cluster.$namespace" check_mongo_auth "$user:$newpass@$cluster-1.$cluster.$namespace" check_mongo_auth "$user:$newpass@$cluster-2.$cluster.$namespace" @@ -56,7 +62,7 @@ sleep 25 wait_cluster_consistency $psmdb sleep 15 -user=$(getSecretData "some-users" "MONGODB_BACKUP_USER") +user=$(getUserData "some-users" "MONGODB_BACKUP_USER") check_mongo_auth "$user:$newpass@$cluster-0.$cluster.$namespace" check_mongo_auth "$user:$newpass@$cluster-1.$cluster.$namespace" check_mongo_auth "$user:$newpass@$cluster-2.$cluster.$namespace" @@ -70,7 +76,7 @@ patch_secret "some-users" "MONGODB_USER_ADMIN_PASSWORD" "$newpassencrypted" sleep 25 wait_cluster_consistency $psmdb sleep 15 -user=$(getSecretData "some-users" "MONGODB_USER_ADMIN_USER") +user=$(getUserData "some-users" "MONGODB_USER_ADMIN_USER") check_mongo_auth "$user:$newpass@$cluster-0.$cluster.$namespace" check_mongo_auth "$user:$newpass@$cluster-1.$cluster.$namespace" check_mongo_auth "$user:$newpass@$cluster-2.$cluster.$namespace" @@ -81,7 +87,7 @@ patch_secret "some-users" "MONGODB_USER_ADMIN_USER" "$newnameencrypted" sleep 25 wait_cluster_consistency $psmdb sleep 15 -user=$(getSecretData "some-users" "MONGODB_USER_ADMIN_USER") +user=$(getUserData "some-users" "MONGODB_USER_ADMIN_USER") check_mongo_auth "$user:$newpass@$cluster-0.$cluster.$namespace" check_mongo_auth "$user:$newpass@$cluster-1.$cluster.$namespace" check_mongo_auth "$user:$newpass@$cluster-2.$cluster.$namespace" @@ -91,7 +97,7 @@ patch_secret "some-users" "MONGODB_CLUSTER_ADMIN_PASSWORD" "$newpassencrypted" sleep 25 wait_cluster_consistency $psmdb sleep 15 -user=$(getSecretData "some-users" "MONGODB_CLUSTER_ADMIN_USER") +user=$(getUserData "some-users" "MONGODB_CLUSTER_ADMIN_USER") check_mongo_auth "$user:$newpass@$cluster-0.$cluster.$namespace" check_mongo_auth "$user:$newpass@$cluster-1.$cluster.$namespace" check_mongo_auth "$user:$newpass@$cluster-2.$cluster.$namespace" @@ -101,7 +107,7 @@ patch_secret "some-users" "MONGODB_CLUSTER_MONITOR_PASSWORD" "$newpassencrypted" sleep 25 wait_cluster_consistency $psmdb sleep 15 -user=$(getSecretData "some-users" "MONGODB_CLUSTER_MONITOR_USER") +user=$(getUserData "some-users" "MONGODB_CLUSTER_MONITOR_USER") check_mongo_auth "$user:$newpass@$cluster-0.$cluster.$namespace" check_mongo_auth "$user:$newpass@$cluster-1.$cluster.$namespace" check_mongo_auth "$user:$newpass@$cluster-2.$cluster.$namespace" @@ -111,8 +117,8 @@ kubectl_bin delete secret some-users sleep 35 wait_cluster_consistency $psmdb sleep 15 -user=$(getSecretData "some-users" "MONGODB_USER_ADMIN_USER") -pass=$(getSecretData "some-users" "MONGODB_USER_ADMIN_PASSWORD") +user=$(getUserData "some-users" "MONGODB_USER_ADMIN_USER") +pass=$(getUserData "some-users" "MONGODB_USER_ADMIN_PASSWORD") check_mongo_auth "$user:$pass@$cluster-0.$cluster.$namespace" check_mongo_auth "$user:$pass@$cluster-1.$cluster.$namespace" check_mongo_auth "$user:$pass@$cluster-2.$cluster.$namespace" @@ -122,19 +128,20 @@ kubectl_bin apply -f "${conf_dir}/secrets.yml" sleep 35 wait_cluster_consistency $psmdb sleep 15 -user=$(getSecretData "some-users" "MONGODB_USER_ADMIN_USER") -pass=$(getSecretData "some-users" "MONGODB_USER_ADMIN_PASSWORD") +user=$(getUserData "some-users" "MONGODB_USER_ADMIN_USER") +pass=$(getUserData "some-users" "MONGODB_USER_ADMIN_PASSWORD") check_mongo_auth "$user:$pass@$cluster-0.$cluster.$namespace" check_mongo_auth "$user:$pass@$cluster-1.$cluster.$namespace" check_mongo_auth "$user:$pass@$cluster-2.$cluster.$namespace" +newmonitorusername="newmonitorusername" desc 'update monitor user username' patch_secret "some-users" "MONGODB_CLUSTER_MONITOR_USER" "$(echo -n "$newmonitorusername" | base64)" sleep 35 wait_cluster_consistency $psmdb sleep 15 -user=$(getSecretData "some-users" "MONGODB_CLUSTER_MONITOR_USER") -pass=$(getSecretData "some-users" "MONGODB_CLUSTER_MONITOR_PASSWORD") +user=$(getUserData "some-users" "MONGODB_CLUSTER_MONITOR_USER") +pass=$(getUserData "some-users" "MONGODB_CLUSTER_MONITOR_PASSWORD") check_mongo_auth "$user:$pass@$cluster-0.$cluster.$namespace" check_mongo_auth "$user:$pass@$cluster-1.$cluster.$namespace" check_mongo_auth "$user:$pass@$cluster-2.$cluster.$namespace" @@ -142,12 +149,12 @@ check_mongo_auth "$user:$pass@$cluster-2.$cluster.$namespace" desc 'secret without userAdmin' kubectl_bin apply -f "${test_dir}/conf/secrets.yml" sleep 25 -user=$(getSecretData "some-users" "MONGODB_USER_ADMIN_USER") -pass=$(getSecretData "some-users" "MONGODB_USER_ADMIN_PASSWORD") +user=$(getUserData "some-users" "MONGODB_USER_ADMIN_USER") +pass=$(getUserData "some-users" "MONGODB_USER_ADMIN_PASSWORD") check_mongo_auth "$user:$pass@$cluster-0.$cluster.$namespace" check_mongo_auth "$user:$pass@$cluster-1.$cluster.$namespace" check_mongo_auth "$user:$pass@$cluster-2.$cluster.$namespace" -destroy $namespace +destroy "$namespace" desc 'test passed' diff --git a/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/cfg-arbiter.yaml b/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/cfg-arbiter.yaml index 87d5e275a1..a933cc7ef5 100644 --- a/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/cfg-arbiter.yaml +++ b/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/cfg-arbiter.yaml @@ -181,8 +181,6 @@ spec: valueFrom: fieldRef: fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" image: perconalab/percona-server-mongodb-operator:main-backup diff --git a/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/cfg-mongod.yaml b/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/cfg-mongod.yaml index 87d5e275a1..a933cc7ef5 100644 --- a/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/cfg-mongod.yaml +++ b/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/cfg-mongod.yaml @@ -181,8 +181,6 @@ spec: valueFrom: fieldRef: fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" image: perconalab/percona-server-mongodb-operator:main-backup diff --git a/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/cfg-nv.yaml b/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/cfg-nv.yaml index 87d5e275a1..a933cc7ef5 100644 --- a/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/cfg-nv.yaml +++ b/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/cfg-nv.yaml @@ -181,8 +181,6 @@ spec: valueFrom: fieldRef: fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" image: perconalab/percona-server-mongodb-operator:main-backup diff --git a/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/rs0-mongod.yaml b/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/rs0-mongod.yaml index 5822610e51..b86162310b 100644 --- a/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/rs0-mongod.yaml +++ b/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/rs0-mongod.yaml @@ -181,8 +181,6 @@ spec: valueFrom: fieldRef: fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" image: perconalab/percona-server-mongodb-operator:main-backup diff --git a/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/rs0-nv.yaml b/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/rs0-nv.yaml index 9c884dfb84..d2d6d935af 100644 --- a/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/rs0-nv.yaml +++ b/pkg/controller/perconaservermongodb/testdata/reconcile-statefulset/rs0-nv.yaml @@ -180,8 +180,6 @@ spec: valueFrom: fieldRef: fieldPath: metadata.name - - name: PBM_MONGODB_URI - value: mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME) - name: PBM_AGENT_TLS_ENABLED value: "true" image: perconalab/percona-server-mongodb-operator:main-backup diff --git a/pkg/controller/perconaservermongodbrestore/physical.go b/pkg/controller/perconaservermongodbrestore/physical.go index ac8ef3d443..e5bd7bba19 100644 --- a/pkg/controller/perconaservermongodbrestore/physical.go +++ b/pkg/controller/perconaservermongodbrestore/physical.go @@ -58,7 +58,7 @@ func (r *ReconcilePerconaServerMongoDBRestore) reconcilePhysicalRestore(ctx cont if err := retry.OnError(anotherOpBackoff, func(err error) bool { return strings.Contains(err.Error(), "another operation") }, func() error { - return r.disablePITR(ctx, &pod) + return r.disablePITR(ctx, cluster, &pod) }); err != nil { return status, errors.Wrap(err, "disable pitr") } @@ -69,7 +69,7 @@ func (r *ReconcilePerconaServerMongoDBRestore) reconcilePhysicalRestore(ctx cont case psmdbv1.PITRestoreTypeDate: ts = cr.Spec.PITR.Date.Format("2006-01-02T15:04:05") case psmdbv1.PITRestoreTypeLatest: - ts, err = r.getLatestChunkTS(ctx, &pod) + ts, err = r.getLatestChunkTS(ctx, cluster, &pod) if err != nil { return status, errors.Wrap(err, "get latest chunk timestamp") } @@ -132,11 +132,10 @@ func (r *ReconcilePerconaServerMongoDBRestore) reconcilePhysicalRestore(ctx cont stdoutBuf.Reset() stderrBuf.Reset() - command := []string{"/opt/percona/pbm", "config", "--file", "/etc/pbm/pbm_config.yaml"} + command := []string{"config", "--file", "/etc/pbm/pbm_config.yaml"} log.Info("Set PBM configuration", "command", command, "pod", pod.Name) - err := r.clientcmd.Exec(ctx, &pod, "mongod", command, nil, stdoutBuf, stderrBuf, false) - if err != nil { + if err := r.pbmExec(ctx, command, cluster, &pod, stdoutBuf, stderrBuf); err != nil { log.Error(err, "failed to set PBM configuration") } @@ -147,15 +146,15 @@ func (r *ReconcilePerconaServerMongoDBRestore) reconcilePhysicalRestore(ctx cont } time.Sleep(5 * time.Second) // wait until pbm will start resync - if err := r.waitForPBMOperationsToFinish(ctx, &pod); err != nil { + if err := r.waitForPBMOperationsToFinish(ctx, cluster, &pod); err != nil { return status, err } var restoreCommand []string if cr.Spec.PITR != nil { - restoreCommand = []string{"/opt/percona/pbm", "restore", "--base-snapshot", bcp.Status.PBMname, "--time", cr.Status.PITRTarget, "--out", "json"} + restoreCommand = []string{"restore", "--base-snapshot", bcp.Status.PBMname, "--time", cr.Status.PITRTarget, "--out", "json"} } else { - restoreCommand = []string{"/opt/percona/pbm", "restore", bcp.Status.PBMname, "--out", "json"} + restoreCommand = []string{"restore", bcp.Status.PBMname, "--out", "json"} } err = retry.OnError(anotherOpBackoff, func(err error) bool { @@ -166,8 +165,7 @@ func (r *ReconcilePerconaServerMongoDBRestore) reconcilePhysicalRestore(ctx cont stdoutBuf.Reset() stderrBuf.Reset() - err := r.clientcmd.Exec(ctx, &pod, "mongod", restoreCommand, nil, stdoutBuf, stderrBuf, false) - if err != nil { + if err := r.pbmExec(ctx, restoreCommand, cluster, &pod, stdoutBuf, stderrBuf); err != nil { log.Error(nil, "Restore failed to start", "pod", pod.Name, "stderr", stderrBuf.String(), "stdout", stdoutBuf.String()) return errors.Wrapf(err, "start restore stderr: %s stdout: %s", stderrBuf.String(), stdoutBuf.String()) } @@ -203,7 +201,7 @@ func (r *ReconcilePerconaServerMongoDBRestore) reconcilePhysicalRestore(ctx cont stderrBuf.Reset() command := []string{ - "/opt/percona/pbm", "describe-restore", cr.Status.PBMname, + "describe-restore", cr.Status.PBMname, "--config", "/etc/pbm/pbm_config.yaml", "--out", "json", } @@ -215,7 +213,7 @@ func (r *ReconcilePerconaServerMongoDBRestore) reconcilePhysicalRestore(ctx cont log.V(1).Info("Check restore status", "command", command, "pod", pod.Name) - if err := r.clientcmd.Exec(ctx, &pod, "mongod", command, nil, stdoutBuf, stderrBuf, false); err != nil { + if err := r.pbmExec(ctx, command, cluster, &pod, stdoutBuf, stderrBuf); err != nil { return errors.Wrapf(err, "describe restore stderr: %s stdout: %s", stderrBuf.String(), stdoutBuf.String()) } @@ -429,11 +427,13 @@ func (r *ReconcilePerconaServerMongoDBRestore) updateStatefulSetForPhysicalResto }, }, }, - { + }...) + if cluster.CompareVersion("1.18.0") < 0 { + sts.Spec.Template.Spec.Containers[0].Env = append(sts.Spec.Template.Spec.Containers[0].Env, corev1.EnvVar{ Name: "PBM_MONGODB_URI", Value: "mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME)", - }, - }...) + }) + } err = r.client.Update(ctx, &sts) if err != nil { @@ -816,21 +816,11 @@ func (r *ReconcilePerconaServerMongoDBRestore) checkIfStatefulSetsAreReadyForPhy return true, nil } -func (r *ReconcilePerconaServerMongoDBRestore) getLatestChunkTS(ctx context.Context, pod *corev1.Pod) (string, error) { +func (r *ReconcilePerconaServerMongoDBRestore) getLatestChunkTS(ctx context.Context, cluster *psmdbv1.PerconaServerMongoDB, pod *corev1.Pod) (string, error) { stdoutBuf := &bytes.Buffer{} stderrBuf := &bytes.Buffer{} - container := "mongod" - pbmBinary := "/opt/percona/pbm" - for _, c := range pod.Spec.Containers { - if c.Name == naming.ContainerBackupAgent { - container = c.Name - pbmBinary = "pbm" - } - } - - command := []string{pbmBinary, "status", "--out", "json"} - if err := r.clientcmd.Exec(ctx, pod, container, command, nil, stdoutBuf, stderrBuf, false); err != nil { + if err := r.pbmExec(ctx, []string{"status", "--out", "json"}, cluster, pod, stdoutBuf, stderrBuf); err != nil { return "", errors.Wrapf(err, "get PBM status stderr: %s stdout: %s", stderrBuf.String(), stdoutBuf.String()) } @@ -857,21 +847,34 @@ func (r *ReconcilePerconaServerMongoDBRestore) getLatestChunkTS(ctx context.Cont return ts.Format("2006-01-02T15:04:05"), nil } -func (r *ReconcilePerconaServerMongoDBRestore) disablePITR(ctx context.Context, pod *corev1.Pod) error { - stdoutBuf := &bytes.Buffer{} - stderrBuf := &bytes.Buffer{} - +func (r *ReconcilePerconaServerMongoDBRestore) pbmExec(ctx context.Context, command []string, cluster *psmdbv1.PerconaServerMongoDB, pod *corev1.Pod, stdoutBuf, stderrBuf *bytes.Buffer) error { container := "mongod" pbmBinary := "/opt/percona/pbm" for _, c := range pod.Spec.Containers { if c.Name == naming.ContainerBackupAgent { container = c.Name - pbmBinary = "pbm" + pbmBinary = "/bin/pbm" } } - command := []string{pbmBinary, "config", "--set", "pitr.enabled=false"} + command = append([]string{pbmBinary}, command...) + + if cluster.CompareVersion("1.18.0") >= 0 { + command = append([]string{"/opt/percona/pbm-entry.sh"}, command...) + command = []string{"bash", "-c", strings.Join(command, " ")} + } + if err := r.clientcmd.Exec(ctx, pod, container, command, nil, stdoutBuf, stderrBuf, false); err != nil { + return err + } + return nil +} + +func (r *ReconcilePerconaServerMongoDBRestore) disablePITR(ctx context.Context, cluster *psmdbv1.PerconaServerMongoDB, pod *corev1.Pod) error { + stdoutBuf := &bytes.Buffer{} + stderrBuf := &bytes.Buffer{} + + if err := r.pbmExec(ctx, []string{"config", "--set", "pitr.enabled=false"}, cluster, pod, stdoutBuf, stderrBuf); err != nil { return errors.Wrapf(err, "disable PiTR stderr: %s stdout: %s", stderrBuf.String(), stdoutBuf.String()) } @@ -885,21 +888,12 @@ func (r *ReconcilePerconaServerMongoDBRestore) pbmConfigName(cluster *psmdbv1.Pe return cluster.Name + "-pbm-config" } -func (r *ReconcilePerconaServerMongoDBRestore) waitForPBMOperationsToFinish(ctx context.Context, pod *corev1.Pod) error { +func (r *ReconcilePerconaServerMongoDBRestore) waitForPBMOperationsToFinish(ctx context.Context, cluster *psmdbv1.PerconaServerMongoDB, pod *corev1.Pod) error { log := logf.FromContext(ctx) stdoutBuf := &bytes.Buffer{} stderrBuf := &bytes.Buffer{} - container := "mongod" - pbmBinary := "/opt/percona/pbm" - for _, c := range pod.Spec.Containers { - if c.Name == naming.ContainerBackupAgent { - container = c.Name - pbmBinary = "pbm" - } - } - waitErr := errors.New("waiting for PBM operation to finish") err := retry.OnError(wait.Backoff{ Duration: 5 * time.Second, @@ -911,9 +905,7 @@ func (r *ReconcilePerconaServerMongoDBRestore) waitForPBMOperationsToFinish(ctx stdoutBuf.Reset() stderrBuf.Reset() - command := []string{pbmBinary, "status", "--out", "json"} - err := r.clientcmd.Exec(ctx, pod, container, command, nil, stdoutBuf, stderrBuf, false) - if err != nil { + if err := r.pbmExec(ctx, []string{"status", "--out", "json"}, cluster, pod, stdoutBuf, stderrBuf); err != nil { log.Error(err, "failed to get PBM status") return err } diff --git a/pkg/psmdb/statefulset.go b/pkg/psmdb/statefulset.go index 2c9df7c502..26c784a444 100644 --- a/pkg/psmdb/statefulset.go +++ b/pkg/psmdb/statefulset.go @@ -413,11 +413,15 @@ func backupAgentContainer(cr *api.PerconaServerMongoDB, replsetName string, tlsE }, }, }, - { - Name: "PBM_MONGODB_URI", - Value: "mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME)", - }, }...) + if cr.CompareVersion("1.18.0") < 0 { + c.Env = append(c.Env, []corev1.EnvVar{ + { + Name: "PBM_MONGODB_URI", + Value: "mongodb://$(PBM_AGENT_MONGODB_USERNAME):$(PBM_AGENT_MONGODB_PASSWORD)@$(POD_NAME)", + }, + }...) + } c.VolumeMounts = append(c.VolumeMounts, []corev1.VolumeMount{ {