Skip to content

Commit 2374bbe

Browse files
Merge pull request #1618 from percona/release-3.0.0
K8SPG-995 Release changes for 3.0.0
2 parents 8c38aaf + a983021 commit 2374bbe

66 files changed

Lines changed: 237 additions & 742 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/reviewdog.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,12 +94,12 @@ jobs:
9494
steps:
9595
- uses: actions/checkout@v6
9696
- name: check on release branch
97-
if: ${{ contains(github.base_ref, 'release-') }}
97+
if: ${{ contains(github.base_ref, 'release-') && ! startsWith(github.head_ref, 'after-release-') }}
9898
run: |
9999
make generate VERSION="$(cat percona/version/version.txt)" IMAGE_TAG_BASE="percona/percona-postgresql-operator"
100100
git diff --exit-code
101101
- name: check on non release branches
102-
if: ${{ ! contains(github.base_ref, 'release-') }}
102+
if: ${{ ! contains(github.base_ref, 'release-') || startsWith(github.head_ref, 'after-release-') }}
103103
run: |
104104
make generate VERSION=main
105105
git diff --exit-code

Makefile

Lines changed: 55 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,10 @@ KUTTL ?= kubectl-kuttl
1919
KUTTL_TEST ?= $(KUTTL) test
2020
SED := $(shell which gsed || which sed)
2121

22+
# CRDs without descriptions are used in Helm and Bundles to avoid hitting the maximum file size limit.
23+
CRD_OPTIONS ?= crd:crdVersions='v1'
24+
CRD_OPTIONS_WITHOUT_DESCRIPTION = crd:crdVersions='v1',maxDescLen=0
25+
2226
##@ General
2327

2428
# The help target prints out all targets with their descriptions organized
@@ -241,22 +245,22 @@ generate: generate-cw
241245
.PHONY: generate-crunchy-crd
242246
generate-crunchy-crd: ## Generate crd
243247
GOBIN='$(CURDIR)/hack/tools' ./hack/controller-generator.sh \
244-
crd:crdVersions='v1' \
248+
$(CRD_OPTIONS) \
245249
paths='./pkg/apis/upstream.pgv2.percona.com/...' \
246250
output:dir='build/crd/crunchy/generated' # build/crd/generated/{group}_{plural}.yaml
247251
@
248252
GOBIN='$(CURDIR)/hack/tools' ./hack/controller-generator.sh \
249-
crd:crdVersions='v1' \
253+
$(CRD_OPTIONS) \
250254
paths='./pkg/apis/...' \
251255
output:dir='build/crd/pgupgrades/generated' # build/crd/{plural}/generated/{group}_{plural}.yaml
252256
@
253257
GOBIN='$(CURDIR)/hack/tools' ./hack/controller-generator.sh \
254-
crd:crdVersions='v1' \
258+
$(CRD_OPTIONS) \
255259
paths='./pkg/apis/...' \
256260
output:dir='build/crd/pgadmins/generated' # build/crd/{plural}/generated/{group}_{plural}.yaml
257261
@
258262
GOBIN='$(CURDIR)/hack/tools' ./hack/controller-generator.sh \
259-
crd:crdVersions='v1' \
263+
$(CRD_OPTIONS) \
260264
paths='./pkg/apis/...' \
261265
output:dir='build/crd/crunchybridgeclusters/generated' # build/crd/{plural}/generated/{group}_{plural}.yaml
262266
@
@@ -277,13 +281,19 @@ generate-rbac: ## Generate rbac
277281
'./...' 'config/rbac/'
278282
$(KUSTOMIZE) build ./config/rbac/namespace/ > ./deploy/rbac.yaml
279283

284+
.PHONY: generate-crd
280285
generate-crd: generate-crunchy-crd generate-percona-crd
281286
$(KUSTOMIZE) build ./config/crd/ > ./deploy/crd.yaml
282287

