Skip to content

Commit 31ca6ea

Browse files
authored
chore(release): cleanup the Jenkins release logic (#8706)
1 parent 39dd728 commit 31ca6ea

File tree

1 file changed

+23
-122
lines changed

1 file changed

+23
-122
lines changed

Jenkinsfile

+23-122
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ pipeline {
5757
}
5858
}
5959
parallel {
60-
stage('AmazonLinux') {
60+
stage('RPM') {
6161
agent {
6262
node {
6363
label 'bionic'
@@ -66,168 +66,69 @@ pipeline {
6666
environment {
6767
KONG_SOURCE_LOCATION = "${env.WORKSPACE}"
6868
KONG_BUILD_TOOLS_LOCATION = "${env.WORKSPACE}/../kong-build-tools"
69-
AWS_ACCESS_KEY = credentials('AWS_ACCESS_KEY')
70-
AWS_SECRET_ACCESS_KEY = credentials('AWS_SECRET_ACCESS_KEY')
71-
}
72-
steps {
73-
sh 'echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin || true'
74-
sh 'make setup-kong-build-tools'
75-
sh 'PACKAGE_TYPE=rpm RESTY_IMAGE_BASE=amazonlinux RESTY_IMAGE_TAG=2 make release'
76-
}
77-
}
78-
stage('src & Alpine') {
79-
agent {
80-
node {
81-
label 'bionic'
82-
}
83-
}
84-
environment {
85-
KONG_SOURCE_LOCATION = "${env.WORKSPACE}"
86-
KONG_BUILD_TOOLS_LOCATION = "${env.WORKSPACE}/../kong-build-tools"
87-
AWS_ACCESS_KEY = credentials('AWS_ACCESS_KEY')
88-
AWS_SECRET_ACCESS_KEY = credentials('AWS_SECRET_ACCESS_KEY')
89-
}
90-
steps {
91-
sh 'echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin || true'
92-
sh 'make setup-kong-build-tools'
93-
sh 'PACKAGE_TYPE=src RESTY_IMAGE_BASE=src make release'
94-
sh 'PACKAGE_TYPE=apk RESTY_IMAGE_BASE=alpine RESTY_IMAGE_TAG=3.14 CACHE=false DOCKER_MACHINE_ARM64_NAME="kong-"`cat /proc/sys/kernel/random/uuid` make release'
95-
96-
}
97-
}
98-
stage('RedHat') {
99-
agent {
100-
node {
101-
label 'bionic'
102-
}
103-
}
104-
environment {
105-
PACKAGE_TYPE = 'rpm'
106-
RESTY_IMAGE_BASE = 'rhel'
107-
KONG_SOURCE_LOCATION = "${env.WORKSPACE}"
108-
KONG_BUILD_TOOLS_LOCATION = "${env.WORKSPACE}/../kong-build-tools"
109-
PRIVATE_KEY_FILE = credentials('kong.private.gpg-key.asc')
110-
PRIVATE_KEY_PASSPHRASE = credentials('kong.private.gpg-key.asc.password')
111-
}
112-
steps {
113-
sh 'echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin || true'
114-
sh 'make setup-kong-build-tools'
115-
sh 'cp $PRIVATE_KEY_FILE ../kong-build-tools/kong.private.gpg-key.asc'
116-
sh 'RESTY_IMAGE_TAG=7 make release'
117-
sh 'RESTY_IMAGE_TAG=8 make release'
118-
}
119-
}
120-
stage('CentOS') {
121-
agent {
122-
node {
123-
label 'bionic'
124-
}
125-
}
126-
environment {
127-
PACKAGE_TYPE = 'rpm'
128-
RESTY_IMAGE_BASE = 'centos'
129-
KONG_SOURCE_LOCATION = "${env.WORKSPACE}"
130-
KONG_BUILD_TOOLS_LOCATION = "${env.WORKSPACE}/../kong-build-tools"
69+
GITHUB_SSH_KEY = credentials('github_bot_ssh_key')
70+
PACKAGE_TYPE = "rpm"
13171
PRIVATE_KEY_FILE = credentials('kong.private.gpg-key.asc')
13272
PRIVATE_KEY_PASSPHRASE = credentials('kong.private.gpg-key.asc.password')
13373
}
13474
steps {
13575
sh 'echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin || true'
13676
sh 'make setup-kong-build-tools'
13777
sh 'cp $PRIVATE_KEY_FILE ../kong-build-tools/kong.private.gpg-key.asc'
138-
sh 'RESTY_IMAGE_TAG=7 make release'
139-
sh 'RESTY_IMAGE_TAG=8 make release'
78+
sh 'make RESTY_IMAGE_BASE=amazonlinux RESTY_IMAGE_TAG=2 release'
79+
sh 'make RESTY_IMAGE_BASE=centos RESTY_IMAGE_TAG=7 release'
80+
sh 'make RESTY_IMAGE_BASE=centos RESTY_IMAGE_TAG=8 release'
81+
sh 'make RESTY_IMAGE_BASE=rhel RESTY_IMAGE_TAG=7 release'
82+
sh 'make RESTY_IMAGE_BASE=rhel RESTY_IMAGE_TAG=8 release'
14083
}
14184
}
142-
stage('Debian OldStable') {
85+
stage('DEB') {
14386
agent {
14487
node {
14588
label 'bionic'
14689
}
14790
}
14891
environment {
149-
PACKAGE_TYPE = 'deb'
150-
RESTY_IMAGE_BASE = 'debian'
151-
KONG_SOURCE_LOCATION = "${env.WORKSPACE}"
152-
KONG_BUILD_TOOLS_LOCATION = "${env.WORKSPACE}/../kong-build-tools"
153-
}
154-
steps {
155-
sh 'echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin || true'
156-
sh 'make setup-kong-build-tools'
157-
sh 'RESTY_IMAGE_TAG=stretch make release'
158-
}
159-
}
160-
stage('Debian Stable & Testing') {
161-
agent {
162-
node {
163-
label 'bionic'
164-
}
165-
}
166-
environment {
167-
PACKAGE_TYPE = 'deb'
168-
RESTY_IMAGE_BASE = 'debian'
169-
KONG_SOURCE_LOCATION = "${env.WORKSPACE}"
170-
KONG_BUILD_TOOLS_LOCATION = "${env.WORKSPACE}/../kong-build-tools"
171-
}
172-
steps {
173-
sh 'echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin || true'
174-
sh 'make setup-kong-build-tools'
175-
sh 'RESTY_IMAGE_TAG=buster make release'
176-
sh 'RESTY_IMAGE_TAG=bullseye make release'
177-
}
178-
}
179-
stage('Ubuntu') {
180-
agent {
181-
node {
182-
label 'bionic'
183-
}
184-
}
185-
environment {
186-
PACKAGE_TYPE = 'deb'
187-
RESTY_IMAGE_BASE = 'ubuntu'
188-
RESTY_IMAGE_TAG = 'bionic'
18992
KONG_SOURCE_LOCATION = "${env.WORKSPACE}"
19093
KONG_BUILD_TOOLS_LOCATION = "${env.WORKSPACE}/../kong-build-tools"
94+
GITHUB_SSH_KEY = credentials('github_bot_ssh_key')
95+
PACKAGE_TYPE = "deb"
19196
}
19297
steps {
19398
sh 'echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin || true'
19499
sh 'make setup-kong-build-tools'
195-
sh 'RESTY_IMAGE_TAG=bionic make release'
196-
sh 'RESTY_IMAGE_TAG=focal make release'
100+
sh 'make RESTY_IMAGE_BASE=debian RESTY_IMAGE_TAG=9 release'
101+
sh 'make RESTY_IMAGE_BASE=debian RESTY_IMAGE_TAG=10 release'
102+
sh 'make RESTY_IMAGE_BASE=debian RESTY_IMAGE_TAG=11 release'
103+
sh 'make RESTY_IMAGE_BASE=ubuntu RESTY_IMAGE_TAG=16.04 release'
104+
sh 'make RESTY_IMAGE_BASE=ubuntu RESTY_IMAGE_TAG=18.04 release'
105+
sh 'make RESTY_IMAGE_BASE=ubuntu RESTY_IMAGE_TAG=20.04 release'
197106
}
198107
}
199-
stage('Ubuntu Xenial') {
108+
stage('SRC & Alpine') {
200109
agent {
201110
node {
202111
label 'bionic'
203112
}
204113
}
205114
environment {
206-
PACKAGE_TYPE = 'deb'
207-
RESTY_IMAGE_BASE = 'ubuntu'
208-
RESTY_IMAGE_TAG = 'xenial'
209-
CACHE = 'false'
210-
UPDATE_CACHE = 'true'
211-
USER = 'travis'
212115
KONG_SOURCE_LOCATION = "${env.WORKSPACE}"
213116
KONG_BUILD_TOOLS_LOCATION = "${env.WORKSPACE}/../kong-build-tools"
117+
GITHUB_SSH_KEY = credentials('github_bot_ssh_key')
118+
PACKAGE_TYPE = "rpm"
214119
AWS_ACCESS_KEY = credentials('AWS_ACCESS_KEY')
215120
AWS_SECRET_ACCESS_KEY = credentials('AWS_SECRET_ACCESS_KEY')
216121
}
217122
steps {
218123
sh 'echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin || true'
219124
sh 'make setup-kong-build-tools'
220-
sh 'DOCKER_MACHINE_ARM64_NAME="jenkins-kong-"`cat /proc/sys/kernel/random/uuid` make release'
221-
}
222-
post {
223-
cleanup {
224-
dir('../kong-build-tools'){ sh 'make cleanup-build' }
225-
}
125+
sh 'make RESTY_IMAGE_BASE=src RESTY_IMAGE_TAG=src PACKAGE_TYPE=src release'
126+
sh 'make RESTY_IMAGE_BASE=alpine RESTY_IMAGE_TAG=3.10 PACKAGE_TYPE=apk DOCKER_MACHINE_ARM64_NAME="kong-"`cat /proc/sys/kernel/random/uuid` release'
226127
}
227128
}
228129
}
229130
}
230-
stage('Post Packaging Steps') {
131+
stage('Post Release Steps') {
231132
when {
232133
beforeAgent true
233134
allOf {

0 commit comments

Comments
 (0)