From 15a527c11e674a8f463b6eee0aa50912b3aee99b Mon Sep 17 00:00:00 2001 From: Andy Zhang Date: Wed, 20 Dec 2023 15:49:45 +0800 Subject: [PATCH] feat(cd): build debian 12 packages (#12218) KAG-3015 (cherry picked from commit 6646cad26d045950f1bfbcfb76547a673835bfcf) --- .github/matrix-full.yml | 14 +- build/dockerfiles/deb.Dockerfile | 2 +- .../unreleased/kong/debian-12-support.yml | 3 + scripts/explain_manifest/config.py | 13 ++ .../fixtures/debian-12-amd64.txt | 183 ++++++++++++++++++ 5 files changed, 212 insertions(+), 3 deletions(-) create mode 100644 changelog/unreleased/kong/debian-12-support.yml create mode 100644 scripts/explain_manifest/fixtures/debian-12-amd64.txt diff --git a/.github/matrix-full.yml b/.github/matrix-full.yml index b32ca5effd5..70b4787491e 100644 --- a/.github/matrix-full.yml +++ b/.github/matrix-full.yml @@ -28,6 +28,10 @@ build-packages: image: debian:11 package: deb check-manifest-suite: debian-11-amd64 +- label: debian-12 + image: debian:12 + package: deb + check-manifest-suite: debian-12-amd64 # RHEL - label: rhel-7 @@ -89,9 +93,9 @@ build-images: # Debian - label: debian - base-image: debian:11-slim + base-image: debian:12-slim package: deb - artifact-from: debian-11 + artifact-from: debian-12 # RHEL - label: rhel @@ -146,6 +150,12 @@ release-packages: artifact-version: 11 artifact-type: debian artifact: kong.amd64.deb +- label: debian-12 + package: deb + artifact-from: debian-12 + artifact-version: 12 + artifact-type: debian + artifact: kong.amd64.deb # RHEL - label: rhel-7 diff --git a/build/dockerfiles/deb.Dockerfile b/build/dockerfiles/deb.Dockerfile index 75c2252f875..a55b3706fcf 100644 --- a/build/dockerfiles/deb.Dockerfile +++ b/build/dockerfiles/deb.Dockerfile @@ -1,4 +1,4 @@ -ARG KONG_BASE_IMAGE=debian:bullseye-slim +ARG KONG_BASE_IMAGE=debian:bookworm-slim FROM --platform=$TARGETPLATFORM $KONG_BASE_IMAGE LABEL maintainer="Kong Docker Maintainers (@team-gateway-bot)" diff --git a/changelog/unreleased/kong/debian-12-support.yml b/changelog/unreleased/kong/debian-12-support.yml new file mode 100644 index 00000000000..26b8b6fcc17 --- /dev/null +++ b/changelog/unreleased/kong/debian-12-support.yml @@ -0,0 +1,3 @@ +message: "Build deb packages for Debian 12. The debian variant of kong docker image is built using Debian 12 now." +type: feature +scope: Core diff --git a/scripts/explain_manifest/config.py b/scripts/explain_manifest/config.py index 398c9346c96..370c87643a8 100644 --- a/scripts/explain_manifest/config.py +++ b/scripts/explain_manifest/config.py @@ -176,6 +176,19 @@ def transform(f: FileInfo): }, } ), + "debian-12-amd64": ExpectSuite( + name="Debian 12 (amd64)", + manifest="fixtures/debian-12-amd64.txt", + tests={ + common_suites: {}, + libc_libcpp_suites: { + "libc_max_version": "2.36", + # gcc 12.1.0 + "libcxx_max_version": "3.4.30", + "cxxabi_max_version": "1.3.13", + }, + } + ), "docker-image": ExpectSuite( name="Generic Docker Image", manifest=None, diff --git a/scripts/explain_manifest/fixtures/debian-12-amd64.txt b/scripts/explain_manifest/fixtures/debian-12-amd64.txt new file mode 100644 index 00000000000..fecba88d42b --- /dev/null +++ b/scripts/explain_manifest/fixtures/debian-12-amd64.txt @@ -0,0 +1,183 @@ +- Path : /etc/kong/kong.logrotate + +- Path : /lib/systemd/system/kong.service + +- Path : /usr/local/kong/gui + Type : directory + +- Path : /usr/local/kong/include/google + Type : directory + +- Path : /usr/local/kong/include/kong + Type : directory + +- Path : /usr/local/kong/lib/engines-3/afalg.so + Needed : + - libstdc++.so.6 + - libm.so.6 + - libcrypto.so.3 + - libc.so.6 + Runpath : /usr/local/kong/lib + +- Path : /usr/local/kong/lib/engines-3/capi.so + Needed : + - libstdc++.so.6 + - libm.so.6 + - libcrypto.so.3 + - libc.so.6 + Runpath : /usr/local/kong/lib + +- Path : /usr/local/kong/lib/engines-3/loader_attic.so + Needed : + - libstdc++.so.6 + - libm.so.6 + - libcrypto.so.3 + - libc.so.6 + Runpath : /usr/local/kong/lib + +- Path : /usr/local/kong/lib/engines-3/padlock.so + Needed : + - libstdc++.so.6 + - libm.so.6 + - libcrypto.so.3 + - libc.so.6 + Runpath : /usr/local/kong/lib + +- Path : /usr/local/kong/lib/libcrypto.so.3 + Needed : + - libstdc++.so.6 + - libm.so.6 + - libc.so.6 + Runpath : /usr/local/kong/lib + +- Path : /usr/local/kong/lib/libexpat.so.1.8.10 + Needed : + - libc.so.6 + +- Path : /usr/local/kong/lib/libssl.so.3 + Needed : + - libstdc++.so.6 + - libm.so.6 + - libcrypto.so.3 + - libc.so.6 + Runpath : /usr/local/kong/lib + +- Path : /usr/local/kong/lib/ossl-modules/legacy.so + Needed : + - libstdc++.so.6 + - libm.so.6 + - libcrypto.so.3 + - libc.so.6 + Runpath : /usr/local/kong/lib + +- Path : /usr/local/lib/lua/5.1/lfs.so + Needed : + - libc.so.6 + Runpath : /usr/local/kong/lib + +- Path : /usr/local/lib/lua/5.1/lpeg.so + Needed : + - libc.so.6 + Runpath : /usr/local/kong/lib + +- Path : /usr/local/lib/lua/5.1/lsyslog.so + Needed : + - libc.so.6 + Runpath : /usr/local/kong/lib + +- Path : /usr/local/lib/lua/5.1/lua_pack.so + Needed : + - libc.so.6 + Runpath : /usr/local/kong/lib + +- Path : /usr/local/lib/lua/5.1/lua_system_constants.so + Runpath : /usr/local/kong/lib + +- Path : /usr/local/lib/lua/5.1/lxp.so + Needed : + - libexpat.so.1 + - libc.so.6 + Runpath : /usr/local/kong/lib + +- Path : /usr/local/lib/lua/5.1/mime/core.so + Runpath : /usr/local/kong/lib + +- Path : /usr/local/lib/lua/5.1/pb.so + Needed : + - libc.so.6 + Runpath : /usr/local/kong/lib + +- Path : /usr/local/lib/lua/5.1/socket/core.so + Needed : + - libc.so.6 + Runpath : /usr/local/kong/lib + +- Path : /usr/local/lib/lua/5.1/socket/serial.so + Needed : + - libc.so.6 + Runpath : /usr/local/kong/lib + +- Path : /usr/local/lib/lua/5.1/socket/unix.so + Needed : + - libc.so.6 + Runpath : /usr/local/kong/lib + +- Path : /usr/local/lib/lua/5.1/ssl.so + Needed : + - libssl.so.3 + - libcrypto.so.3 + - libc.so.6 + Runpath : /usr/local/kong/lib + +- Path : /usr/local/lib/lua/5.1/yaml.so + Needed : + - libyaml-0.so.2 + - libc.so.6 + +- Path : /usr/local/openresty/lualib/cjson.so + Needed : + - libc.so.6 + +- Path : /usr/local/openresty/lualib/libatc_router.so + Needed : + - libgcc_s.so.1 + - libm.so.6 + - libc.so.6 + - ld-linux-x86-64.so.2 + - libstdc++.so.6 + +- Path : /usr/local/openresty/lualib/librestysignal.so + +- Path : /usr/local/openresty/lualib/rds/parser.so + +- Path : /usr/local/openresty/lualib/redis/parser.so + Needed : + - libc.so.6 + +- Path : /usr/local/openresty/nginx/modules/ngx_wasm_module.so + Needed : + - libm.so.6 + - libgcc_s.so.1 + - libc.so.6 + - ld-linux-x86-64.so.2 + Runpath : /usr/local/openresty/luajit/lib:/usr/local/kong/lib:/usr/local/openresty/lualib + +- Path : /usr/local/openresty/nginx/sbin/nginx + Needed : + - libcrypt.so.1 + - libluajit-5.1.so.2 + - libssl.so.3 + - libcrypto.so.3 + - libz.so.1 + - libc.so.6 + Runpath : /usr/local/openresty/luajit/lib:/usr/local/kong/lib:/usr/local/openresty/lualib + Modules : + - lua-kong-nginx-module + - lua-kong-nginx-module/stream + - lua-resty-events + - lua-resty-lmdb + - ngx_wasm_module + OpenSSL : OpenSSL 3.1.4 24 Oct 2023 + DWARF : True + DWARF - ngx_http_request_t related DWARF DIEs: True +