diff options
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r-- | .gitlab-ci.yml | 858 |
1 files changed, 452 insertions, 406 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d2f78924..e7649db9 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,14 +1,15 @@ # we utilize the images generated by the build-images project, to # speed up CI runs. We also use ccache and store config.cache -# to speed up compilation. We include a version number in cache -# name to allow expiration of old caches. +# to speed up compilation. stages: - - stage1-testing - - stage2-tarball + - bootstrap + - test + - deploy-test + - deploy cache: - key: "$CI_JOB_NAME-ver5" + key: "$CI_JOB_NAME" paths: - cache/ @@ -28,432 +29,477 @@ after_script: variables: BUILD_IMAGES_PROJECT: gnuwget/build-images - DEBIAN_BUILD: buildenv-debian-stretch + CI_BASE_PATH: $CI_REGISTRY/$BUILD_IMAGES_PROJECT/wget + DEBIAN_OLDSTABLE_BUILD: buildenv-debian-oldstable DEBIAN_TESTING_BUILD: buildenv-debian-testing + DEBIAN_STABLE_BUILD: buildenv-debian-stable + CENTOS_OLDLTS_BUILD: buildenv-centos7 FEDORA_BUILD: buildenv-fedora - CENTOS7_BUILD: buildenv-centos7 MINGW_BUILD: buildenv-mingw - ALPINE_BUILD: buildenv-alpine ARCH_BUILD: buildenv-arch - BASIC_BUILD: buildenv-basic GET_SOURCES_ATTEMPTS: "3" GIT_DEPTH: "5" CONFIGURE_BASE_FLAGS: --enable-assert --cache-file cache/config.cache - CFLAGS_DEFAULT: -O0 -g -ggdb3 + CFLAGS_DEFAULT: -O2 -g -ggdb3 -VPATH/Debian: - stage: stage1-testing - image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$DEBIAN_BUILD - script: - - contrib/spell-checker - - export CFLAGS=$CFLAGS_DEFAULT - - ./bootstrap --skip-po && touch .manywarnings - - autoreconf -ivf - - mkdir vpath && cd vpath - - ../configure $CONFIGURE_BASE_FLAGS --cache-file ../cache/config.cache - - make -j$(nproc) - - make -j$(nproc) distcheck - - mv wget-*.gz .. - tags: - - shared - - linux - except: - - coverity-scan@gnuwget/wget - artifacts: - expire_in: 2 weeks - when: on_failure - paths: - - ./*.log - - fuzz/*.log - - tests/*.log - - testenv/*.log - artifacts: - expire_in: 2 weeks - when: on_success - paths: - - wget-*.gz +# Debian Builds -# In this build we combine -# * syntax-check -# * abi-check -# * build/valgrind-check -# * build/asan-check -# * build w/Werror and ubsan-check -OpenSSL/Debian: - stage: stage1-testing - image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$DEBIAN_BUILD - script: - - echo "127.0.0.1 wgettestingserver" >>/etc/hosts - - cat /etc/hosts - - alias make="make -j$(nproc)" - - ./bootstrap --skip-po - - autoreconf -ivf - - ./configure $CONFIGURE_BASE_FLAGS --with-ssl=openssl - - make syntax-check - - make check - - make distcheck - - make check-valgrind - tags: - - shared - - linux - except: - - coverity-scan@gnuwget/wget - artifacts: - expire_in: 2 weeks - when: on_failure - paths: - - ./*.log - - fuzz/*.log - - tests/*.log - - testenv/*.log +Debian-Testing: + stage: bootstrap + image: $CI_BASE_PATH/debian:testing-bootstrap + script: + - export CFLAGS=$CFLAGS_DEFAULT + - ./bootstrap --skip-po && touch .manywarnings + tags: + - shared + - linux + except: + - coverity-scan@gnuwget/wget + artifacts: + expire_in: 2 weeks + when: on_failure + paths: + - ./*.log + artifacts: + expire_in: 2 weeks + when: on_success + paths: + - ./ + exclude: + - cache + - cache/* + - cache/** -GnuTLS/Debian: - stage: stage1-testing - image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$DEBIAN_BUILD - script: - - echo "127.0.0.1 wgettestingserver" >>/etc/hosts - - cat /etc/hosts - - alias make="make -j$(nproc)" - - ./bootstrap --skip-po - - autoreconf -ivf - - ./configure $CONFIGURE_BASE_FLAGS --with-ssl=gnutls - - make syntax-check - - make check - - make distcheck - - make check-valgrind - tags: - - shared - - linux - except: - - coverity-scan@gnuwget/wget - artifacts: - expire_in: 2 weeks - when: on_failure - paths: - - ./*.log - - fuzz/*.log - - tests/*.log - - testenv/*.log +Build-Tarball: + stage: test + image: $CI_BASE_PATH/debian:testing-bootstrap + variables: + GIT_STRATEGY: none + script: + - export CFLAGS=$CFLAGS_DEFAULT + - mkdir vpath && cd vpath + - ../configure $CONFIGURE_BASE_FLAGS --cache-file ../cache/config.cache --without-ssl + - make -j$(nproc) syntax-check + - make -j$(nproc) dist + - mv wget-*.gz .. + tags: + - shared + - linux + except: + - coverity-scan@gnuwget/wget + dependencies: + - Debian-Testing + needs: ["Debian-Testing"] + artifacts: + expire_in: 2 weeks + when: on_failure + paths: + - ./*.log + - vpath/*.log + - vpath/fuzz/*.log + - vpath/tests/*.log + - vpath/testenv/*.log + artifacts: + expire_in: 2 weeks + when: on_success + paths: + - wget-*.gz -Minimal/Debian: - stage: stage1-testing - image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$DEBIAN_BUILD - script: - - export CFLAGS=$CFLAGS_DEFAULT - - ./bootstrap --skip-po - - autoreconf -ivf - - ./configure $CONFIGURE_BASE_FLAGS --cache-file ../cache/config.cache - --disable-nls --without-ssl --enable-ipv6 --without-zlib --without-libiconv-prefix - --disable-iri --disable-ntlm --disable-pcre --without-libpsl --without-libuuid - --without-libintl-prefix - - make -j$(nproc) - - make -j$(nproc) check - - make check-valgrind - tags: - - shared - - linux - except: - - coverity-scan@gnuwget/wget - artifacts: - expire_in: 2 weeks - when: on_failure - paths: - - ./*.log - - fuzz/*.log - - tests/*.log - - testenv/*.log +Valgrind: + stage: test + image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$DEBIAN_TESTING_BUILD + variables: + GIT_STRATEGY: none + script: + - export CFLAGS=$CFLAGS_DEFAULT + - ./configure $CONFIGURE_BASE_FLAGS --cache-file ../cache/config.cache + - make check-valgrind + tags: + - shared + - linux + except: + - coverity-scan@gnuwget/wget + dependencies: + - Debian-Testing + needs: ["Debian-Testing"] + artifacts: + expire_in: 2 weeks + when: on_failure + paths: + - wget-*/*.log + - wget-*/fuzz/*.log + - wget-*/tests/*.log + - wget-*/testenv/*.log -# In this build we combine -# * clang -# * ASan, UBSan -# * check, syntax-check -Sanitizers/Debian: - stage: stage1-testing - image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$DEBIAN_TESTING_BUILD - script: -# - export CFLAGS="$CFLAGS_DEFAULT -Werror" - - export CFLAGS="$CFLAGS_DEFAULT" - - ./bootstrap --skip-po && touch .manywarnings - - autoreconf -ivf - - export CC="ccache clang" - - export UBSAN_OPTIONS=print_stacktrace=1 - - export ASAN_SYMBOLIZER_PATH=/usr/lib/llvm-8/bin/llvm-symbolizer -# - export LSAN_OPTIONS=suppressions="$PWD/tests/clang-asan-suppressions" - - ./configure $CONFIGURE_BASE_FLAGS --enable-fsanitize-asan --enable-fsanitize-ubsan - - make -j$(nproc) check - tags: - - shared - - linux - except: - - coverity-scan@gnuwget/wget - artifacts: - expire_in: 2 weeks - when: on_failure - paths: - - ./*.log - - fuzz/*.log - - tests/*.log - - testenv/*.log +Minimal: + stage: deploy-test + image: $CI_BASE_PATH/debian:testing-minimal + variables: + GIT_STRATEGY: none + script: + - export CFLAGS=$CFLAGS_DEFAULT + - tar xvf wget-*.gz + - cd wget-*/ + - ./configure $CONFIGURE_BASE_FLAGS --cache-file ../cache/config.cache + --disable-nls --without-ssl --enable-ipv6 --without-zlib --without-libiconv-prefix + --disable-iri --disable-ntlm --disable-pcre --without-libpsl --without-libuuid + --without-libintl-prefix + - make -j$(nproc) check-valgrind + tags: + - shared + - linux + except: + - coverity-scan@gnuwget/wget + dependencies: + - Build-Tarball + needs: ["Build-Tarball"] + artifacts: + expire_in: 2 weeks + when: on_failure + paths: + - wget-*/./*.log + - wget-*/fuzz/*.log + - wget-*/tests/*.log + - wget-*/testenv/*.log -Scan-Build/Debian: - stage: stage1-testing - image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$DEBIAN_BUILD - script: - - export CFLAGS=$CFLAGS_DEFAULT - - ./bootstrap --skip-po - - scan-build ./configure $CONFIGURE_BASE_FLAGS - - make -C lib -j$(nproc) - - scan-build -v -enable-checker nullability --status-bugs -o scan-build make -j$(nproc) - tags: - - shared - - linux - except: - - tags - - coverity-scan@gnuwget/wget - allow_failure: true - artifacts: - expire_in: 2 weeks - when: on_failure - paths: - - scan-build/* +Debian-OldStable: + stage: deploy-test + image: $CI_BASE_PATH/debian:oldstable + variables: + GIT_STRATEGY: none + script: + - export CFLAGS=$CFLAGS_DEFAULT + - tar xvf wget-*.gz + - cd wget-*/ + - ./configure $CONFIGURE_BASE_FLAGS --cache-file ../cache/config.cache + - make + - make -j$(nproc) check + dependencies: + - Build-Tarball + needs: ["Build-Tarball"] + tags: + - shared + - linux + except: + - coverity-scan@gnuwget/wget + artifacts: + expire_in: 2 weeks + when: on_failure + paths: + - wget-*/./*.log + - wget-*/fuzz/*.log + - wget-*/tests/*.log + - wget-*/testenv/*.log -Valgrind/Debian: - stage: stage1-testing - image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$DEBIAN_TESTING_BUILD - script: - - export CFLAGS=$CFLAGS_DEFAULT - - ./bootstrap --skip-po - - autoreconf -ivf - - ./configure $CONFIGURE_BASE_FLAGS --enable-valgrind-tests - - make -j$(nproc) - - make check -j$(nproc) - tags: - - shared - - linux - except: - - tags - - coverity-scan@gnuwget/wget - allow_failure: true - artifacts: - expire_in: 2 weeks - when: on_failure - paths: - - ./*.log - - fuzz/*.log - - tests/*.log - - testenv/*.log +Debian-Stable: + stage: deploy-test + image: $CI_BASE_PATH/debian:stable + variables: + GIT_STRATEGY: none + script: + - export CFLAGS=$CFLAGS_DEFAULT + - tar xvf wget-*.gz + - cd wget-*/ + - ./configure $CONFIGURE_BASE_FLAGS --cache-file ../cache/config.cache + - make + - make -j$(nproc) check + dependencies: + - Build-Tarball + tags: + - shared + - linux + except: + - coverity-scan@gnuwget/wget + needs: ["Build-Tarball"] + artifacts: + expire_in: 2 weeks + when: on_failure + paths: + - wget-*/./*.log + - wget-*/fuzz/*.log + - wget-*/tests/*.log + - wget-*/testenv/*.log -Simple/Fedora: - stage: stage1-testing - image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD - script: -# - export CFLAGS="$CFLAGS_DEFAULT -Werror" - - export CFLAGS="$CFLAGS_DEFAULT" - - ./bootstrap --skip-po && touch .manywarnings - - autoreconf -ivf - - ./configure $CONFIGURE_BASE_FLAGS - - make -j$(nproc) check - tags: - - shared - - linux - except: - - tags - - coverity-scan@gnuwget/wget - artifacts: - expire_in: 2 weeks - when: on_failure - paths: - - ./*.log - - fuzz/*.log - - tests/*.log - - testenv/*.log +CentOS-OldLTS: + stage: deploy-test + image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$CENTOS_OLDLTS_BUILD + variables: + GIT_STRATEGY: none + script: + - export CFLAGS=$CFLAGS_DEFAULT + - tar xvf wget-*.gz + - cd wget-*/ + - ./configure $CONFIGURE_BASE_FLAGS --cache-file ../cache/config.cache + - make + - make -j$(nproc) check + dependencies: + - Build-Tarball + tags: + - shared + - linux + except: + - coverity-scan@gnuwget/wget + # The test suite is currently broken, so a temporary allowance + allow_failure: true + needs: ["Build-Tarball"] + artifacts: + expire_in: 2 weeks + when: on_failure + paths: + - wget-*/./*.log + - wget-*/fuzz/*.log + - wget-*/tests/*.log + - wget-*/testenv/*.log -#Alpine: -# stage: stage1-testing -# image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$ALPINE_BUILD -# script: -# - export CFLAGS="$CFLAGS_DEFAULT" -# - ./bootstrap --skip-po -# - ./configure $CONFIGURE_BASE_FLAGS -# - make -j$(nproc) check -# tags: -# - shared -# except: -# - tags -# - linux -# artifacts: -# expire_in: 2 weeks -# when: on_failure -# paths: -# - ./*.log -# - fuzz/*.log -# - tests/*.log -# - testenv/*.log +TLS/OpenSSL: + stage: test + image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$DEBIAN_TESTING_BUILD + variables: + GIT_STRATEGY: none + script: + - echo "127.0.0.1 wgettestingserver" >>/etc/hosts + - cat /etc/hosts + - ./configure $CONFIGURE_BASE_FLAGS --with-ssl=openssl + - make -j$(nproc) distcheck + - make check-valgrind + tags: + - shared + - linux + except: + - coverity-scan@gnuwget/wget + dependencies: + - Debian-Testing + needs: ["Debian-Testing"] + artifacts: + expire_in: 2 weeks + when: on_failure + paths: + - ./*.log + - fuzz/*.log + - tests/*.log + - testenv/*.log -pages: - stage: stage1-testing - image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$DEBIAN_BUILD - script: - - mkdir -p public - - ./bootstrap --skip-po - - autoreconf -ivf - - export CFLAGS="$CFLAGS_DEFAULT" - - ./configure $CONFIGURE_BASE_FLAGS - - make -j$(nproc) check-coverage +TLS/GnuTLS: + stage: test + image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$DEBIAN_TESTING_BUILD + variables: + GIT_STRATEGY: none + script: + - echo "127.0.0.1 wgettestingserver" >>/etc/hosts + - cat /etc/hosts + - ./configure $CONFIGURE_BASE_FLAGS --with-ssl=gnutls + - make -j$(nproc) distcheck + - make check-valgrind + tags: + - shared + - linux + except: + - coverity-scan@gnuwget/wget + dependencies: + - Debian-Testing + needs: ["Debian-Testing"] + artifacts: + expire_in: 2 weeks + when: on_failure + paths: + - ./*.log + - fuzz/*.log + - tests/*.log + - testenv/*.log -# Tarball - - make dist - - mv wget-*.gz public/wget-latest.tar.gz -# Test suite coverage report - - rm -rf public/coverage - - mv lcov public/coverage +Sanitizers: + stage: test + image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$DEBIAN_TESTING_BUILD + variables: + GIT_STRATEGY: none + script: +# - export CFLAGS="$CFLAGS_DEFAULT -Werror" + - export CFLAGS="$CFLAGS_DEFAULT" + - export CC="ccache clang" + - export UBSAN_OPTIONS=print_stacktrace=1 + - export ASAN_SYMBOLIZER_PATH=/usr/lib/llvm-8/bin/llvm-symbolizer +# - export LSAN_OPTIONS=suppressions="$PWD/tests/clang-asan-suppressions" + - ./configure $CONFIGURE_BASE_FLAGS --enable-fsanitize-asan --enable-fsanitize-ubsan + - make -j$(nproc) check + tags: + - shared + - linux + except: + - coverity-scan@gnuwget/wget + dependencies: + - Debian-Testing + needs: ["Debian-Testing"] + artifacts: + expire_in: 2 weeks + when: on_failure + paths: + - ./*.log + - fuzz/*.log + - tests/*.log + - testenv/*.log -# Online Documentation - - make -C doc html - - rm -rf public/reference - - mv doc/wget.html public/reference -# Coverage report for all our fuzz corpora - - make -j$(nproc) fuzz-coverage - - rm -rf public/fuzz-coverage - - mv lcov public/fuzz-coverage - tags: - - shared - - linux - artifacts: - when: on_success - paths: - - public - only: - - master +# Maybe we should run scan-build on a tarball build? +Scan-Build: + stage: test + image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$DEBIAN_TESTING_BUILD + variables: + GIT_STRATEGY: none + script: + - export CFLAGS=$CFLAGS_DEFAULT + - rm .manywarnings + - scan-build ./configure $CONFIGURE_BASE_FLAGS + - make -C lib -j$(nproc) + - scan-build -v -enable-checker nullability --keep-empty --status-bugs -o scan-build make -j$(nproc) + tags: + - shared + - linux + except: + - tags + - coverity-scan@gnuwget/wget + allow_failure: true + dependencies: + - Debian-Testing + needs: ["Debian-Testing"] + artifacts: + when: always + paths: + - scan-build +CoverageReports: + stage: test + image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$DEBIAN_TESTING_BUILD + variables: + GIT_STRATEGY: none + script: + - export CFLAGS="$CFLAGS_DEFAULT" + - ./configure $CONFIGURE_BASE_FLAGS + - make -j$(nproc) check-coverage + - mv lcov test-coverage + - make -C doc html + - make -j$(nproc) fuzz-coverage + - mv lcov fuzz-coverage + - make dist + - mv wget-*.gz wget-latest.tar.gz + tags: + - shared + - linux + dependencies: + - Debian-Testing + needs: ["Debian-Testing"] + artifacts: + when: on_success + paths: + - wget-latest.tar.gz + - test-coverage/ + - fuzz-coverage/ + only: + - master -MinGW64: - stage: stage1-testing - image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$MINGW_BUILD - script: -# - apt-get install libhttp-daemon-perl libio-socket-ssl-perl python3 - - mount -t binfmt_misc binfmt_misc /proc/sys/fs/binfmt_misc && - echo ':DOSWin:M::MZ::/usr/bin/wine:' > /proc/sys/fs/binfmt_misc/register - - ./bootstrap --skip-po - - autoreconf -ivf -# - cp pthread_sigmask.c.mingw lib/pthread_sigmask.c - - export CC="ccache $PREFIX-gcc" - - export GCCLIB=$(dirname $(find /usr/lib/gcc/$PREFIX -name libgcc_s_seh-1.dll|grep posix)) - - export WINEPATH="$WINEPATH;/usr/$PREFIX/bin;/usr/$PREFIX/lib;$PWD/libwget/.libs;$GCCLIB" - - echo "WINEPATH=$WINEPATH" - - LIBS="-ldl -lpsapi" ./configure $CONFIGURE_BASE_FLAGS --build=x86_64-pc-linux-gnu --host=$PREFIX --enable-shared - - make -j$(nproc) - - make clean - - LIBS="-ldl -lpsapi" ./configure $CONFIGURE_BASE_FLAGS --build=x86_64-pc-linux-gnu --host=$PREFIX --enable-shared --disable-threads - - make -j$(nproc) - - cp -p src/wget.exe src/wget - - make check -j$(nproc) LOG_COMPILER=wine - tags: - - shared - - linux - except: - - tags - - coverity-scan@gnuwget/wget - allow_failure: true - artifacts: - expire_in: 2 weeks - when: on_failure - paths: - - ./config.h - - ./*.log - - fuzz/*.log - - tests/*.log - - testenv/*.log +ArchLinux: + stage: test + image: $CI_BASE_PATH/archlinux + script: + - export CFLAGS="$CFLAGS_DEFAULT" + - ./bootstrap --skip-po && touch .manywarnings + - ./configure $CONFIGURE_BASE_FLAGS + - make -j$(nproc) + - make check -j$(nproc) + tags: + - shared + - linux + except: + - coverity-scan@gnuwget/wget + needs: [] + artifacts: + expire_in: 2 weeks + when: on_failure + paths: + - ./*.log + - fuzz/*.log + - tests/*.log + - testenv/*.log -Build/Arch: - stage: stage1-testing - image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$ARCH_BUILD - script: - - export CFLAGS="$CFLAGS_DEFAULT" - - ./bootstrap --skip-po && touch .manywarnings - - autoreconf -vif - - ./configure $CONFIGURE_BASE_FLAGS - - make -j$(nproc) - - make check -j$(nproc) - tags: - - shared - - linux - except: - - coverity-scan@gnuwget/wget - artifacts: - expire_in: 2 weeks - when: on_failure - paths: - - ./*.log - - fuzz/*.log - - tests/*.log - - testenv/*.log +Fedora: + stage: test + image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD + script: + - export CFLAGS="$CFLAGS_DEFAULT" + - ./bootstrap --skip-po && touch .manywarnings + - ./configure $CONFIGURE_BASE_FLAGS + - make -j$(nproc) check + tags: + - shared + - linux + except: + - coverity-scan@gnuwget/wget + needs: [] + artifacts: + expire_in: 2 weeks + when: on_failure + paths: + - ./*.log + - fuzz/*.log + - tests/*.log + - testenv/*.log +MinGW64: + stage: deploy-test + image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$MINGW_BUILD + variables: + GIT_STRATEGY: none + script: + - mount -t binfmt_misc binfmt_misc /proc/sys/fs/binfmt_misc && + echo ':DOSWin:M::MZ::/usr/bin/wine:' > /proc/sys/fs/binfmt_misc/register + - tar xvf wget-*.gz + - cd wget-*/ + - export CFLAGS=$CFLAGS_DEFAULT + - export CC="ccache $PREFIX-gcc" + - export GCCLIB=$(dirname $(find /usr/lib/gcc/$PREFIX -name libgcc_s_seh-1.dll|grep posix)) + - export WINEPATH="$WINEPATH;/usr/$PREFIX/bin;/usr/$PREFIX/lib;$PWD/libwget/.libs;$GCCLIB" + - echo "WINEPATH=$WINEPATH" + - LIBS="-ldl -lpsapi" ./configure $CONFIGURE_BASE_FLAGS --build=x86_64-pc-linux-gnu --host=$PREFIX --enable-shared + - make -j$(nproc) + - cp -p src/wget.exe src/wget + - make check -j$(nproc) LOG_COMPILER=wine + dependencies: + - Build-Tarball + needs: ["Build-Tarball"] + tags: + - shared + - linux + except: + - tags + - coverity-scan@gnuwget/wget + allow_failure: true + artifacts: + expire_in: 2 weeks + when: on_failure + paths: + - wget-*/./config.h + - wget-*/./*.log + - wget-*/fuzz/*.log + - wget-*/tests/*.log + - wget-*/testenv/*.log -# Test building from tarball in a minimal non-dev environment -Tarball: - stage: stage2-tarball - image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$BASIC_BUILD - variables: - GIT_STRATEGY: none - script: - - apk add perl - # remove all files from git repo - - mv wget-*.gz /tmp - - rm -rf * .git* .travis* - - mv /tmp/wget-*.gz . - # unpack and build from tarball - - tar xvf wget-*.gz - - cd wget-* - - unset CC - - ./configure $CONFIGURE_BASE_FLAGS --with-ssl=no - - make -j$(nproc) - # make check doesn't work due to incomplete perl installation - # - make -j$(nproc) check - # check if essential files are accidentally cleaned - - make clean - - make -j$(nproc) - tags: - - shared - - linux - dependencies: - - VPATH/Debian - except: - - coverity-scan@gnuwget/wget - artifacts: - expire_in: 2 weeks - when: on_failure - paths: - - wget-*/*.log - - wget-*/fuzz/*.log - - wget-*/tests/*.log - - wget-*/testenv/*.log -coverity: - stage: stage1-testing - image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD - script: - - wget https://scan.coverity.com/download/linux64 --post-data "token=$COVERITY_SCAN_TOKEN&project=$COVERITY_SCAN_PROJECT_NAME" -O /tmp/coverity_tool.tgz - - tar xfz /tmp/coverity_tool.tgz - - ./bootstrap --skip-po - - autoreconf -ivf - - CFLAGS="-g -Og" ./configure --cache-file cache/config.cache --disable-doc - - cov-analysis-linux64-*/bin/cov-build --dir cov-int make -j$(nproc) - - tar cfz cov-int.tar.gz cov-int - - curl https://scan.coverity.com/builds?project=$COVERITY_SCAN_PROJECT_NAME - --form token=$COVERITY_SCAN_TOKEN --form email=tim.ruehsen@gmx.de - --form file=@cov-int.tar.gz --form version="`git describe --tags`" - --form description="CI build" - tags: - - shared - - linux - only: - - coverity-scan@gnuwget/wget - artifacts: - expire_in: 1 week - when: on_failure - paths: - - cov-int/*.txt +pages: + stage: deploy + script: + - mkdir -p public + - rm -rf public/reference public/coverage public/fuzz-coverage + - mv wget-latest.tar.gz public/ + - mv test-coverage public/coverage + - mv fuzz-coverage public/fuzz-coverage + - mv scan-build public/scan-build + dependencies: + - CoverageReports + - Scan-Build + artifacts: + when: on_success + paths: + - public + only: + - master |