1sudo: required 2language: c 3compiler: gcc 4dist: trusty 5 6cache: 7 directories: 8 - perl5 9 - dl 10 11addons: 12 apt: 13 packages: 14 - libssl-dev 15 16env: 17 global: 18 - TESTNGINX_VER=12152a5 19 - PATH=/usr/local/bin:$TRAVIS_BUILD_DIR/nginx/objs:$PATH 20 - CURL=7.58.0 21 - NGHTTP2=1.24.0 22 matrix: 23 - NGINX_VERSION=1.9.15 24 - NGINX_VERSION=1.11.13 25 - NGINX_VERSION=1.12.2 26 - NGINX_VERSION=1.13.8 27 28before_install: 29 - mkdir -p dl 30 - | 31 if [ ! -f dl/nghttp2-${NGHTTP2}.tar.gz ]; then 32 (cd dl && curl -O -L https://github.com/nghttp2/nghttp2/releases/download/v${NGHTTP2}/nghttp2-${NGHTTP2}.tar.gz) 33 fi 34 - | 35 if [ ! -f dl/curl-${CURL}.tar.gz ]; then 36 (cd dl && curl -O -L https://curl.haxx.se/download/curl-${CURL}.tar.gz) 37 fi 38 - | 39 if [ ! -f dl/nginx-${NGINX_VERSION}.tar.gz ]; then 40 curl -o dl/nginx-${NGINX_VERSION}.tar.gz -L http://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz; 41 fi 42 - | 43 if [ ! -f dl/test-nginx-${TESTNGINX_VER}.tar.gz ]; then 44 curl -o dl/test-nginx-${TESTNGINX_VER}.tar.gz -L "https://github.com/openresty/test-nginx/archive/${TESTNGINX_VER}.tar.gz"; 45 fi 46 - if [ ! -f dl/cpanm ]; then curl -o dl/cpanm https://cpanmin.us/; chmod +x dl/cpanm; fi 47 - | 48 if [ ! -e dl/nghttp2-${NGHTTP2} ]; then 49 (cd dl && tar -zxf nghttp2-${NGHTTP2}.tar.gz) 50 fi 51 (cd dl/nghttp2-${NGHTTP2} && 52 [ -f Makefile ] || ./configure --prefix=/usr --disable-threads && 53 make && sudo make install) 54 - | 55 if [ ! -e dl/curl-${CURL} ]; then 56 (cd dl && tar -zxf curl-${CURL}.tar.gz) 57 fi 58 (cd dl/curl-${CURL} && 59 [ -f Makefile ] || ./configure --with-nghttp2 --prefix=/usr/local && 60 make && sudo make install) 61 - sudo ldconfig 62 - sudo cp dl/cpanm /usr/local/bin/cpanm 63 - tar -zxf dl/nginx-${NGINX_VERSION}.tar.gz && mv nginx-${NGINX_VERSION} nginx 64 - cpanm --notest --local-lib=perl5 local::lib && eval $(perl -I perl5/lib/perl5/ -Mlocal::lib=./perl5) 65 - | 66 if [ ! -f perl5/lib/perl5/Test/Nginx.pm ]; then 67 cpanm --notest --local-lib=perl5 dl/test-nginx-${TESTNGINX_VER}.tar.gz 68 fi 69 - | 70 if [ ! -f perl5/lib/perl5/Test/File.pm ]; then 71 cpanm --notest --local-lib=perl5 Test::File 72 fi 73 74install: 75 - cd nginx 76 - ./configure --with-http_v2_module --with-http_ssl_module --add-module=$TRAVIS_BUILD_DIR --with-cc-opt='-O0 -coverage' --with-ld-opt='-fprofile-arcs' 77 - make 78 - cd .. 79 80script: 81 - prove --directives --verbose -r t 82 83after_success: 84 - bash <(curl -s https://codecov.io/bash) -G '*ngx_http_upload_module*' -a '--object-directory nginx/objs/addon/nginx-upload-module *.c -s '"$TRAVIS_BUILD_DIR" 85