tags:
- docker
-lint:tidy:
- <<: *test
+build:darwin:
+ <<: *test_nodep
+ when: delayed
+ start_in: 2 minutes
script:
- - ninja -C build_ci* tidy
+ - ci/travis.py ${CI_COMMIT_REF_NAME}
-lint:pedantic:
- <<: *test_nodep
- tags:
- - docker
- - linux
- - amd64
+deckard:
+ <<: *test_flaky
+ variables:
+ TMPDIR: $CI_PROJECT_DIR
script:
- - meson build_pedantic_gcc -Dwerror=true -Dc_args='-Wpedantic' -Dpostinstall_tests=enabled
- - ninja -C build_pedantic_gcc
- - >
- CC=clang CXX=clang++ meson build_pedantic_clang -Dwerror=true -Dpostinstall_tests=enabled -Dc_args='
- -Wpedantic -Wno-newline-eof -Wno-gnu-zero-variadic-macro-arguments -Wno-gnu-folding-constant'
- - ninja -C build_pedantic_clang
+ - ${MESON_TEST} --suite integration
-lint:other:
+doc:
<<: *test_nodep
- stage: test
+ when: delayed
+ start_in: '30 seconds'
script:
- - meson build_ci_lint
- - ninja -C build_ci* pylint
- - ninja -C build_ci* flake8
- - ninja -C build_ci* luacheck
-
-lint:scan-build:
- <<: *test
- stage: test
+ - meson build_doc -Ddoc=enabled
+ - ninja -C build_doc doc
artifacts:
- when: on_failure
- expire_in: '1 day'
+ expire_in: 1 hour
paths:
- - build_ci*/meson-logs/scanbuild
- before_script: []
- script:
- - export SCANBUILD="scan-build --status-bugs -no-failure-reports $(./scripts/get-scanbuild-args.sh)"
- - ninja -C build_ci* scan-build || true
- - test "$(ls build_ci*/meson-logs/scanbuild/*/report-*.html | wc -l)" = 29 # we have this many errors ATM :-)
+ - doc/html
docker:
- stage: test
+ <<: *test_nodep
image: docker:latest
- except:
- - master
tags:
- dind
- dependencies: []
variables:
DOCKER_IMAGE_NAME: knot-resolver-test:${CI_COMMIT_SHA}
script:
- docker rmi ${DOCKER_IMAGE_NAME}
- docker rmi $(docker images -f "dangling=true" -q)
-doc:
+lint:other:
<<: *test_nodep
- script:
- - meson build_doc -Ddoc=enabled
- - ninja -C build_doc doc
- artifacts:
- expire_in: 1 hour
- paths:
- - doc/html
-
-deckard:
- <<: *test_flaky
- variables:
- TMPDIR: $CI_PROJECT_DIR
- script:
- - ${MESON_TEST} --suite integration
-
-test:valgrind:
- <<: *test
- script:
- - ${MESON_TEST} --suite unit --suite config --wrap="valgrind --leak-check=full --trace-children=yes --quiet --suppressions=/lj.supp"
-
-build:darwin:
+ when: delayed
+ start_in: '30 seconds'
stage: test
- except:
- - master
script:
- - ci/travis.py ${CI_COMMIT_REF_NAME}
- dependencies: []
- tags:
- - docker
+ - meson build_ci_lint &>/dev/null
+ - ninja -C build_ci* pylint
+ - ninja -C build_ci* flake8
+ - ninja -C build_ci* luacheck
-# temporarily disabled - we need to fix issues first
-#deckard:valgrind:
-# stage: test
-# script:
-# # TODO: valgrind missing parameter --error-exitcode=1 to fail make on error
-# - cd tests/deckard && DAEMON=valgrind ADDITIONAL="--leak-check=full --trace-children=yes --quiet --suppressions=/lj.supp $PREFIX/sbin/kresd -f 1" MAKEFLAGS="-j $(nproc) --keep-going" make
-# artifacts:
-# when: on_failure
-# expire_in: 1 week
-# paths:
-# - tmpdeckard*
-# dependencies:
-# - build
-# tags:
-# - docker
-# - linux
-# - amd64
-
-pytests:lint:
- stage: test
- dependencies: []
- except:
- - master
- script:
- - ./ci/pytests/lint.sh
+lint:pedantic:
+ <<: *test_nodep
+ when: delayed
+ start_in: '30 seconds'
tags:
- docker
- linux
- amd64
+ script:
+ - meson build_pedantic_gcc -Dwerror=true -Dc_args='-Wpedantic' -Dpostinstall_tests=enabled
+ - ninja -C build_pedantic_gcc
+ - >
+ CC=clang CXX=clang++ meson build_pedantic_clang -Dwerror=true -Dpostinstall_tests=enabled -Dc_args='
+ -Wpedantic -Wno-newline-eof -Wno-gnu-zero-variadic-macro-arguments -Wno-gnu-folding-constant'
+ - ninja -C build_pedantic_clang
-respdiff:basic:
+lint:scan-build:
<<: *test
- script:
- - ulimit -n "$(ulimit -Hn)" # applies only for kresd ATM
- - ./ci/respdiff/start-resolvers.sh
- - ./ci/respdiff/run-respdiff-tests.sh udp
- - cat results/respdiff.txt
- - echo 'test if mismatch rate < 1.0 %'
- - grep -q '^target disagrees.*0\.[0-9][0-9] %' results/respdiff.txt
- after_script:
- - killall --wait kresd
+ stage: test
artifacts:
- when: always
- expire_in: '1 week'
+ when: on_failure
+ expire_in: '1 day'
paths:
- - kresd.log.xz
- - results/*.txt
- - results/*.png
- - results/respdiff.db/data.mdb.xz
- - ./*.info
- tags:
- - docker
- - linux
- - amd64
+ - build_ci*/meson-logs/scanbuild
+ before_script: []
+ script:
+ - export SCANBUILD="scan-build --status-bugs -no-failure-reports $(./scripts/get-scanbuild-args.sh)"
+ - ninja -C build_ci* scan-build || true
+ - test "$(ls build_ci*/meson-logs/scanbuild/*/report-*.html | wc -l)" = 29 # we have this many errors ATM :-)
+
+lint:tidy:
+ <<: *test
+ script:
+ - ninja -C build_ci* tidy
.pkgbuild: &pkgbuild
stage: test
- mock --no-clean --old-chroot -r fedora-29-x86_64 --rebuild *.src.rpm || (cat /var/lib/mock/fedora-29-x86_64/result/build.log; false)
after_script:
- mv /var/lib/mock/fedora-29-x86_64/result fedora-29-x86_64
+
+respdiff:basic:
+ <<: *test
+ script:
+ - ulimit -n "$(ulimit -Hn)" # applies only for kresd ATM
+ - ./ci/respdiff/start-resolvers.sh
+ - ./ci/respdiff/run-respdiff-tests.sh udp
+ - cat results/respdiff.txt
+ - echo 'test if mismatch rate < 1.0 %'
+ - grep -q '^target disagrees.*0\.[0-9][0-9] %' results/respdiff.txt
+ after_script:
+ - killall --wait kresd
+ artifacts:
+ when: always
+ paths:
+ - kresd.log.xz
+ - results/*.txt
+ - results/*.png
+ - results/respdiff.db/data.mdb.xz
+ - ./*.info
+ tags:
+ - docker
+ - linux
+ - amd64
+
+test:valgrind:
+ <<: *test
+ when: delayed
+ start_in: '30 seconds'
+ script:
+ - ${MESON_TEST} --suite unit --suite config --wrap="valgrind --leak-check=full --trace-children=yes --quiet --suppressions=/lj.supp"
# }}}
# extended {{{