[igt-dev] [PATCH i-g-t v2 2/2] gitlab-CI: Do a build-test without any optional dependencies installed

Ser, Simon simon.ser at intel.com
Fri May 31 11:04:17 UTC 2019


On Fri, 2019-05-31 at 13:55 +0300, Petri Latvala wrote:
> The meson command line has -Dbuild_tests=disabled -Dwith_libdrm=
> because those aren't trivial to make automatic. Plain libdrm is also
> required, but the libdrm_vendor ones are all optional so for now those
> are just explicitly disabled. Otherwise this tests that the automated
> machinery is able to figure out what can be built.
> 
> v2 (Simon): Base the debian docker image on the debian-minimal image
> 
> Signed-off-by: Petri Latvala <petri.latvala at intel.com>
> Cc: Arkadiusz Hiler <arkadiusz.hiler at intel.com>
> Cc: Simon Ser <simon.ser at intel.com>

I probably can't add my Reviewed-by, but… this LGTM :)

> ---
>  .gitlab-ci.yml            | 20 ++++++++++++++++++++
>  Dockerfile.debian         | 20 +-------------------
>  Dockerfile.debian-minimal | 24 ++++++++++++++++++++++++
>  3 files changed, 45 insertions(+), 19 deletions(-)
>  create mode 100644 Dockerfile.debian-minimal
> 
> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> index 771143a9..4c7f166f 100644
> --- a/.gitlab-ci.yml
> +++ b/.gitlab-ci.yml
> @@ -68,6 +68,16 @@ build:tests-debian-meson:
>      paths:
>        - meson-test-list.txt
>  
> +build:tests-debian-minimal:
> +  image: $CI_REGISTRY/$CI_PROJECT_PATH/igt-debian-minimal:latest
> +  stage: build
> +  script:
> +    - meson -Dbuild_tests=disabled -Dwith_libdrm= build
> +    - ninja -C build
> +  artifacts:
> +    paths:
> +      - build
> +
>  build:tests-debian-meson-armhf:
>    image: $CI_REGISTRY/$CI_PROJECT_PATH/igt-debian-armhf:latest
>    stage: build
> @@ -117,6 +127,13 @@ test:ninja-test-clang:
>    stage: test
>    script: ninja -C build test
>  
> +test:ninja-test-minimal:
> +  image: $CI_REGISTRY/$CI_PROJECT_PATH/igt-debian-minimal:latest
> +  dependencies:
> +    - build:tests-debian-minimal
> +  stage: test
> +  script: ninja -C build test
> +
>  test:ninja-test-arm64:
>    image: $CI_REGISTRY/$CI_PROJECT_PATH/igt-debian-arm64:latest
>    dependencies:
> @@ -175,6 +192,7 @@ containers:igt-debian:
>    image: docker:stable
>    only:
>      changes:
> +      - Dockerfile.debian-minimal
>        - Dockerfile.debian
>        - .gitlab-ci.yml
>    services:
> @@ -184,7 +202,9 @@ containers:igt-debian:
>      DOCKER_DRIVER: overlay2
>    script:
>      - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
> +    - docker build -t $CI_REGISTRY/$CI_PROJECT_PATH/igt-debian-minimal -t igt-debian-minimal -f Dockerfile.debian-minimal .
>      - docker build -t $CI_REGISTRY/$CI_PROJECT_PATH/igt-debian -f Dockerfile.debian .
> +    - docker push $CI_REGISTRY/$CI_PROJECT_PATH/igt-debian-minimal
>      - docker push $CI_REGISTRY/$CI_PROJECT_PATH/igt-debian
>  
>  containers:igt-debian-armhf:
> diff --git a/Dockerfile.debian b/Dockerfile.debian
> index b9c3be39..717630e1 100644
> --- a/Dockerfile.debian
> +++ b/Dockerfile.debian
> @@ -1,36 +1,18 @@
> -FROM debian:stretch-backports
> +FROM igt-debian-minimal
>  
>  RUN apt-get update
>  RUN apt-get install -y \
> -			gcc \
> -			flex \
> -			bison \
> -			pkg-config \
> -			libpciaccess-dev \
> -			libkmod-dev \
> -			libprocps-dev \
>  			libunwind-dev \
> -			libdw-dev \
> -			zlib1g-dev \
> -			liblzma-dev \
> -			libcairo-dev \
> -			libpixman-1-dev \
> -			libudev-dev \
>  			libgsl-dev \
>  			libasound2-dev \
>  			libxmlrpc-core-c3-dev \
>  			libjson-c-dev \
>  			libcurl4-openssl-dev \
> -			libxrandr-dev \
> -			libxv-dev \
> -			x11proto-dri2-dev \
>  			python-docutils \
>  			valgrind \
>  			peg
>  
>  RUN apt-get install -t stretch-backports -y \
> -					meson \
> -					libdrm-dev \
>  					libdrm-intel1
>  
>  # autotools build deps
> diff --git a/Dockerfile.debian-minimal b/Dockerfile.debian-minimal
> new file mode 100644
> index 00000000..bbe70bed
> --- /dev/null
> +++ b/Dockerfile.debian-minimal
> @@ -0,0 +1,24 @@
> +FROM debian:stretch-backports
> +
> +RUN apt-get update
> +RUN apt-get install -y \
> +			gcc \
> +			flex \
> +			bison \
> +			pkg-config \
> +			libpciaccess-dev \
> +			libkmod-dev \
> +			libprocps-dev \
> +			libdw-dev \
> +			zlib1g-dev \
> +			liblzma-dev \
> +			libcairo-dev \
> +			libpixman-1-dev \
> +			libudev-dev \
> +			libxrandr-dev \
> +			libxv-dev \
> +			x11proto-dri2-dev
> +
> +RUN apt-get install -t stretch-backports -y \
> +					meson \
> +					libdrm-dev


More information about the igt-dev mailing list