@@ -18,6 +18,7 @@ echo "tag and push image"
18
18
VERSION=$( cat VERSION)
19
19
set +e
20
20
docker manifest rm kubeovn/kube-ovn:${VERSION}
21
+ docker manifest rm kubeovn/kube-ovn:${VERSION} -debug
21
22
docker manifest rm kubeovn/vpc-nat-gateway:${VERSION}
22
23
set -e
23
24
@@ -36,6 +37,27 @@ docker manifest push kubeovn/kube-ovn:${VERSION}
36
37
docker manifest push kubeovn/vpc-nat-gateway:${VERSION}
37
38
docker manifest push kubeovn/kube-ovn:${VERSION} -debug
38
39
40
+ NEXT_VERSION=$( cat VERSION | awk -F ' .' ' {print $1"."$2"."$3+1}' )
41
+ echo " create and push base images for the next version ${NEXT_VERSION} "
42
+ set +e
43
+ docker manifest rm kubeovn/kube-ovn-base:${NEXT_VERSION}
44
+ docker manifest rm kubeovn/kube-ovn-base:${NEXT_VERSION} -debug
45
+ set -e
46
+ docker pull kubeovn/kube-ovn-base:${VERSION} -amd64
47
+ docker pull kubeovn/kube-ovn-base:${VERSION} -arm64
48
+ docker pull kubeovn/kube-ovn-base:${VERSION} -amd64-legacy
49
+ docker pull kubeovn/kube-ovn-base:${VERSION} -dpdk
50
+ docker pull kubeovn/kube-ovn-base:${VERSION} -debug-amd64
51
+ docker pull kubeovn/kube-ovn-base:${VERSION} -debug-arm64
52
+ docker manifest create kubeovn/kube-ovn-base:${NEXT_VERSION} kubeovn/kube-ovn-base:${VERSION} -amd64 kubeovn/kube-ovn-base:${VERSION} -arm64
53
+ docker manifest create kubeovn/kube-ovn-base:${NEXT_VERSION} -debug kubeovn/kube-ovn-base:${VERSION} -debug-amd64 kubeovn/kube-ovn-base:${VERSION} -debug-arm64
54
+ docker tag kubeovn/kube-ovn-base:${VERSION} -amd64-legacy kubeovn/kube-ovn-base:${NEXT_VERSION} -amd64-legacy
55
+ docker tag kubeovn/kube-ovn-base:${VERSION} -dpdk kubeovn/kube-ovn-base:${NEXT_VERSION} -dpdk
56
+ docker manifest push kubeovn/kube-ovn-base:${NEXT_VERSION}
57
+ docker manifest push kubeovn/kube-ovn-base:${NEXT_VERSION} -debug
58
+ docker push kubeovn/kube-ovn-base:${NEXT_VERSION} -amd64-legacy
59
+ docker push kubeovn/kube-ovn-base:${NEXT_VERSION} -dpdk
60
+
39
61
current_branch=$( git rev-parse --abbrev-ref HEAD)
40
62
if [ " $current_branch " != " master" ]; then
41
63
echo " current branch is not master, release a patch version"
@@ -46,7 +68,7 @@ if [ "$current_branch" != "master" ]; then
46
68
sed -i ' s/appVersion:\ .*/appVersion:\ "' " ${VERSION# v} " ' "/' charts/kube-ovn/Chart.yaml
47
69
48
70
echo " commit, tag and push"
49
- git add dist/images/install.sh
71
+ git add dist/images/install.sh
50
72
git add charts/kube-ovn/values.yaml
51
73
git add charts/kube-ovn/Chart.yaml
52
74
git commit -m " release ${VERSION} "
@@ -55,15 +77,12 @@ if [ "$current_branch" != "master" ]; then
55
77
git push origin --tags
56
78
57
79
echo " modify version to next patch number"
58
- NEXT_VERSION=$( cat VERSION | awk -F ' .' ' {print $1"."$2"."$3+1}' )
80
+ NEXT_VERSION=$( cat VERSION | awk -F ' .' ' {print $1"."$2"."$3+1}' )
59
81
echo ${NEXT_VERSION} > VERSION
60
82
git add VERSION
61
83
git commit -m " prepare for next release"
62
84
git push
63
85
64
- echo " trigger action to build new base"
65
- gh workflow run build-kube-ovn-base.yaml -f branch=$current_branch
66
-
67
86
echo " Modify the doc version number"
68
87
cd ${DOCS_DIR}
69
88
git checkout $( cat VERSION | awk -F ' .' ' {print $1"."$2}' )
@@ -86,26 +105,46 @@ else
86
105
git checkout -b $RELEASE_BRANCH
87
106
git push origin $RELEASE_BRANCH
88
107
89
- echo " prepare next release in master branch"
108
+ echo " create and push base images for the master branch"
90
109
git checkout master
91
110
git pull
92
- NEXT_VERSION=$( cat VERSION | awk -F ' .' ' {print $1"."$2+1"."$3}' )
111
+ NEXT_VERSION=$( cat VERSION | awk -F ' .' ' {print $1"."$2+1"."$3}' )
112
+ set +e
113
+ docker manifest rm kubeovn/kube-ovn-base:${NEXT_VERSION}
114
+ docker manifest rm kubeovn/kube-ovn-base:${NEXT_VERSION} -debug
115
+ set -e
116
+ docker manifest create kubeovn/kube-ovn-base:${NEXT_VERSION} kubeovn/kube-ovn-base:${VERSION} -amd64 kubeovn/kube-ovn-base:${VERSION} -arm64
117
+ docker manifest create kubeovn/kube-ovn-base:${NEXT_VERSION} -debug kubeovn/kube-ovn-base:${VERSION} -debug-amd64 kubeovn/kube-ovn-base:${VERSION} -debug-arm64
118
+ docker tag kubeovn/kube-ovn-base:${VERSION} -amd64-legacy kubeovn/kube-ovn-base:${NEXT_VERSION} -amd64-legacy
119
+ docker tag kubeovn/kube-ovn-base:${VERSION} -dpdk kubeovn/kube-ovn-base:${NEXT_VERSION} -dpdk
120
+ docker manifest push kubeovn/kube-ovn-base:${NEXT_VERSION}
121
+ docker manifest push kubeovn/kube-ovn-base:${NEXT_VERSION} -debug
122
+ docker push kubeovn/kube-ovn-base:${NEXT_VERSION} -amd64-legacy
123
+ docker push kubeovn/kube-ovn-base:${NEXT_VERSION} -dpdk
124
+
125
+ echo " prepare next release in master branch"
93
126
echo ${NEXT_VERSION} > VERSION
94
127
sed -i ' /^VERSION=/c\VERSION="' " ${NEXT_VERSION} " ' "' dist/images/install.sh
95
128
sed -i ' s/tag:\ .*/tag:\ ' " ${NEXT_VERSION} " ' /' charts/kube-ovn/values.yaml
96
129
sed -i ' s/version:\ .*/version:\ ' " ${NEXT_VERSION} " ' /' charts/kube-ovn/Chart.yaml
97
130
sed -i ' s/appVersion:\ .*/appVersion:\ "' " ${NEXT_VERSION# v} " ' "/' charts/kube-ovn/Chart.yaml
131
+ sed -ri ' s#(\s+)(- master)#\1\2\n\1- ' $RELEASE_BRANCH ' #' .github/workflows/build-kube-ovn-base.yaml
132
+ sed -ri ' s#(\s+)(- master)#\1\2\n\1- ' $RELEASE_BRANCH ' #' .github/workflows/build-kube-ovn-base-dpdk.yaml
133
+ sed -ri ' s#(\s+)(- master)#\1\2\n\1- ' $RELEASE_BRANCH ' #' .github/workflows/scheduled-e2e.yaml
98
134
99
- git add dist/images/install.sh
135
+ git add dist/images/install.sh
100
136
git add charts/kube-ovn/values.yaml
101
137
git add charts/kube-ovn/Chart.yaml
102
138
git add VERSION
139
+ git add .github/workflows/build-kube-ovn-base.yaml
140
+ git add .github/workflows/build-kube-ovn-base-dpdk.yaml
141
+ git add .github/workflows/scheduled-e2e.yaml
103
142
git commit -m " prepare for next release"
104
143
git push
105
144
106
145
echo " prepare next release in release branch"
107
146
git checkout $RELEASE_BRANCH
108
- NEXT_VERSION=$( cat VERSION | awk -F ' .' ' {print $1"."$2"."$3+1}' )
147
+ NEXT_VERSION=$( cat VERSION | awk -F ' .' ' {print $1"."$2"."$3+1}' )
109
148
echo ${NEXT_VERSION} > VERSION
110
149
git add VERSION
111
150
git commit -m " prepare for next release"
0 commit comments