dist : focal
branches :
only :
- " master "
os : linux
arch :
- amd64
- arm64
- s390x
- ppc64le
language : c
compiler :
- gcc
addons :
apt :
packages :
- axel
- dos2unix
- libgd - dev
- dos2unix
- libpcre3
- libpcre3 - dev
- mercurial
- libpq - dev
before_install :
- sudo sysctl - w net . ipv6 . conf . all . disable_ipv6 = 1
cache :
directories :
- download - cache
env :
global :
- JOBS = 3
- PCRE_VER = 8.45
- PCRE_PREFIX = / opt / pcre
- PCRE_LIB = $ PCRE_PREFIX / lib
- PCRE_INC = $ PCRE_PREFIX / include
- OPENSSL_PREFIX = / opt / ssl
- OPENSSL_LIB = $ OPENSSL_PREFIX / lib
- OPENSSL_INC = $ OPENSSL_PREFIX / include
- OPENRESTY_PREFIX = / opt / openresty
jobs :
- OPENSSL_VER = 1.1 .1 w OPENSSL_PATCH_VER = 1.1 .1f ENABLE_HTTP3_OPTION = - - with - http_v3_module
install :
- cpanm - - sudo - - notest Test : : Nginx IPC : : Run3 > build . log 2 > & 1 | | ( cat build . log & & exit 1 )
- if [ ! - f download - cache / pcre - $ PCRE_VER . tar . gz ] ; then wget - P download - cache https : //downloads.sourceforge.net/project/pcre/pcre/${PCRE_VER}/pcre-${PCRE_VER}.tar.gz; fi
- if [ ! - f download - cache / openssl - $ OPENSSL_VER . tar . gz ] ; then wget - P download - cache https : //www.openssl.org/source/openssl-$OPENSSL_VER.tar.gz || wget -P download-cache https://www.openssl.org/source/old/${OPENSSL_VER//[a-z]/}/openssl-$OPENSSL_VER.tar.gz; fi
- tar zxf download - cache / pcre - $ PCRE_VER . tar . gz
- cd pcre - $ PCRE_VER /
- . / configure - - prefix = $ PCRE_PREFIX - - enable - jit - - enable - utf - - enable - unicode - properties > build . log 2 > & 1 | | ( cat build . log & & exit 1 )
- make - j $ JOBS > build . log 2 > & 1 | | ( cat build . log & & exit 1 )
- sudo PATH = $ PATH make install > build . log 2 > & 1 | | ( cat build . log & & exit 1 )
- cd . .
- tar zxf download - cache / openssl - $ OPENSSL_VER . tar . gz
- cd openssl - $ OPENSSL_VER /
- patch - p1 < . . / patches / openssl - $ OPENSSL_PATCH_VER - sess_set_get_cb_yield . patch
- . / config no - threads shared enable - ssl3 enable - ssl3 - method - g - - prefix = $ OPENSSL_PREFIX - DPURIFY > build . log 2 > & 1 | | ( cat build . log & & exit 1 )
- make - j $ JOBS > build . log 2 > & 1 | | ( cat build . log & & exit 1 )
- sudo make PATH = $ PATH install_sw > build . log 2 > & 1 | | ( cat build . log & & exit 1 )
- cd . .
- sudo ln - s / usr / bin / make / usr / bin / gmake
script :
- util / mirror - tarballs > build . log 2 > & 1 | | ( cat build . log & & exit 1 )
- cd " openresty-$(./util/ver) "
- . / configure $ ENABLE_HTTP3_OPTION - - prefix = $ OPENRESTY_PREFIX - - with - cc - opt = " -I$PCRE_INC -I$OPENSSL_INC " - - with - ld - opt = " -L$PCRE_LIB -L$OPENSSL_LIB -Wl,-rpath,$PCRE_LIB:$OPENSSL_LIB " - - with - pcre - jit - - with - http_ssl_module - - with - debug - j $ JOBS > build . log 2 > & 1 | | ( cat build . log & & exit 1 )
- make - j $ JOBS > build . log 2 > & 1 | | ( cat build . log & & exit 1 )
- sudo make install > build . log 2 > & 1 | | ( cat build . log & & exit 1 )
- cd . .
- export PATH = $ OPENRESTY_PREFIX / bin : $ OPENRESTY_PREFIX / nginx / sbin : $ PATH
- nginx - V
- ldd ` which nginx ` | grep - E ' luajit | ssl | pcre '
- prove - I . - r t /