diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index cc4f15b3bfaf051b777028be34f647c4f6bb8bfa..73962f4baec4374f2e9cf3278f8068b621879463 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,15 +1,14 @@
 stages:
   - test
+  - checks
   - package
 
 variables:
   CONTAINER_GCC_IMAGE: $CI_REGISTRY_IMAGE:gcc-$CI_COMMIT_REF_SLUG
 
-before_script:
-  - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
-
 include:
   - local: '/scripts/ci/extends/container-maker-setup.yml'
   - local: '/scripts/ci/jobs/build_image.yml'
   - local: '/scripts/ci/jobs/build.yml'
+  - local: '/scripts/ci/jobs/checks.yml'
   - local: '/scripts/ci/jobs/container.yml'
diff --git a/scripts/ci/jobs/build.yml b/scripts/ci/jobs/build.yml
index 046b903fbf93986964fb3ff5db27bce25915d6e9..7e0025521863167a8fa98254289727800bce66d2 100644
--- a/scripts/ci/jobs/build.yml
+++ b/scripts/ci/jobs/build.yml
@@ -20,7 +20,8 @@ build:
     - cd build
 
   script:
-    - cmake .. -G Ninja -DCMAKE_BUILD_TYPE=Release -DOGS_BUILD_PROCESSES=GroundwaterFlow
+    - cmake .. -G Ninja -DCMAKE_BUILD_TYPE=Release -DOGS_USE_CONAN=OFF-DOGS_BUILD_PROCESSES=GroundwaterFlow
+    - cmake --build . > >(tee make.output)
     - cmake --build . --target tests
     - cmake --build . --target ctest -j 8
 
@@ -28,6 +29,8 @@ build:
     paths:
       - build/Testing/**/*.xml
       - build/Tests/testrunner.xml
+      - build/make.output
+    expire_in: 1 week
     reports:
       junit:
         - build/Tests/testrunner.xml
diff --git a/scripts/ci/jobs/build_image.yml b/scripts/ci/jobs/build_image.yml
index a2752733737ae182dcd27e650d1c1ea1bcdd9b33..3f63ea0212a76bc1b75591209bdba4d34d56f128 100644
--- a/scripts/ci/jobs/build_image.yml
+++ b/scripts/ci/jobs/build_image.yml
@@ -5,8 +5,6 @@ build_image:
       # - ThirdParty/container-maker
   tags:
     - docker-shell
-  variables:
-    GIT_STRATEGY: fetch
   extends: .container-maker-setup
   script:
     - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
diff --git a/scripts/ci/jobs/checks.yml b/scripts/ci/jobs/checks.yml
new file mode 100644
index 0000000000000000000000000000000000000000..a33771b344cc5725887d397165a72701c2673b6a
--- /dev/null
+++ b/scripts/ci/jobs/checks.yml
@@ -0,0 +1,10 @@
+compiler warnings:
+  stage: checks
+  variables:
+    GIT_STRATEGY: none
+  script:
+    - cd build
+    - "if [[ $(cat make.output | grep warning -i) ]]; then echo 'There were compiler warnings:'; cat make.output | grep warning -i; exit 1; fi"
+  allow_failure: true
+  dependencies:
+    - build