From e64403030d214767eefdd3095ac8cda5e3ffeca1 Mon Sep 17 00:00:00 2001
From: Moritz Maxeiner <moritz@ucworks.org>
Date: Fri, 14 Sep 2018 14:56:33 +0200
Subject: [PATCH] Detect gpu driver version change and only disable cache when
 necessary

---
 .gitlab-ci.yml | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index a47b5d1..ef8c8f3 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -7,7 +7,11 @@ build-ubuntu-18.04:
   before_script:
     - echo "${CI_REGISTRY_PASSWORD}" | docker login -u "${CI_REGISTRY_USER}" "${CI_REGISTRY}" --password-stdin
   script:
-    - docker build --no-cache --pull -t "${CI_REGISTRY}/${CI_PROJECT_PATH,,}:ubuntu-18.04" ubuntu-18.04
+    - GPU_DRIVER_VERSION="$(dpkg-query --showformat='${Version}' --show 'nvidia-driver-*')"
+    - echo $GPU_DRIVER_VERSION
+    - if [[ -f $XDG_RUNTIME_DIR/rf_docker-gpu-driver-version ]] && [[ "$(cat $XDG_RUNTIME_DIR/rf_docker-gpu-driver-version)" == "$GPU_DRIVER_VERSION" ]]; then OPTS=''; else OPTS='--no-cache'; fi
+    - echo -n $GPU_DRIVER_VERSION > $XDG_RUNTIME_DIR/rf_docker-gpu-driver-version
+    - docker build $OPTS --pull -t "${CI_REGISTRY}/${CI_PROJECT_PATH,,}:ubuntu-18.04" ubuntu-18.04
     - docker push "${CI_REGISTRY}/${CI_PROJECT_PATH,,}:ubuntu-18.04"
   after_script:
     - docker logout "${CI_REGISTRY}"
-- 
GitLab