288+
.PHONY: generate-crd-without-description
289+
generate-crd-without-description: CRD_OPTIONS = $(CRD_OPTIONS_WITHOUT_DESCRIPTION)
290+
generate-crd-without-description: kustomize generate-crd
291+
292+
.PHONY: generate-percona-crd
283293
generate-percona-crd:
284294
go generate ./percona/...
285295
GOBIN='$(CURDIR)/hack/tools' ./hack/controller-generator.sh \
286-
crd:crdVersions='v1' \
296+
$(CRD_OPTIONS) \
287297
paths='./pkg/apis/pgv2.percona.com/...' \
288298
output:dir='build/crd/percona/generated' # build/crd/generated/{group}_{plural}.yaml
289299
$(KUSTOMIZE) build ./build/crd/percona/ > ./config/crd/bases/pgv2.percona.com_perconapgclusters.yaml
@@ -430,30 +440,68 @@ release: generate
430440
-e "/^spec:/,/^ toPgBouncerImage:/{s#toPgBouncerImage: .*#toPgBouncerImage: $(REGISTRY_NAME_FULL)$(IMAGE_PGBOUNCER18)#}" \
431441
-e "/^spec:/,/^ toPgBackRestImage:/{s#toPgBackRestImage: .*#toPgBackRestImage: $(REGISTRY_NAME_FULL)$(IMAGE_BACKREST18)#}" deploy/upgrade.yaml
432442

443+
# Update sidecars
444+
$(SED) -i -r "s#pgv2.percona.com/version: [0-9]+\.[0-9]+\.[0-9]+#pgv2.percona.com/version: $(VERSION)#" e2e-tests/tests/sidecars/01-assert.yaml
445+
433446
# Prepare main branch after release
434447
CURRENT_VERSION := $(shell grep -oE "crVersion: [0-9]+\.[0-9]+\.[0-9]+" deploy/cr.yaml | grep -oE "[0-9]+\.[0-9]+\.[0-9]+")
435448
MAJOR_VER := $(word 1,$(subst ., ,$(CURRENT_VERSION)))
436449
MINOR_VER := $(word 2,$(subst ., ,$(CURRENT_VERSION)))
437450
NEXT_VER := $(MAJOR_VER).$(shell expr $(MINOR_VER) + 1).0
438451
PREV1_VERSION := $(MAJOR_VER).$(shell expr $(MINOR_VER) - 1).0
439452
PREV2_VERSION := $(MAJOR_VER).$(shell expr $(MINOR_VER) - 2).0
440-
after-release: update-version generate
453+
454+
.PHONY: after-release after-release-versions
455+
after-release: update-version generate after-release-versions
441456
$(SED) -i \
442457
-e "/^spec:/,/^ crVersion:/{s/crVersion: .*/crVersion: $(NEXT_VER)/}" \
443458
-e "/^spec:/,/^ image:/{s#image: .*#image: $(REGISTRY_NAME_FULL)perconalab/percona-postgresql-operator:main-ppg$(PG_VER)-postgres#}" \
444459
-e "/initContainer:/,/image:/{s#image: .*#image: $(REGISTRY_NAME_FULL)perconalab/percona-postgresql-operator:main#}" \
445460
-e "/^ pgBouncer:/,/^ image:/{s#image: .*#image: $(REGISTRY_NAME_FULL)perconalab/percona-postgresql-operator:main-pgbouncer$(PG_VER)#}" \
446461
-e "/^ pgbackrest:/,/^ image:/{s#image: .*#image: $(REGISTRY_NAME_FULL)perconalab/percona-postgresql-operator:main-pgbackrest$(PG_VER)#}" \
447462
-e "/extensions:/,/image:/{s#image: .*#image: $(REGISTRY_NAME_FULL)perconalab/percona-postgresql-operator:main#}" \
448-
-e "/^ pmm:/,/^ image:/{s#image: .*#image: $(REGISTRY_NAME_FULL)perconalab/pmm-client:dev-latest#}" deploy/cr.yaml percona/controller/testdata/sidecar-resources-cr.yaml
463+
-e "/^ pmm:/,/^ image:/{s#image: .*#image: $(REGISTRY_NAME_FULL)perconalab/pmm-client:3-dev-latest#}" deploy/cr.yaml percona/controller/testdata/sidecar-resources-cr.yaml
449464
$(SED) -i -r "/Version *= \"[0-9]+\.[0-9]+\.[0-9]+\"$$/ s/[0-9]+\.[0-9]+\.[0-9]+/$(NEXT_VER)/" pkg/apis/pgv2.percona.com/v2/perconapgcluster_types.go
450465
$(SED) -i \
451466
-e "/^spec:/,/^ image:/{s#image: .*#image: $(REGISTRY_NAME_FULL)perconalab/percona-postgresql-operator:main-upgrade#}" \
452467
-e "/^spec:/,/^ toPostgresImage:/{s#toPostgresImage: .*#toPostgresImage: $(REGISTRY_NAME_FULL)perconalab/percona-postgresql-operator:main-ppg$(PG_VER)-postgres#}" \
453468
-e "/^spec:/,/^ toPgBouncerImage:/{s#toPgBouncerImage: .*#toPgBouncerImage: $(REGISTRY_NAME_FULL)perconalab/percona-postgresql-operator:main-pgbouncer$(PG_VER)#}" \
454469
-e "/^spec:/,/^ toPgBackRestImage:/{s#toPgBackRestImage: .*#toPgBackRestImage: $(REGISTRY_NAME_FULL)perconalab/percona-postgresql-operator:main-pgbackrest$(PG_VER)#}" deploy/upgrade.yaml
455470

