variables: DEBIAN_FRONTEND: noninteractive LC_ALL: C.UTF-8 GIT_STRATEGY: fetch stages: - configure - build - test - deploy .freebsd_i386: &freebsd_i386 tags: - freebsd - i386 only: - master - triggers - tags .freebsd_amd64: &freebsd_amd64 tags: - freebsd - amd64 only: - master - triggers - tags .debian_stretch: &debian_stretch image: cznic/debian:stretch-knot-latest tags: - docker - linux - amd64 .ubuntu_xenial: &ubuntu_xenial image: cznic/ubuntu:16.04-knot tags: - docker - linux - amd64 .configure: &configure_job stage: configure script: - autoreconf -fi - ./configure --disable-fastparser artifacts: untracked: true expire_in: '1 hour' .build: &build_job stage: build script: - make -k all artifacts: untracked: true expire_in: '1 hour' .test: &test_job stage: test script: - make -k check configure:ubuntu:amd64: <<: *ubuntu_xenial <<: *configure_job build:ubuntu:amd64: <<: *ubuntu_xenial <<: *build_job dependencies: - configure:ubuntu:amd64 test:ubuntu:amd64: <<: *ubuntu_xenial <<: *test_job dependencies: - build:ubuntu:amd64 configure:debian:stretch:amd64: <<: *debian_stretch <<: *configure_job build:debian:stretch:amd64: <<: *debian_stretch <<: *build_job dependencies: - configure:debian:stretch:amd64 test:debian:stretch:amd64: <<: *debian_stretch <<: *test_job dependencies: - build:debian:stretch:amd64 configure:freebsd:i386: <<: *freebsd_i386 <<: *configure_job build:freebsd:i386: <<: *freebsd_i386 <<: *build_job dependencies: - configure:freebsd:i386 test:freebsd:i386: <<: *freebsd_i386 <<: *test_job dependencies: - build:freebsd:i386 configure:freebsd:amd64: <<: *freebsd_amd64 <<: *configure_job build:freebsd:amd64: <<: *freebsd_amd64 <<: *build_job dependencies: - configure:freebsd:amd64 test:freebsd:amd64: <<: *freebsd_amd64 <<: *test_job dependencies: - build:freebsd:amd64 build:documentation: <<: *debian_stretch stage: build dependencies: - configure:debian:stretch:amd64 only: - tags - triggers script: - make -C doc html singlehtml pdf artifacts: paths: - doc/_build/html/ - doc/_build/singlehtml/ - doc/_build/latex/knot.pdf expire_in: '1 hour' deploy:documentation: <<: *debian_stretch stage: deploy dependencies: - build:documentation only: - tags - triggers script: - "curl --http1.1 --request POST --form token=$WEBSITE_TOKEN --form ref=master --form \"variables[RELEASE_CI_BUILD_REF_NAME]=$CI_COMMIT_REF_NAME\" --form \"variables[RELEASE_CI_BUILD_ID]=$CI_JOB_ID\" https://gitlab.labs.nic.cz/api/v3/projects/5/trigger/builds" artifacts: name: "knot-dns-$CI_COMMIT_REF_NAME-doc" paths: - doc/_build/html/ - doc/_build/singlehtml/ - doc/_build/latex/knot.pdf