Skip to content

Commit 69e355a

Browse files
authored
Add Ubuntu 24.04 LTS Noble to CI (#162)
* Fix build on Ubuntu 24.04 LTS * Fix Ubuntu 24.04 build * Update nginx versions
1 parent ad76713 commit 69e355a

File tree

4 files changed

+23
-19
lines changed

4 files changed

+23
-19
lines changed

.github/workflows/blank.yml

Lines changed: 9 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ on:
66
- develop
77
- master
88
- dev
9+
- ci
910
pull_request:
1011
branches:
1112
- master
@@ -18,37 +19,31 @@ jobs:
1819
runs-on: ${{ matrix.os }}
1920
strategy:
2021
matrix:
21-
os: [ubuntu-20.04, ubuntu-22.04]
22-
22+
os: [ubuntu-20.04, ubuntu-22.04, ubuntu-24.04]
2323
steps:
2424
- uses: actions/checkout@v4
2525
- name: Prepare VM
26-
run: |
27-
sudo apt-get update -qq
28-
sudo apt install make libunwind-dev libgoogle-perftools-dev
29-
sudo LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php -y
30-
sudo rm -rf /etc/mysql /var/lib/mysql /etc/nginx
31-
sudo apt-get purge --option=Dpkg::options::=--force-all --assume-yes graphviz* redis* mysql* nginx || sudo dpkg --configure -a
26+
run: sudo bash tests.sh
3227
- name: Mainline build
33-
run: sudo bash nginx-build.sh || cat /tmp/nginx-ee.log
28+
run: sudo bash nginx-build.sh --travis || cat /tmp/nginx-ee.log
3429
- name : Nginx check Mainline build
3530
run: sudo nginx -V || cat /tmp/nginx-ee.log
3631
- name: Stable build
37-
run: sudo bash nginx-build.sh --stable
32+
run: sudo bash nginx-build.sh --travis --stable
3833
- name : Nginx check Stable build
3934
run: sudo nginx -V
4035
- name: Full build stable
41-
run: sudo bash nginx-build.sh --full --stable
36+
run: sudo bash nginx-build.sh --travis --full --stable
4237
- name : Nginx check Full build stable
4338
run: sudo nginx -V
4439
- name: Mainline naxsi
45-
run: sudo bash nginx-build.sh --naxsi || cat /tmp/nginx-ee.log
40+
run: sudo bash nginx-build.sh --naxsi --travis || cat /tmp/nginx-ee.log
4641
- name : Nginx check Mainline naxsi
4742
run: sudo nginx -V
4843
- name: libressl build
49-
run: sudo bash nginx-build.sh --libressl || cat /tmp/nginx-ee.log
44+
run: sudo bash nginx-build.sh --libressl --travis || cat /tmp/nginx-ee.log
5045
- name : Nginx check libressl build
5146
run: sudo nginx -V
5247
- name: dynamic build
53-
run: sudo bash nginx-build.sh --dynamic || cat /tmp/nginx-ee.log
48+
run: sudo bash nginx-build.sh --dynamic --travis || cat /tmp/nginx-ee.log
5449

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,9 +58,9 @@ Automated Nginx compilation from sources with HTTP/3 QUIC and additional modules
5858

5959
## Additional Third-party modules
6060

61-
Nginx current mainline release : **v1.25.5** with HTTP/3 QUIC
61+
Nginx current mainline release : **v1.27.0** with HTTP/3 QUIC
6262

63-
Nginx current stable release : **v1.26.0** with HTTP/3 QUIC
63+
Nginx current stable release : **v1.26.1** with HTTP/3 QUIC
6464

6565
* [ngx_cache_purge](https://github.com/FRiCKLE/ngx_cache_purge)
6666
* [headers-more-nginx-module](https://github.com/openresty/headers-more-nginx-module)

nginx-build.sh

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,7 @@ TLS13_CIPHERS="TLS13+AESGCM+AES256:TLS13+AESGCM+AES128:TLS13+CHACHA20:EECDH+CHAC
150150
readonly OS_ARCH="$(uname -m)"
151151
OS_DISTRO_FULL="$(lsb_release -ds)"
152152
readonly DISTRO_ID="$(lsb_release -si)"
153+
DISTRO_CODENAME="$(lsb_release -sc)"
153154

154155
# Colors
155156
CSI='\033['
@@ -269,7 +270,6 @@ fi
269270

270271
if [ "$LIBRESSL" = "y" ]; then
271272
NGX_SSL_LIB="--with-openssl=../libressl"
272-
QUIC_VALID="YES"
273273
LIBRESSL_VALID="YES"
274274
OPENSSL_OPT=""
275275
else
@@ -282,7 +282,9 @@ else
282282
fi
283283
NGX_SSL_LIB=""
284284
OPENSSL_VALID="from system"
285-
LIBSSL_DEV="libssl-dev"
285+
if [ "$TRAVIS_BUILD" != "1" ]; then
286+
LIBSSL_DEV="libssl-dev"
287+
fi
286288

287289
fi
288290

@@ -799,7 +801,7 @@ _configure_nginx() {
799801
fi
800802

801803
if [ "$OS_ARCH" = 'x86_64' ]; then
802-
if [ "$DISTRO_ID" = "Ubuntu" ]; then
804+
if [ "$DISTRO_ID" = "Ubuntu" ] && [ "$DISTRO_CODENAME" != "noble" ]; then
803805
DEB_CFLAGS='-m64 -march=native -mtune=native -DTCP_FASTOPEN=23 -g -O3 -fstack-protector-strong -flto -ffat-lto-objects -fuse-ld=gold --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wimplicit-fallthrough=0 -fcode-hoisting -Wp,-D_FORTIFY_SOURCE=2 -gsplit-dwarf'
804806
DEB_LFLAGS='-lrt -ljemalloc -Wl,-z,relro -Wl,-z,now -fPIC -flto -ffat-lto-objects'
805807
fi

tests.sh

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
#!/usr/bin/env bash
2+
apt-get update -qq >/dev/null 2>&1
3+
LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php -y >/dev/null 2>&1
4+
rm -rf /etc/mysql /var/lib/mysql /etc/nginx
5+
apt-get install make libunwind-dev libgoogle-perftools-dev -y >/dev/null 2>&1
6+
apt-get purge --option=Dpkg::options::=--force-all --assume-yes graphviz* redis* php* mysql* nginx* >/dev/null 2>&1
7+
apt-get -qq autoremove --purge >/dev/null 2>&1

0 commit comments

Comments
 (0)