471+
# Update sidecars
472+
$(SED) -i -r "s#pgv2.percona.com/version: [0-9]+\.[0-9]+\.[0-9]+#pgv2.percona.com/version: $(NEXT_VER)#" e2e-tests/tests/sidecars/01-assert.yaml
473+
456474
# Update upgrade-consistency
457475
$(SED) -i "s/$(PREV2_VERSION)/$(PREV1_VERSION)/g" e2e-tests/tests/upgrade-consistency/01-*.yaml
458476
$(SED) -i "s/$(PREV1_VERSION)/$(CURRENT_VERSION)/g" e2e-tests/tests/upgrade-consistency/02-*.yaml
459477
$(SED) -i "s/$(CURRENT_VERSION)/$(NEXT_VER)/g" e2e-tests/tests/upgrade-consistency/03-*.yaml e2e-tests/tests/init-deploy/05-assert.yaml
478+
479+
after-release-versions:
480+
$(SED) -i \
481+
-e "s#^IMAGE_OPERATOR=.*#IMAGE_OPERATOR=$(IMAGE_TAG_BASE):main#" \
482+
-e "s#^IMAGE_POSTGRESQL14=.*#IMAGE_POSTGRESQL14=$(IMAGE_TAG_BASE):main-ppg14-postgres#" \
483+
-e "s#^IMAGE_PGBOUNCER14=.*#IMAGE_PGBOUNCER14=$(IMAGE_TAG_BASE):main-pgbouncer14#" \
484+
-e "s#^IMAGE_POSTGIS14=.*#IMAGE_POSTGIS14=$(IMAGE_TAG_BASE):main-ppg14-postgres-gis#" \
485+
-e "s#^IMAGE_BACKREST14=.*#IMAGE_BACKREST14=$(IMAGE_TAG_BASE):main-pgbackrest14#" \
486+
-e "s#^IMAGE_POSTGRESQL15=.*#IMAGE_POSTGRESQL15=$(IMAGE_TAG_BASE):main-ppg15-postgres#" \
487+
-e "s#^IMAGE_PGBOUNCER15=.*#IMAGE_PGBOUNCER15=$(IMAGE_TAG_BASE):main-pgbouncer15#" \
488+
-e "s#^IMAGE_POSTGIS15=.*#IMAGE_POSTGIS15=$(IMAGE_TAG_BASE):main-ppg15-postgres-gis#" \
489+
-e "s#^IMAGE_BACKREST15=.*#IMAGE_BACKREST15=$(IMAGE_TAG_BASE):main-pgbackrest15#" \
490+
-e "s#^IMAGE_POSTGRESQL16=.*#IMAGE_POSTGRESQL16=$(IMAGE_TAG_BASE):main-ppg16-postgres#" \
491+
-e "s#^IMAGE_PGBOUNCER16=.*#IMAGE_PGBOUNCER16=$(IMAGE_TAG_BASE):main-pgbouncer16#" \
492+
-e "s#^IMAGE_POSTGIS16=.*#IMAGE_POSTGIS16=$(IMAGE_TAG_BASE):main-ppg16-postgres-gis#" \
493+
-e "s#^IMAGE_BACKREST16=.*#IMAGE_BACKREST16=$(IMAGE_TAG_BASE):main-pgbackrest16#" \
494+
-e "s#^IMAGE_POSTGRESQL17=.*#IMAGE_POSTGRESQL17=$(IMAGE_TAG_BASE):main-ppg17-postgres#" \
495+
-e "s#^IMAGE_PGBOUNCER17=.*#IMAGE_PGBOUNCER17=$(IMAGE_TAG_BASE):main-pgbouncer17#" \
496+
-e "s#^IMAGE_POSTGIS17=.*#IMAGE_POSTGIS17=$(IMAGE_TAG_BASE):main-ppg17-postgres-gis#" \
497+
-e "s#^IMAGE_BACKREST17=.*#IMAGE_BACKREST17=$(IMAGE_TAG_BASE):main-pgbackrest17#" \
498+
-e "s#^IMAGE_POSTGRESQL18=.*#IMAGE_POSTGRESQL18=$(IMAGE_TAG_BASE):main-ppg18-postgres#" \
499+
-e "s#^IMAGE_PGBOUNCER18=.*#IMAGE_PGBOUNCER18=$(IMAGE_TAG_BASE):main-pgbouncer18#" \
500+
-e "s#^IMAGE_POSTGIS18=.*#IMAGE_POSTGIS18=$(IMAGE_TAG_BASE):main-ppg18-postgres-gis#" \
501+
-e "s#^IMAGE_BACKREST18=.*#IMAGE_BACKREST18=$(IMAGE_TAG_BASE):main-pgbackrest18#" \
502+
-e "s#^IMAGE_UPGRADE=.*#IMAGE_UPGRADE=$(IMAGE_TAG_BASE):main-upgrade#" \
503+
-e "s#^IMAGE_PMM_CLIENT=.*#IMAGE_PMM_CLIENT=perconalab/pmm-client:dev-latest#" \
504+
-e "s#^IMAGE_PMM_SERVER=.*#IMAGE_PMM_SERVER=perconalab/pmm-server:dev-latest#" \
505+
-e "s#^IMAGE_PMM3_CLIENT=.*#IMAGE_PMM3_CLIENT=perconalab/pmm-client:3-dev-latest#" \
506+
-e "s#^IMAGE_PMM3_SERVER=.*#IMAGE_PMM3_SERVER=perconalab/pmm-server:3-dev-latest#" \
507+
e2e-tests/release_versions

