public inbox for igt-dev@lists.freedesktop.org
 help / color / mirror / Atom feed
From: Petri Latvala <petri.latvala@intel.com>
To: igt-dev@lists.freedesktop.org
Cc: Petri Latvala <petri.latvala@intel.com>
Subject: [igt-dev] [PATCH i-g-t v2 2/2] gitlab-CI: Do a build-test without any optional dependencies installed
Date: Fri, 31 May 2019 13:55:22 +0300	[thread overview]
Message-ID: <20190531105522.22154-2-petri.latvala@intel.com> (raw)
In-Reply-To: <20190531105522.22154-1-petri.latvala@intel.com>

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@intel.com>
Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
Cc: Simon Ser <simon.ser@intel.com>
---
 .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
-- 
2.19.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

  reply	other threads:[~2019-05-31 10:55 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-31 10:55 [igt-dev] [PATCH i-g-t 1/2] meson: Remove redundant libdw from lib_deps Petri Latvala
2019-05-31 10:55 ` Petri Latvala [this message]
2019-05-31 11:04   ` [igt-dev] [PATCH i-g-t v2 2/2] gitlab-CI: Do a build-test without any optional dependencies installed Ser, Simon
2019-05-31 15:59 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/2] meson: Remove redundant libdw from lib_deps Patchwork
2019-06-01 18:39 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190531105522.22154-2-petri.latvala@intel.com \
    --to=petri.latvala@intel.com \
    --cc=igt-dev@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox