Skip to content

Commit a66221c

Browse files
committed
fixes
1 parent 4f10e46 commit a66221c

24 files changed

+154
-56
lines changed

e2e-tests/tests/major-upgrade/01-assert.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
apiVersion: kuttl.dev/v1beta1
22
kind: TestAssert
3-
timeout: 120
3+
timeout: 240
44
---
55
kind: StatefulSet
66
apiVersion: apps/v1

e2e-tests/tests/major-upgrade/02-write-data.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,11 @@ commands:
1010
run_psql_local \
1111
'CREATE DATABASE myapp; \c myapp \\\ CREATE TABLE IF NOT EXISTS myApp (id int PRIMARY KEY);' \
1212
"postgres:$(get_psql_user_pass major-upgrade-pguser-postgres)@$(get_psql_user_host major-upgrade-pguser-postgres)"
13-
13+
1414
run_psql_local \
1515
'\c myapp \\\ INSERT INTO myApp (id) VALUES (100500)' \
1616
"postgres:$(get_psql_user_pass major-upgrade-pguser-postgres)@$(get_psql_user_host major-upgrade-pguser-postgres)"
1717
1818
run_psql_local \
1919
'\c postgres \\\ CREATE EXTENSION pg_cron' \
20-
"postgres:$(get_psql_user_pass major-upgrade-pguser-postgres)@$(get_psql_user_host major-upgrade-pguser-postgres)"
20+
"postgres:$(get_psql_user_pass major-upgrade-pguser-postgres)@$(get_psql_user_host major-upgrade-pguser-postgres)"

e2e-tests/tests/major-upgrade/10-assert.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
apiVersion: kuttl.dev/v1beta1
22
kind: TestAssert
3-
timeout: 360
3+
timeout: 600
44
commands:
55
- script: |-
66
kubectl -n ${NAMESPACE} get pg,pod,job

e2e-tests/tests/major-upgrade/41-wait.yaml e2e-tests/tests/major-upgrade/11-wait-and-write-data.yaml

+9-1
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,19 @@ commands:
66
set -o errexit
77
set -o xtrace
88
9-
sleep 300
9+
source ../../functions
10+
11+
sleep 90 # wait some time for stanza to upgrade
1012
1113
for pod in $(kubectl -n ${NAMESPACE} get pods -l postgres-operator.crunchydata.com/data=postgres --no-headers | awk '{print $1}'); do
1214
echo "Checking the status of ${pod}:"
1315
kubectl -n ${NAMESPACE} exec -it ${pod} -- psql -c "SELECT version()"
1416
kubectl -n ${NAMESPACE} exec -it ${pod} -- psql -c "SELECT timeline_id FROM pg_control_checkpoint()"
1517
kubectl -n ${NAMESPACE} exec -it ${pod} -- pgbackrest --stanza=db --log-level-console=detail check
18+
kubectl -n ${NAMESPACE} exec -it ${pod} -- ls -l /pgdata/pg13_wal/
1619
done
20+
21+
run_psql_local \
22+
'\c myapp \\\ INSERT INTO myApp (id) VALUES (100501)' \
23+
"postgres:$(get_psql_user_pass major-upgrade-pguser-postgres)@$(get_psql_user_host major-upgrade-pguser-postgres)"
24+

e2e-tests/tests/major-upgrade/13-wait.yaml

+1-4
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,4 @@ kind: TestStep
33
commands:
44
- timeout: 600
55
script: |-
6-
set -o errexit
7-
set -o xtrace
8-
9-
sleep 30
6+
sleep 60
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,22 @@
1-
apiVersion: pgv2.percona.com/v2
2-
kind: PerconaPGRestore
3-
metadata:
4-
name: restore-after-12-to-13
5-
spec:
6-
pgCluster: major-upgrade
7-
repoName: repo1
1+
---
2+
apiVersion: kuttl.dev/v1beta1
3+
kind: TestStep
4+
commands:
5+
- timeout: 600
6+
script: |-
7+
set -o errexit
8+
set -o xtrace
9+
10+
backup_name=$(kubectl -n ${NAMESPACE} get pg-backup backup-after-12-to-13 -o jsonpath={.status.backupName})
11+
12+
cat <<-EOF | kubectl -n ${NAMESPACE} apply -f -
13+
apiVersion: pgv2.percona.com/v2
14+
kind: PerconaPGRestore
15+
metadata:
16+
name: restore-after-12-to-13
17+
spec:
18+
pgCluster: major-upgrade
19+
repoName: repo1
20+
options:
21+
- --set=${backup_name}
22+
EOF

e2e-tests/tests/major-upgrade/19-assert.yaml

+4-2
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ timeout: 30
55
kind: ConfigMap
66
apiVersion: v1
77
metadata:
8-
name: 05-read-from-primary
8+
name: 19-read-from-primary
99
data:
10-
data: ' 100500'
10+
data: |2-
11+
100500
12+
100501

e2e-tests/tests/major-upgrade/19-read-from-primary.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,4 @@ commands:
99
source ../../functions
1010
data=$(run_psql_local '\c myapp \\\ SELECT * from myApp;' "postgres:$(get_psql_user_pass major-upgrade-pguser-postgres)@$(get_psql_user_host major-upgrade-pguser-postgres)")
1111
12-
kubectl create configmap -n "${NAMESPACE}" 05-read-from-primary --from-literal=data="${data}"
12+
kubectl create configmap -n "${NAMESPACE}" 19-read-from-primary --from-literal=data="${data}"

e2e-tests/tests/major-upgrade/31-wait.yaml e2e-tests/tests/major-upgrade/21-wait-and-write-data.yaml

+9-1
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,19 @@ commands:
66
set -o errexit
77
set -o xtrace
88
9-
sleep 300
9+
source ../../functions
10+
11+
sleep 90 # wait some time for stanza to upgrade
1012
1113
for pod in $(kubectl -n ${NAMESPACE} get pods -l postgres-operator.crunchydata.com/data=postgres --no-headers | awk '{print $1}'); do
1214
echo "Checking the status of ${pod}:"
1315
kubectl -n ${NAMESPACE} exec -it ${pod} -- psql -c "SELECT version()"
1416
kubectl -n ${NAMESPACE} exec -it ${pod} -- psql -c "SELECT timeline_id FROM pg_control_checkpoint()"
1517
kubectl -n ${NAMESPACE} exec -it ${pod} -- pgbackrest --stanza=db --log-level-console=detail check
18+
kubectl -n ${NAMESPACE} exec -it ${pod} -- ls -l /pgdata/pg14_wal
1619
done
20+
21+
run_psql_local \
22+
'\c myapp \\\ INSERT INTO myApp (id) VALUES (100502)' \
23+
"postgres:$(get_psql_user_pass major-upgrade-pguser-postgres)@$(get_psql_user_host major-upgrade-pguser-postgres)"
24+

e2e-tests/tests/major-upgrade/23-wait.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@ kind: TestStep
33
commands:
44
- timeout: 600
55
script: |-
6-
sleep 30
6+
sleep 60
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,21 @@
1-
apiVersion: pgv2.percona.com/v2
2-
kind: PerconaPGRestore
3-
metadata:
4-
name: restore-after-13-to-14
5-
spec:
6-
pgCluster: major-upgrade
7-
repoName: repo1
1+
apiVersion: kuttl.dev/v1beta1
2+
kind: TestStep
3+
commands:
4+
- timeout: 600
5+
script: |-
6+
set -o errexit
7+
set -o xtrace
8+
9+
backup_name=$(kubectl -n ${NAMESPACE} get pg-backup backup-after-13-to-14 -o jsonpath={.status.backupName})
10+
11+
cat <<-EOF | kubectl -n ${NAMESPACE} apply -f -
12+
apiVersion: pgv2.percona.com/v2
13+
kind: PerconaPGRestore
14+
metadata:
15+
name: restore-after-13-to-14
16+
spec:
17+
pgCluster: major-upgrade
18+
repoName: repo1
19+
options:
20+
- --set=${backup_name}
21+
EOF

e2e-tests/tests/major-upgrade/29-assert.yaml

+5-2
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@ timeout: 30
55
kind: ConfigMap
66
apiVersion: v1
77
metadata:
8-
name: 07-read-from-primary
8+
name: 29-read-from-primary
99
data:
10-
data: ' 100500'
10+
data: |2-
11+
100500
12+
100501
13+
100502

e2e-tests/tests/major-upgrade/29-read-from-primary.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,4 @@ commands:
99
source ../../functions
1010
data=$(run_psql_local '\c myapp \\\ SELECT * from myApp;' "postgres:$(get_psql_user_pass major-upgrade-pguser-postgres)@$(get_psql_user_host major-upgrade-pguser-postgres)")
1111
12-
kubectl create configmap -n "${NAMESPACE}" 07-read-from-primary --from-literal=data="${data}"
12+
kubectl create configmap -n "${NAMESPACE}" 29-read-from-primary --from-literal=data="${data}"

e2e-tests/tests/major-upgrade/30-assert.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ metadata:
3232
postgres-operator.crunchydata.com/cluster: major-upgrade
3333
postgres-operator.crunchydata.com/pgbackrest: ''
3434
postgres-operator.crunchydata.com/pgbackrest-backup: replica-create
35-
postgres-operator.crunchydata.com/pgbackrest-repo: repo3
35+
postgres-operator.crunchydata.com/pgbackrest-repo: repo1
3636
ownerReferences:
3737
- apiVersion: pgv2.percona.com/v2
3838
kind: PerconaPGBackup

e2e-tests/tests/major-upgrade/11-wait.yaml e2e-tests/tests/major-upgrade/31-wait-and-write-data.yaml

+9-1
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,19 @@ commands:
66
set -o errexit
77
set -o xtrace
88
9-
sleep 300
9+
source ../../functions
10+
11+
sleep 90
1012
1113
for pod in $(kubectl -n ${NAMESPACE} get pods -l postgres-operator.crunchydata.com/data=postgres --no-headers | awk '{print $1}'); do
1214
echo "Checking the status of ${pod}:"
1315
kubectl -n ${NAMESPACE} exec -it ${pod} -- psql -c "SELECT version()"
1416
kubectl -n ${NAMESPACE} exec -it ${pod} -- psql -c "SELECT timeline_id FROM pg_control_checkpoint()"
1517
kubectl -n ${NAMESPACE} exec -it ${pod} -- pgbackrest --stanza=db --log-level-console=detail check
18+
kubectl -n ${NAMESPACE} exec -it ${pod} -- ls -l /pgdata/pg15_wal
1619
done
20+
21+
run_psql_local \
22+
'\c myapp \\\ INSERT INTO myApp (id) VALUES (100503)' \
23+
"postgres:$(get_psql_user_pass major-upgrade-pguser-postgres)@$(get_psql_user_host major-upgrade-pguser-postgres)"
24+

e2e-tests/tests/major-upgrade/33-wait.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@ kind: TestStep
33
commands:
44
- timeout: 600
55
script: |-
6-
sleep 30
6+
sleep 60
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,21 @@
1-
apiVersion: pgv2.percona.com/v2
2-
kind: PerconaPGRestore
3-
metadata:
4-
name: restore-after-14-to-15
5-
spec:
6-
pgCluster: major-upgrade
7-
repoName: repo1
1+
apiVersion: kuttl.dev/v1beta1
2+
kind: TestStep
3+
commands:
4+
- timeout: 600
5+
script: |-
6+
set -o errexit
7+
set -o xtrace
88
9+
backup_name=$(kubectl -n ${NAMESPACE} get pg-backup backup-after-14-to-15 -o jsonpath={.status.backupName})
10+
11+
cat <<-EOF | kubectl -n ${NAMESPACE} apply -f -
12+
apiVersion: pgv2.percona.com/v2
13+
kind: PerconaPGRestore
14+
metadata:
15+
name: restore-after-14-to-15
16+
spec:
17+
pgCluster: major-upgrade
18+
repoName: repo1
19+
options:
20+
- --set=${backup_name}
21+
EOF

e2e-tests/tests/major-upgrade/39-assert.yaml

+6-2
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,10 @@ timeout: 30
55
kind: ConfigMap
66
apiVersion: v1
77
metadata:
8-
name: 09-read-from-primary
8+
name: 39-read-from-primary
99
data:
10-
data: ' 100500'
10+
data: |2-
11+
100500
12+
100501
13+
100502
14+
100503

e2e-tests/tests/major-upgrade/39-read-from-primary.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,4 @@ commands:
99
source ../../functions
1010
data=$(run_psql_local '\c myapp \\\ SELECT * from myApp;' "postgres:$(get_psql_user_pass major-upgrade-pguser-postgres)@$(get_psql_user_host major-upgrade-pguser-postgres)")
1111
12-
kubectl create configmap -n "${NAMESPACE}" 09-read-from-primary --from-literal=data="${data}"
12+
kubectl create configmap -n "${NAMESPACE}" 39-read-from-primary --from-literal=data="${data}"

e2e-tests/tests/major-upgrade/21-wait.yaml e2e-tests/tests/major-upgrade/41-wait-and-write-data.yaml

+9-1
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,19 @@ commands:
66
set -o errexit
77
set -o xtrace
88
9-
sleep 300
9+
source ../../functions
10+
11+
sleep 90
1012
1113
for pod in $(kubectl -n ${NAMESPACE} get pods -l postgres-operator.crunchydata.com/data=postgres --no-headers | awk '{print $1}'); do
1214
echo "Checking the status of ${pod}:"
1315
kubectl -n ${NAMESPACE} exec -it ${pod} -- psql -c "SELECT version()"
1416
kubectl -n ${NAMESPACE} exec -it ${pod} -- psql -c "SELECT timeline_id FROM pg_control_checkpoint()"
1517
kubectl -n ${NAMESPACE} exec -it ${pod} -- pgbackrest --stanza=db --log-level-console=detail check
18+
kubectl -n ${NAMESPACE} exec -it ${pod} -- ls -l /pgdata/pg16_wal
1619
done
20+
21+
run_psql_local \
22+
'\c myapp \\\ INSERT INTO myApp (id) VALUES (100504)' \
23+
"postgres:$(get_psql_user_pass major-upgrade-pguser-postgres)@$(get_psql_user_host major-upgrade-pguser-postgres)"
24+

e2e-tests/tests/major-upgrade/43-wait.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@ kind: TestStep
33
commands:
44
- timeout: 600
55
script: |-
6-
sleep 30
6+
sleep 60
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,21 @@
1-
apiVersion: pgv2.percona.com/v2
2-
kind: PerconaPGRestore
3-
metadata:
4-
name: restore-after-15-to-16
5-
spec:
6-
pgCluster: major-upgrade
7-
repoName: repo1
1+
apiVersion: kuttl.dev/v1beta1
2+
kind: TestStep
3+
commands:
4+
- timeout: 600
5+
script: |-
6+
set -o errexit
7+
set -o xtrace
88
9+
backup_name=$(kubectl -n ${NAMESPACE} get pg-backup backup-after-15-to-16 -o jsonpath={.status.backupName})
10+
11+
cat <<-EOF | kubectl -n ${NAMESPACE} apply -f -
12+
apiVersion: pgv2.percona.com/v2
13+
kind: PerconaPGRestore
14+
metadata:
15+
name: restore-after-15-to-16
16+
spec:
17+
pgCluster: major-upgrade
18+
repoName: repo1
19+
options:
20+
- --set=${backup_name}
21+
EOF

e2e-tests/tests/major-upgrade/49-assert.yaml

+7-2
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@ timeout: 30
55
kind: ConfigMap
66
apiVersion: v1
77
metadata:
8-
name: 11-read-from-primary
8+
name: 49-read-from-primary
99
data:
10-
data: ' 100500'
10+
data: |2-
11+
100500
12+
100501
13+
100502
14+
100503
15+
100504

e2e-tests/tests/major-upgrade/49-read-from-primary.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,4 @@ commands:
99
source ../../functions
1010
data=$(run_psql_local '\c myapp \\\ SELECT * from myApp;' "postgres:$(get_psql_user_pass major-upgrade-pguser-postgres)@$(get_psql_user_host major-upgrade-pguser-postgres)")
1111
12-
kubectl create configmap -n "${NAMESPACE}" 11-read-from-primary --from-literal=data="${data}"
12+
kubectl create configmap -n "${NAMESPACE}" 49-read-from-primary --from-literal=data="${data}"

0 commit comments

Comments
 (0)