config/crd/patches/versionlabel_in_perconapgbackups.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@ kind: CustomResourceDefinition
33
metadata:
44
name: perconapgbackups.pgv2.percona.com
55
labels:
6-
pgv2.percona.com/version: v3.0.0
6+
pgv2.percona.com/version: v3.1.0

config/crd/patches/versionlabel_in_perconapgclusters.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@ kind: CustomResourceDefinition
33
metadata:
44
name: perconapgclusters.pgv2.percona.com
55
labels:
6-
pgv2.percona.com/version: v3.0.0
6+
pgv2.percona.com/version: v3.1.0

config/crd/patches/versionlabel_in_perconapgrestores.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@ kind: CustomResourceDefinition
33
metadata:
44
name: perconapgrestores.pgv2.percona.com
55
labels:
6-
pgv2.percona.com/version: v3.0.0
6+
pgv2.percona.com/version: v3.1.0

config/crd/patches/versionlabel_in_perconapgupgrade.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@ kind: CustomResourceDefinition
33
metadata:
44
name: perconapgupgrades.pgv2.percona.com
55
labels:
6-
pgv2.percona.com/version: v3.0.0
6+
pgv2.percona.com/version: v3.1.0

deploy/bundle.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@ metadata:
297297
annotations:
298298
controller-gen.kubebuilder.io/version: v0.20.0
299299
labels:
300-
pgv2.percona.com/version: v3.0.0
300+
pgv2.percona.com/version: v3.1.0
301301
name: perconapgbackups.pgv2.percona.com
302302
spec:
303303
group: pgv2.percona.com
@@ -995,7 +995,7 @@ metadata:
995995
annotations:
996996
controller-gen.kubebuilder.io/version: v0.20.0
997997
labels:
998-
pgv2.percona.com/version: v3.0.0
998+
pgv2.percona.com/version: v3.1.0
999999
name: perconapgclusters.pgv2.percona.com
10001000
spec:
10011001
group: pgv2.percona.com
@@ -30129,7 +30129,7 @@ metadata:
3012930129
annotations:
3013030130
controller-gen.kubebuilder.io/version: v0.20.0
3013130131
labels:
30132-
pgv2.percona.com/version: v3.0.0
30132+
pgv2.percona.com/version: v3.1.0
3013330133
name: perconapgrestores.pgv2.percona.com
3013430134
spec:
3013530135
group: pgv2.percona.com
@@ -30451,7 +30451,7 @@ metadata:
3045130451
annotations:
3045230452
controller-gen.kubebuilder.io/version: v0.20.0
3045330453
labels:
30454-
pgv2.percona.com/version: v3.0.0
30454+
pgv2.percona.com/version: v3.1.0
3045530455
name: perconapgupgrades.pgv2.percona.com
3045630456
spec:
3045730457
group: pgv2.percona.com

