@@ -163,12 +163,12 @@ update-version:
163163MAJOR_VER := $(shell grep -oE "crVersion: .* " deploy/cr.yaml|grep -oE "[0-9]+\.[0-9]+\.[0-9]+"|cut -d'.' -f1)
164164MINOR_VER := $(shell grep -oE "crVersion: .* " deploy/cr.yaml|grep -oE "[0-9]+\.[0-9]+\.[0-9]+"|cut -d'.' -f2)
165165NEXT_VER ?= $(MAJOR_VER ) .$$(($(MINOR_VER ) + 1 ) ).0
166- after-release : update-version manifests
166+ after-release : update-version manifests upgrade-consistency-after-release
167167 $(SED ) -i \
168168 -e " s/crVersion: .*/crVersion: $( NEXT_VER) /" \
169169 -e " /^ pxc:/,/^ image:/{s#image: .*#image: perconalab/percona-xtradb-cluster-operator:main-pxc8.4#}" \
170170 -e " /^ haproxy:/,/^ image:/{s#image: .*#image: perconalab/percona-xtradb-cluster-operator:main-haproxy#}" \
171- -e " /^ logcollector:/,/^ image:/{s#image: .*#image: perconalab/percona-xtradb-cluster-operator :main-logcollector#}" deploy/cr-minimal.yaml
171+ -e " /^ logcollector:/,/^ image:/{s#image: .*#image: perconalab/fluentbit :main-logcollector#}" deploy/cr-minimal.yaml
172172 $(SED ) -i \
173173 -e " s/crVersion: .*/crVersion: $( NEXT_VER) /" \
174174 -e " /^ pxc:/,/^ image:/{s#image: .*#image: perconalab/percona-xtradb-cluster-operator:main-pxc8.4#}" \
@@ -178,6 +178,60 @@ after-release: update-version manifests
178178 -e " /^ backup:/,/^ image:/{s#image: .*#image: perconalab/percona-xtradb-cluster-operator:main-pxc8.4-backup#}" \
179179 -e " /initContainer:/,/image:/{s#image: .*#image: perconalab/percona-xtradb-cluster-operator:main#}" \
180180 -e " /^ pmm:/,/^ image:/{s#image: .*#image: perconalab/pmm-client:3-dev-latest#}" deploy/cr.yaml
181+ # Revert release_versions file to perconalab dev images
182+ $(SED) -i \
183+ -e "s# ^IMAGE_OPERATOR=.*#IMAGE_OPERATOR=perconalab/percona-xtradb-cluster-operator:main#" \
184+ -e "s#^IMAGE_PXC84=.*#IMAGE_PXC84=perconalab/percona-xtradb-cluster-operator:main-pxc8.4#" \
185+ -e "s#^IMAGE_BACKUP84=.*#IMAGE_BACKUP84=perconalab/percona-xtradb-cluster-operator:main-pxc8.4-backup#" \
186+ -e "s#^IMAGE_PXC80=.*#IMAGE_PXC80=perconalab/percona-xtradb-cluster-operator:main-pxc8.0#" \
187+ -e "s#^IMAGE_BACKUP80=.*#IMAGE_BACKUP80=perconalab/percona-xtradb-cluster-operator:main-pxc8.0-backup#" \
188+ -e "s#^IMAGE_PXC57=.*#IMAGE_PXC57=perconalab/percona-xtradb-cluster-operator:main-pxc5.7#" \
189+ -e "s#^IMAGE_BACKUP57=.*#IMAGE_BACKUP57=perconalab/percona-xtradb-cluster-operator:main-pxc5.7-backup#" \
190+ -e "s#^IMAGE_PROXY=.*#IMAGE_PROXY=perconalab/percona-xtradb-cluster-operator:main-proxysql#" \
191+ -e "s#^IMAGE_PROXY3=.*#IMAGE_PROXY3=perconalab/percona-xtradb-cluster-operator:main-proxysql3#" \
192+ -e "s#^IMAGE_HAPROXY=.*#IMAGE_HAPROXY=perconalab/percona-xtradb-cluster-operator:main-haproxy#" \
193+ -e "s#^IMAGE_LOGCOLLECTOR=.*#IMAGE_LOGCOLLECTOR=perconalab/fluentbit:main-logcollector#" \
194+ -e "s#^IMAGE_PMM_CLIENT=.*#IMAGE_PMM_CLIENT=perconalab/pmm-client:dev-latest#" \
195+ -e "s#^IMAGE_PMM_SERVER=.*#IMAGE_PMM_SERVER=perconalab/pmm-server:dev-latest#" \
196+ -e "s#^IMAGE_PMM3_CLIENT=.*#IMAGE_PMM3_CLIENT=perconalab/pmm-client:3-dev-latest#" \
197+ -e "s#^IMAGE_PMM3_SERVER=.*#IMAGE_PMM3_SERVER=perconalab/pmm-server:3-dev-latest#" e2e-tests/release_versions
198+
199+ # Update the upgrade-consistency test window to the next version.
200+ # Gets the 3 tested versions from the run file, drops the oldest, keeps the two newest, and appends the next development version X.(Y+1).0.
201+ # Copies and renames compare files, bumps generation version in statefulset compare files.
202+ UC_DIR := e2e-tests/upgrade-consistency
203+ .PHONY : upgrade-consistency-after-release
204+ upgrade-consistency-after-release : # # Slide upgrade-consistency test window to the next version
205+ @set -e; \
206+ dir=$(UC_DIR ) ; cmp=$$ dir/compare; run=$$ dir/run; \
207+ vers=$$(grep -oE '[0-9]+\.[0-9]+\.[0-9]+' $$run | awk '!seen[$$0]++' | sort -t. -k1,1n -k2,2n -k3,3n ) ; \
208+ n=$$(printf '%s\n' "$$vers" | grep -c . ) ; \
209+ [ " $$ n" -eq 3 ] || { echo " ERROR: expected 3 tested versions in $$ run, found $$ n: $$ vers" >&2 ; exit 1; }; \
210+ v1=$$(printf '%s\n' "$$vers" | sed -n 1p ) ; \
211+ v2=$$(printf '%s\n' "$$vers" | sed -n 2p ) ; \
212+ v3=$$(printf '%s\n' "$$vers" | sed -n 3p ) ; \
213+ major=$$ {v3%%.* }; minor=$$(echo "$$v3" | cut -d. -f2 ) ; \
214+ vnew=$$ major.$$((minor + 1 ) ).0; \
215+ suf () { echo " $$ 1" | tr -d . ; }; \
216+ esc () { echo " $$ 1" | sed ' s/\./\\./g' ; }; \
217+ echo " upgrade-consistency: replace old with new versions: [$$ v1 $$ v2 $$ v3] -> [$$ v2 $$ v3 $$ vnew]" ; \
218+ $(SED ) -i " s/$$ (esc $$ v3)/$$ vnew/g; s/-$$ (suf $$ v3)/-$$ (suf $$ vnew)/g" $$ run; \
219+ $(SED ) -i " s/$$ (esc $$ v2)/$$ v3/g; s/-$$ (suf $$ v2)/-$$ (suf $$ v3)/g" $$ run; \
220+ $(SED ) -i " s/$$ (esc $$ v1)/$$ v2/g; s/-$$ (suf $$ v1)/-$$ (suf $$ v2)/g" $$ run; \
221+ s2=$$(suf $$v2 ) ; s3=$$(suf $$v3 ) ; snew=$$(suf $$vnew ) ; \
222+ for f in $$ cmp/* $$ s3* ; do cp " $$ f" " $$ (echo " $$ f" | sed " s/$$ s3/$$ snew/" )" ; done ; \
223+ for s in $$ s2 $$ s3; do \
224+ for f in $$ cmp/statefulset_* $$ s* ; do \
225+ g=$$(awk '/^ generation:/{print $$2; exit}' "$$f" ) ; \
226+ [ -n " $$ g" ] && $(SED ) -i " s/^ generation: $$ g$$ / generation: $$ ((g - 1))/" " $$ f" ; \
227+ done ; \
228+ done ; \
229+ keep=" $$ s2 $$ s3 $$ snew " ; \
230+ for f in $$ cmp/* .yml; do \
231+ v=$$(basename "$$f" | grep -oE '[0-9]+') ; \
232+ case " $$ keep" in * " $$ v " * ) : ;; * ) rm -f " $$ f" ;; esac ; \
233+ done ; \
234+ echo " upgrade-consistency: done; review with: git status $$ dir"
181235
182236VS_BRANCH = main
183237version-service-client : swagger
0 commit comments