summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/linux.yml169
-rw-r--r--.travis.yml134
-rwxr-xr-xtest/travis_before_linux.sh1
3 files changed, 167 insertions, 137 deletions
diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml
index ad26bc945c..26e111c65f 100644
--- a/.github/workflows/linux.yml
+++ b/.github/workflows/linux.yml
@@ -23,8 +23,15 @@ env:
jobs:
build:
strategy:
+ fail-fast: false
matrix:
include:
+ # -------------------------------------------------------------------------
+ - name: Empty APLOGNO() test
+ env: |
+ SKIP_TESTING=1
+ TEST_LOGNO=1
+ # -------------------------------------------------------------------------
- name: Default
# -------------------------------------------------------------------------
- name: All-static modules
@@ -44,13 +51,155 @@ jobs:
# -------------------------------------------------------------------------
- name: Event MPM, all-modules, no CMSG_DATA
config: --enable-mods-shared=reallyall --with-mpm=event ac_cv_have_decl_CMSG_DATA=no
- fail-fast: false
+ # -------------------------------------------------------------------------
+ - name: Default, all-modules + install
+ config: --enable-mods-shared=reallyall
+ env: |
+ TEST_INSTALL=1
+ APACHE_TEST_EXTRA_ARGS=-v
+ # -------------------------------------------------------------------------
+ - name: Default, all-modules, random test order
+ config: --enable-mods-shared=reallyall
+ env: |
+ TEST_ARGS=-order=random
+ # -------------------------------------------------------------------------
+ - name: GCC 10 maintainer-mode w/-Werror, install + VPATH
+ config: --enable-mods-shared=reallyall --enable-maintainer-mode
+ notest-cflags: -Werror -O2 -Wno-deprecated-declarations
+ env: |
+ CC=gcc-10
+ TEST_VPATH=1
+ TEST_INSTALL=1
+ SKIP_TESTING=1
+ # -------------------------------------------------------------------------
+ - name: All-modules, APR 1.7.2, APR-util 1.6.3
+ config: --enable-mods-shared=reallyall
+ env: |
+ APR_VERSION=1.7.2
+ APU_VERSION=1.6.3
+ APU_CONFIG="--with-crypto --with-ldap"
+ # -------------------------------------------------------------------------
+ - name: APR 1.7.x, APR-util 1.7.x
+ config: --enable-mods-shared=reallyall
+ env: |
+ APR_VERSION=1.7.x
+ APU_VERSION=1.7.x
+ APU_CONFIG="--with-crypto --with-ldap"
+ CLEAR_CACHE=1
+ # -------------------------------------------------------------------------
+ - name: Pool-debug
+ config: --enable-mods-shared=reallyall
+ env: |
+ APR_VERSION=1.7.x
+ APR_CONFIG="--enable-pool-debug"
+ APU_VERSION=1.7.x
+ APU_CONFIG="--with-crypto --with-ldap"
+ TEST_MALLOC=1
+ CLEAR_CACHE=1
+ # -------------------------------------------------------------------------
+ - name: Shared MPMs (event), pool-debug, SSL/TLS variants
+ config: --enable-mods-shared=reallyall --enable-mpms-shared=all --with-mpm=event
+ env: |
+ APR_VERSION=1.7.x
+ APR_CONFIG="--enable-pool-debug"
+ APU_VERSION=1.7.x
+ APU_CONFIG="--with-crypto --with-ldap"
+ TEST_MALLOC=1
+ TEST_SSL=1
+ CLEAR_CACHE=1
+ # -------------------------------------------------------------------------
+ - name: Shared MPMs (worker), pool-debug, SSL/TLS variants
+ config: --enable-mods-shared=reallyall --enable-mpms-shared=all --with-mpm=worker
+ env: |
+ APR_VERSION=1.7.x
+ APR_CONFIG="--enable-pool-debug"
+ APU_VERSION=1.7.x
+ APU_CONFIG="--with-crypto --with-ldap"
+ TEST_MALLOC=1
+ TEST_SSL=1
+ CLEAR_CACHE=1
+ # -------------------------------------------------------------------------
+ - name: Shared MPMs (prefork), pool-debug, SSL/TLS variants
+ config: --enable-mods-shared=reallyall --enable-mpms-shared=all --with-mpm=prefork
+ env: |
+ APR_VERSION=1.7.x
+ APR_CONFIG="--enable-pool-debug"
+ APU_VERSION=1.7.x
+ APU_CONFIG="--with-crypto --with-ldap"
+ TEST_MALLOC=1
+ TEST_SSL=1
+ CLEAR_CACHE=1
+ # -------------------------------------------------------------------------
+ - name: litmus WebDAV tests
+ config: --enable-dav --enable-dav-fs
+ env: |
+ LITMUS=1
+ TESTS="t/modules/dav.t"
+ pkgs: litmus
+ # -------------------------------------------------------------------------
+ # MFLAGS= works around https://bz.apache.org/bugzilla/show_bug.cgi?id=63942
+ ## TODO if: *condition_not_24x
+ - name: Regenerate ap_expr
+ config: --enable-mods-shared=reallyall --enable-maintainer-mode
+ notest-cflags: -Werror -Wno-deprecated-declarations
+ env: |
+ BUILDCONFIG="--with-regen-expr"
+ MFLAGS=
+ # -------------------------------------------------------------------------
+ - name: APR 1.7.2, APR-util 1.6.3, LDAP
+ config: --enable-mods-shared=reallyall
+ pkgs: ldap-utils
+ env: |
+ APR_VERSION=1.7.2
+ APU_VERSION=1.6.3
+ APU_CONFIG="--with-crypto --with-ldap"
+ TEST_MALLOC=1
+ TEST_LDAP=1
+ TEST_ARGS="-defines LDAP"
+ TESTS="t/modules/"
+ # -------------------------------------------------------------------------
+ ### TODO: if: *condition_not_24x
+ - name: APR trunk thread debugging
+ config: --enable-mods-shared=reallyall --with-mpm=event
+ env: |
+ APR_VERSION=trunk
+ APR_CONFIG="--with-crypto --enable-thread-debug"
+ # -------------------------------------------------------------------------
+ - name: UBSan
+ notest-cflags: -fsanitize=undefined -fno-sanitize-recover=undefined
+ config: --enable-mods-shared=reallyall --disable-http2
+ env: |
+ NOTEST_LIBS=-lubsan
+ TEST_UBSAN=1
+ # -------------------------------------------------------------------------
+ - name: ASan
+ notest-cflags: -ggdb -fsanitize=address -fno-sanitize-recover=address -fno-omit-frame-pointer
+ config: --enable-mods-shared=reallyall
+ env: |
+ APR_VERSION=1.7.x
+ APU_VERSION=1.7.x
+ APU_CONFIG="--with-crypto --with-ldap"
+ TEST_ASAN=1
+ CLEAR_CACHE=1
+ # -------------------------------------------------------------------------
+ - name: ASan, pool-debug
+ notest-cflags: -ggdb -fsanitize=address -fno-sanitize-recover=address -fno-omit-frame-pointer
+ config: --enable-mods-shared=reallyall
+ env: |
+ APR_VERSION=1.7.x
+ APR_CONFIG="--enable-pool-debug"
+ APU_VERSION=1.7.x
+ APU_CONFIG="--with-crypto --with-ldap"
+ TEST_ASAN=1
+ CLEAR_CACHE=1
runs-on: ubuntu-latest
env:
NOTEST_CFLAGS: ${{ matrix.notest-cflags }}
CONFIG: ${{ matrix.config }}
name: ${{ matrix.name }}
steps:
+ - name: Set environment variables
+ run: echo "${{ matrix.env }}" >> $GITHUB_ENV
- name: apt refresh
run: sudo apt-get -o Acquire::Retries=5 update
- name: Install prerequisites
@@ -58,15 +207,29 @@ jobs:
cpanminus libtool-bin libapr1-dev libaprutil1-dev
liblua5.3-dev libbrotli-dev libcurl4-openssl-dev
libnghttp2-dev libjansson-dev libpcre2-dev gdb
- perl-doc
+ perl-doc ${{ matrix.pkgs }}
- uses: actions/checkout@v3
+ - name: Cache APR build
+ uses: actions/cache@v3
+ env:
+ cache-name: cache-apr
+ with:
+ path: ~/root
+ key: ${{runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('/home/runner/root/.key-apr') }}
- name: Configure environment
run: ./test/travis_before_linux.sh
+ timeout-minutes: 15
+ - uses: actions/upload-artifact@v3
+ if: failure()
+ with:
+ name: config.log ${{ matrix.node-version }}
+ path: |
+ /home/runner/build/**/config.log
- name: Build and test
run: ./test/travis_run_linux.sh
- uses: actions/upload-artifact@v3
if: failure()
with:
- name: error_log
+ name: error_log ${{ matrix.node-version }}
path: test/perl-framework/t/logs/error_log
diff --git a/.travis.yml b/.travis.yml
index 91b3b5f471..ddaff5cb2f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -44,9 +44,6 @@ _cond2: &condition_not_24x (branch is not present OR branch !~ /^2.4/) AND (tag
jobs:
include:
# -------------------------------------------------------------------------
- - name: Empty APLOGNO() test
- env: SKIP_TESTING=1 TEST_LOGNO=1
- # -------------------------------------------------------------------------
- name: Linux s390x Ubuntu, all-modules
arch: s390x
env: CONFIG="--enable-mods-shared=reallyall"
@@ -86,20 +83,6 @@ jobs:
- libapr1-dev
- libbrotli-dev:i386
# -------------------------------------------------------------------------
- - name: Linux Ubuntu, Default, all-modules + install
- env: CONFIG="--enable-mods-shared=reallyall"
- TEST_INSTALL=1
- APACHE_TEST_EXTRA_ARGS=-v
- # -------------------------------------------------------------------------
- - name: Linux Ubuntu, Default, all-modules, random test order
- env: CONFIG="--enable-mods-shared=reallyall"
- TEST_ARGS="-order=random"
- # -------------------------------------------------------------------------
- - name: Linux Ubuntu, GCC 7 maintainer-mode w/-Werror, install + VPATH
- os: linux
- env: CONFIG="--enable-mods-shared=reallyall --enable-maintainer-mode"
- NOTEST_CFLAGS='-Werror -O2' CC=gcc-7
- TEST_VPATH=1 TEST_INSTALL=1 SKIP_TESTING=1
# -------------------------------------------------------------------------
# -------------------------------------------------------------------------
- if: *condition_not_24x
@@ -171,14 +154,6 @@ jobs:
- libpcre2-dev
- libldap2-dev
# -------------------------------------------------------------------------
- # MFLAGS= works around https://bz.apache.org/bugzilla/show_bug.cgi?id=63942
- - if: *condition_not_24x
- name: Linux Ubuntu, Regenerate ap_expr
- os: linux
- env: CONFIG="--enable-mods-shared=reallyall --enable-maintainer-mode NOTEST_CFLAGS=-Werror"
- BUILDCONFIG="--with-regen-expr"
- MFLAGS=
- # -------------------------------------------------------------------------
- if: *condition_not_24x
name: Linux Ubuntu, APR trunk
env: APR_VERSION=trunk APR_CONFIG="--with-crypto"
@@ -196,56 +171,6 @@ jobs:
CONFIG="--enable-mods-shared=reallyall"
APU_CONFIG="--with-crypto --with-ldap"
# -------------------------------------------------------------------------
- - name: Linux Ubuntu Focal, all-modules, system APR/APR-util
- os: linux
- dist: focal
- env: CONFIG="--enable-mods-shared=reallyall"
- # -------------------------------------------------------------------------
- - name: Linux Ubuntu Focal, all-modules, APR 1.7.0, APR-util 1.6.1
- dist: focal
- env: APR_VERSION=1.7.0 APU_VERSION=1.6.1
- CONFIG="--enable-mods-shared=reallyall"
- APU_CONFIG="--with-crypto --with-ldap"
- # -------------------------------------------------------------------------
- - name: Linux Ubuntu, APR 1.7.0, APR-util 1.6.1
- env: APR_VERSION=1.7.0 APU_VERSION=1.6.1
- CONFIG="--enable-mods-shared=reallyall"
- APU_CONFIG="--with-crypto --with-ldap"
- # -------------------------------------------------------------------------
- - name: Linux Ubuntu, APR 1.7.x, APR-util 1.7.x
- env: APR_VERSION=1.7.x APU_VERSION=1.7.x
- CONFIG="--enable-mods-shared=reallyall"
- APU_CONFIG="--with-crypto --with-ldap"
- CLEAR_CACHE=1
- # -------------------------------------------------------------------------
- - name: Linux Ubuntu, pool-debug
- env: APR_VERSION=1.7.x APR_CONFIG="--enable-pool-debug"
- APU_VERSION=1.7.x APU_CONFIG="--with-crypto --with-ldap"
- CONFIG="--enable-mods-shared=reallyall"
- TEST_MALLOC=1
- CLEAR_CACHE=1
- # -------------------------------------------------------------------------
- - name: Linux Ubuntu, Shared MPMs (event), pool-debug, SSL/TLS variants
- env: APR_VERSION=1.7.x APR_CONFIG="--enable-pool-debug"
- APU_VERSION=1.7.x APU_CONFIG="--with-crypto --with-ldap"
- CONFIG="--enable-mods-shared=reallyall --enable-mpms-shared=all --with-mpm=event"
- TEST_MALLOC=1 TEST_SSL=1
- CLEAR_CACHE=1
- # -------------------------------------------------------------------------
- - name: Linux Ubuntu, Shared MPMs (worker), pool-debug, SSL/TLS variants
- env: APR_VERSION=1.7.x APR_CONFIG="--enable-pool-debug"
- APU_VERSION=1.7.x APU_CONFIG="--with-crypto --with-ldap"
- CONFIG="--enable-mods-shared=reallyall --enable-mpms-shared=all --with-mpm=worker"
- TEST_MALLOC=1 TEST_SSL=1
- CLEAR_CACHE=1
- # -------------------------------------------------------------------------
- - name: Linux Ubuntu, Shared MPMs (prefork), pool-debug, SSL/TLS variants
- env: APR_VERSION=1.7.x APR_CONFIG="--enable-pool-debug"
- APU_VERSION=1.7.x APU_CONFIG="--with-crypto --with-ldap"
- CONFIG="--enable-mods-shared=reallyall --enable-mpms-shared=all --with-mpm=prefork"
- TEST_MALLOC=1 TEST_SSL=1
- CLEAR_CACHE=1
- # -------------------------------------------------------------------------
- name: Linux Ubuntu, APR trunk, minimal module set, OpenSSL 3.x
if: *condition_not_24x
env: APR_VERSION=trunk APR_CONFIG="--without-pgsql --without-mysql --without-odbc --with-crypto"
@@ -368,41 +293,6 @@ jobs:
- cargo
- cbindgen
# -------------------------------------------------------------------------
- - name: Linux Ubuntu, APR 1.7.0, APR-util 1.6.1, LDAP
- env: APR_VERSION=1.7.0
- APU_VERSION=1.6.1 APU_CONFIG="--with-crypto --with-ldap"
- CONFIG="--enable-mods-shared=reallyall"
- TEST_MALLOC=1 TEST_LDAP=1 TEST_ARGS="-defines LDAP"
- TESTS="t/modules/"
- # -------------------------------------------------------------------------
- - if: *condition_not_24x
- name: Linux Ubuntu, event, APR trunk thread debugging
- env: APR_VERSION=trunk APR_CONFIG="--with-crypto --enable-thread-debug"
- CONFIG="--enable-mods-shared=reallyall --with-mpm=event"
- # -------------------------------------------------------------------------
- - name: Linux Ubuntu, litmus WebDAV tests
- env: CONFIG="--enable-dav --enable-dav-fs"
- LITMUS=1 TESTS="t/modules/dav.t"
- addons:
- apt:
- update: false
- sources:
- - sourceline: 'deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) universe'
- packages:
- - cpanminus
- - libtool-bin
- - libapr1-dev
- - libaprutil1-dev
- - perl-doc
- - liblua5.3-dev
- - libbrotli-dev
- - libcurl4-openssl-dev
- - libsystemd-dev
- - libnghttp2-dev
- - libjansson-dev
- - libpcre2-dev
- - litmus
- # -------------------------------------------------------------------------
- if: *condition_24x_only
name: Linux Ubuntu, APR 1.5.1, APR-util 1.5.4
env: APR_VERSION=1.5.1 APU_VERSION=1.5.4
@@ -412,30 +302,6 @@ jobs:
name: Linux Ubuntu, APR 1.4.8, APR-util 1.4.2
env: APR_VERSION=1.4.8 APU_VERSION=1.4.2
CONFIG="--enable-mods-shared=reallyall"
- # -------------------------------------------------------------------------
- - name: Linux Ubuntu Focal, UBSan
- dist: focal
- env: NOTEST_CFLAGS="-fsanitize=undefined -fno-sanitize-recover=undefined" NOTEST_LIBS=-lubsan
- CONFIG="--enable-mods-shared=reallyall --disable-http2"
- TEST_UBSAN=1
- # -------------------------------------------------------------------------
- - name: Linux Ubuntu Focal, ASan
- dist: focal
- env: NOTEST_CFLAGS="-ggdb -fsanitize=address -fno-sanitize-recover=address -fno-omit-frame-pointer"
- APR_VERSION=1.7.x
- APU_VERSION=1.7.x APU_CONFIG="--with-crypto --with-ldap"
- CONFIG="--enable-mods-shared=reallyall"
- TEST_ASAN=1
- CLEAR_CACHE=1
- # -------------------------------------------------------------------------
- - name: Linux Ubuntu Focal, ASan, pool-debug
- dist: focal
- env: NOTEST_CFLAGS="-ggdb -fsanitize=address -fno-sanitize-recover=address -fno-omit-frame-pointer"
- APR_VERSION=1.7.x APR_CONFIG="--enable-pool-debug"
- APU_VERSION=1.7.x APU_CONFIG="--with-crypto --with-ldap"
- CONFIG="--enable-mods-shared=reallyall"
- TEST_ASAN=1
- CLEAR_CACHE=1
allow_failures:
# Non-x86 are sometimes flaky:
- arch: s390x
diff --git a/test/travis_before_linux.sh b/test/travis_before_linux.sh
index c7426bee36..0632d194a7 100755
--- a/test/travis_before_linux.sh
+++ b/test/travis_before_linux.sh
@@ -85,6 +85,7 @@ function install_apx() {
popd
touch ${prefix}/.revision-is-${revision}
+ echo ${version} ${revision} ${config} > ${HOME}/root/.key-${name}
}
# Allow to load $HOME/build/apache/httpd/.gdbinit