@@ -369,12 +369,36 @@ release-postgres-operator-image-labels:
369
369
# #@ Percona
370
370
371
371
# Default values if not already set
372
+ ifeq (undefined,$(origin REGISTRY_NAME ) )
373
+ $(info REGISTRY_NAME is not set)
374
+ else ifeq (undefined,$(origin IMAGE))
375
+ $(info IMAGE is not set)
376
+ else
377
+ IMAGE := $(REGISTRY_NAME ) /$(IMAGE )
378
+ $(info Combined IMAGE : $(IMAGE ) )
379
+ endif
380
+
372
381
NAME ?= percona-postgresql-operator
373
382
VERSION ?= $(shell git rev-parse --abbrev-ref HEAD | sed -e 's^/^-^g; s^[.]^-^g;' | tr '[:upper:]' '[:lower:]')
374
383
ROOT_REPO ?= ${PWD}
375
384
IMAGE_TAG_BASE ?= perconalab/$(NAME )
376
385
IMAGE ?= $(IMAGE_TAG_BASE ) :$(VERSION )
377
386
PGO_VERSION ?= $(shell git describe --tags)
387
+ REGISTRY_NAME ?= docker.io
388
+ REGISTRY_NAME_FULL = $(REGISTRY_NAME ) /
389
+
390
+ generate :
391
+ ifneq (,$(filter percona/% perconalab/% ,$(IMAGE ) ) )
392
+ ifeq (,$(findstring docker.io/,$(IMAGE)))
393
+ IMAGE := $(REGISTRY_NAME_FULL )$(IMAGE )
394
+ $(info Updated IMAGE to : $(IMAGE ) )
395
+ else
396
+ $(info IMAGE already qualified : $(IMAGE ) )
397
+ endif
398
+ else
399
+ $(info Skipping : IMAGE does not match percona/perconalab)
400
+ endif
401
+ $(info $(IMAGE))
378
402
379
403
KUSTOMIZE = $(shell pwd) /bin/kustomize
380
404
kustomize : # # Download kustomize locally if necessary.
@@ -425,33 +449,40 @@ include e2e-tests/release_versions
425
449
release : generate
426
450
$(SED ) -i \
427
451
-e "/^spec :/,/^ crVersion:/{s/crVersion: .* /crVersion: $(VERSION ) /}" \
428
- -e "/^spec :/,/^ image:/{s# image: .*#image: $(IMAGE_POSTGRESQL16 )#}" \
429
- -e "/^ pgBouncer:/,/^ image:/{s#image: .*#image: $(IMAGE_PGBOUNCER16 )#}" \
430
- -e "/^ pgbackrest:/,/^ image:/{s#image: .*#image: $(IMAGE_PGBACKREST16 )#}" \
431
- -e "/extensions:/,/image:/{s#image: .*#image: $(IMAGE_OPERATOR)#}" \
432
- -e "/^ pmm:/,/^ image:/{s#image: .*#image: $(IMAGE_PMM_CLIENT )#}" deploy/cr.yaml
452
+ -e "/^spec :/,/^ image:/{s# image: .*#image: $(REGISTRY_NAME_FULL)$(IMAGE_POSTGRESQL17 )#}" \
453
+ -e "/^ pgBouncer:/,/^ image:/{s#image: .*#image: $(REGISTRY_NAME_FULL)$(IMAGE_PGBOUNCER17 )#}" \
454
+ -e "/^ pgbackrest:/,/^ image:/{s#image: .*#image: $(REGISTRY_NAME_FULL)$(IMAGE_BACKREST17 )#}" \
455
+ -e "/extensions:/,/image:/{s#image: .*#image: $(REGISTRY_NAME_FULL)$( IMAGE_OPERATOR)#}" \
456
+ -e "/^ pmm:/,/^ image:/{s#image: .*#image: $(REGISTRY_NAME_FULL)$(IMAGE_PMM3_CLIENT )#}" deploy/cr.yaml
433
457
$(SED ) -i -r " /Version *= \" [0-9]+\.[0-9]+\.[0-9]+\" $$ / s/[0-9]+\.[0-9]+\.[0-9]+/$( VERSION) /" pkg/apis/pgv2.percona.com/v2/perconapgcluster_types.go
434
458
$(SED ) -i \
435
- -e "/^spec :/,/^ image:/{s# image: .*#image: $(IMAGE_OPERATOR )#}" \
436
- -e "/^spec:/,/^ toPostgresImage:/{s#toPostgresImage: .*#toPostgresImage: $(IMAGE_POSTGRESQL16 )#}" \
437
- -e "/^spec:/,/^ toPgBouncerImage:/{s#toPgBouncerImage: .*#toPgBouncerImage: $(IMAGE_PGBOUNCER16 )#}" \
438
- -e "/^spec:/,/^ toPgBackRestImage:/{s#toPgBackRestImage: .*#toPgBackRestImage: $(IMAGE_PGBACKREST16 )#}" deploy/upgrade.yaml
459
+ -e "/^spec :/,/^ image:/{s# image: .*#image: $(REGISTRY_NAME_FULL)$(IMAGE_UPGRADE )#}" \
460
+ -e "/^spec:/,/^ toPostgresImage:/{s#toPostgresImage: .*#toPostgresImage: $(REGISTRY_NAME_FULL)$(IMAGE_POSTGRESQL17 )#}" \
461
+ -e "/^spec:/,/^ toPgBouncerImage:/{s#toPgBouncerImage: .*#toPgBouncerImage: $(REGISTRY_NAME_FULL)$(IMAGE_PGBOUNCER17 )#}" \
462
+ -e "/^spec:/,/^ toPgBackRestImage:/{s#toPgBackRestImage: .*#toPgBackRestImage: $(REGISTRY_NAME_FULL)$(IMAGE_BACKREST17 )#}" deploy/upgrade.yaml
439
463
440
464
# Prepare main branch after release
441
- MAJOR_VER := $(shell grep -oE "crVersion: .* " deploy/cr.yaml|grep -oE "[0-9]+\.[0-9]+\.[0-9]+"|cut -d'.' -f1)
442
- MINOR_VER := $(shell grep -oE "crVersion: .* " deploy/cr.yaml|grep -oE "[0-9]+\.[0-9]+\.[0-9]+"|cut -d'.' -f2)
443
- NEXT_VER ?= $(MAJOR_VER ) .$$(($(MINOR_VER ) + 1 ) ).0
465
+ CURRENT_VERSION := $(shell grep -oE "crVersion: [0-9]+\.[0-9]+\.[0-9]+" deploy/cr.yaml | grep -oE "[0-9]+\.[0-9]+\.[0-9]+")
466
+ MAJOR_VER := $(word 1,$(subst ., ,$(CURRENT_VERSION ) ) )
467
+ MINOR_VER := $(word 2,$(subst ., ,$(CURRENT_VERSION ) ) )
468
+ NEXT_VER := $(MAJOR_VER ) .$(shell expr $(MINOR_VER ) + 1) .0
469
+ PREV1_VERSION := $(MAJOR_VER ) .$(shell expr $(MINOR_VER ) - 1) .0
470
+ PREV2_VERSION := $(MAJOR_VER ) .$(shell expr $(MINOR_VER ) - 2) .0
444
471
after-release : generate
472
+ echo $(NEXT_VER ) > percona/version/version.txt
445
473
$(SED ) -i \
446
474
-e " /^spec:/,/^ crVersion:/{s/crVersion: .*/crVersion: $( NEXT_VER) /}" \
447
- -e " /^spec:/,/^ image:/{s#image: .*#image: perconalab/percona-postgresql-operator:main-ppg$( PG_VER) -postgres#}" \
448
- -e " /^ pgBouncer:/,/^ image:/{s#image: .*#image: perconalab/percona-postgresql-operator:main-ppg $( PG_VER) -pgbouncer #}" \
449
- -e " /^ pgbackrest:/,/^ image:/{s#image: .*#image: perconalab/percona-postgresql-operator:main-ppg $( PG_VER) -pgbackrest #}" \
450
- -e " /extensions:/,/image:/{s#image: .*#image: perconalab/percona-postgresql-operator:main#}" \
451
- -e " /^ pmm:/,/^ image:/{s#image: .*#image: perconalab/pmm-client:dev-latest#}" deploy/cr.yaml
475
+ -e " /^spec:/,/^ image:/{s#image: .*#image: $( REGISTRY_NAME_FULL ) perconalab/percona-postgresql-operator:main-ppg$( PG_VER) -postgres#}" \
476
+ -e " /^ pgBouncer:/,/^ image:/{s#image: .*#image: $( REGISTRY_NAME_FULL ) perconalab/percona-postgresql-operator:main-pgbouncer $( PG_VER) #}" \
477
+ -e " /^ pgbackrest:/,/^ image:/{s#image: .*#image: $( REGISTRY_NAME_FULL ) perconalab/percona-postgresql-operator:main-pgbackrest $( PG_VER) #}" \
478
+ -e " /extensions:/,/image:/{s#image: .*#image: $( REGISTRY_NAME_FULL ) perconalab/percona-postgresql-operator:main#}" \
479
+ -e " /^ pmm:/,/^ image:/{s#image: .*#image: $( REGISTRY_NAME_FULL ) perconalab/pmm-client:dev-latest#}" deploy/cr.yaml percona/controller/testdata/sidecar-resources- cr.yaml
452
480
$(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
453
481
$(SED ) -i \
454
- -e " /^spec:/,/^ image:/{s#image: .*#image: perconalab/percona-postgresql-operator:main#}" \
455
- -e " /^spec:/,/^ toPostgresImage:/{s#toPostgresImage: .*#toPostgresImage: perconalab/percona-postgresql-operator:main-ppg$( PG_VER) -postgres#}" \
456
- -e " /^spec:/,/^ toPgBouncerImage:/{s#toPgBouncerImage: .*#toPgBouncerImage: perconalab/percona-postgresql-operator:main-ppg$( PG_VER) -pgbouncer#}" \
457
- -e " /^spec:/,/^ toPgBackRestImage:/{s#toPgBackRestImage: .*#toPgBackRestImage: perconalab/percona-postgresql-operator:main-ppg$( PG_VER) -pgbackrest#}" deploy/upgrade.yaml
482
+ -e " /^spec:/,/^ image:/{s#image: .*#image: $( REGISTRY_NAME_FULL) perconalab/percona-postgresql-operator:main-upgrade#}" \
483
+ -e " /^spec:/,/^ toPostgresImage:/{s#toPostgresImage: .*#toPostgresImage: $( REGISTRY_NAME_FULL) perconalab/percona-postgresql-operator:main-ppg$( PG_VER) -postgres#}" \
484
+ -e " /^spec:/,/^ toPgBouncerImage:/{s#toPgBouncerImage: .*#toPgBouncerImage: $( REGISTRY_NAME_FULL) perconalab/percona-postgresql-operator:main-pgbouncer$( PG_VER) #}" \
485
+ -e " /^spec:/,/^ toPgBackRestImage:/{s#toPgBackRestImage: .*#toPgBackRestImage: $( REGISTRY_NAME_FULL) perconalab/percona-postgresql-operator:main-pgbackrest$( PG_VER) #}" deploy/upgrade.yaml
486
+ $(SED ) -i " s/$( PREV2_VERSION) /$( PREV1_VERSION) /g" e2e-tests/tests/upgrade-consistency/01-* .yaml
487
+ $(SED ) -i " s/$( PREV1_VERSION) /$( CURRENT_VERSION) /g" e2e-tests/tests/upgrade-consistency/02-* .yaml
488
+ $(SED ) -i " s/$( CURRENT_VERSION) /$( NEXT_VER) /g" e2e-tests/tests/upgrade-consistency/03-* .yaml e2e-tests/tests/init-deploy/05-assert.yaml
0 commit comments