deploy/cr.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ metadata:
99
# - percona.com/delete-ssl
1010
# - percona.com/delete-backups
1111
spec:
12-
crVersion: 3.0.0
12+
crVersion: 3.1.0
1313
# clusterServiceDNSSuffix: cluster.local
1414
# initContainer:
1515
# image: docker.io/perconalab/percona-postgresql-operator:main
@@ -721,7 +721,7 @@ spec:
721721

722722
pmm:
723723
enabled: false
724-
image: docker.io/perconalab/pmm-client:dev-latest
724+
image: docker.io/perconalab/pmm-client:3-dev-latest
725725
# imagePullPolicy: IfNotPresent
726726
secret: cluster1-pmm-secret
727727
serverHost: monitoring-service

deploy/crd.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@ metadata:
297297
annotations:
298298
controller-gen.kubebuilder.io/version: v0.20.0
299299
labels:
300-
pgv2.percona.com/version: v3.0.0
300+
pgv2.percona.com/version: v3.1.0
301301
name: perconapgbackups.pgv2.percona.com
302302
spec:
303303
group: pgv2.percona.com
@@ -995,7 +995,7 @@ metadata:
995995
annotations:
996996
controller-gen.kubebuilder.io/version: v0.20.0
997997
labels:
998-
pgv2.percona.com/version: v3.0.0
998+
pgv2.percona.com/version: v3.1.0
999999
name: perconapgclusters.pgv2.percona.com
10001000
spec:
10011001
group: pgv2.percona.com
@@ -30129,7 +30129,7 @@ metadata:
3012930129
annotations:
3013030130
controller-gen.kubebuilder.io/version: v0.20.0
3013130131
labels:
30132-
pgv2.percona.com/version: v3.0.0
30132+
pgv2.percona.com/version: v3.1.0
3013330133
name: perconapgrestores.pgv2.percona.com
3013430134
spec:
3013530135
group: pgv2.percona.com
@@ -30451,7 +30451,7 @@ metadata:
3045130451
annotations:
3045230452
controller-gen.kubebuilder.io/version: v0.20.0
3045330453
labels:
30454-
pgv2.percona.com/version: v3.0.0
30454+
pgv2.percona.com/version: v3.1.0
3045530455
name: perconapgupgrades.pgv2.percona.com
3045630456
spec:
3045730457
group: pgv2.percona.com

deploy/cw-bundle.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@ metadata:
297297
annotations:
298298
controller-gen.kubebuilder.io/version: v0.20.0
299299
labels:
300-
pgv2.percona.com/version: v3.0.0
300+
pgv2.percona.com/version: v3.1.0
301301
name: perconapgbackups.pgv2.percona.com
302302
spec:
303303
group: pgv2.percona.com
@@ -995,7 +995,7 @@ metadata:
995995
annotations:
996996
controller-gen.kubebuilder.io/version: v0.20.0
997997
labels:
998-
pgv2.percona.com/version: v3.0.0
998+
pgv2.percona.com/version: v3.1.0
999999
name: perconapgclusters.pgv2.percona.com
10001000
spec:
10011001
group: pgv2.percona.com
@@ -30129,7 +30129,7 @@ metadata:
3012930129
annotations:
3013030130
controller-gen.kubebuilder.io/version: v0.20.0
3013130131
labels:
30132-
pgv2.percona.com/version: v3.0.0
30132+
pgv2.percona.com/version: v3.1.0
3013330133
name: perconapgrestores.pgv2.percona.com
3013430134
spec:
3013530135
group: pgv2.percona.com
@@ -30451,7 +30451,7 @@ metadata:
3045130451
annotations:
3045230452
controller-gen.kubebuilder.io/version: v0.20.0
3045330453
labels:
30454-
pgv2.percona.com/version: v3.0.0
30454+
pgv2.percona.com/version: v3.1.0
3045530455
name: perconapgupgrades.pgv2.percona.com
3045630456
spec:
3045730457
group: pgv2.percona.com

0 commit comments

Comments
 (0)