Code quality fails when used in recent docker dind contexts

Summary

Our code quality offering is based on codeclimate. The corresponding image is fairly old https://hub.docker.com/r/codeclimate/codeclimate; the latest version was released 2y ago. This version includes a docker 20.10.17 with API version 1.41 that is incompatible with our dind-service.

/ # docker version
Client:
 Version:           20.10.17
 API version:       1.41
 Go version:        go1.17.11
 Git commit:        100c701
 Built:             Mon Jun  6 22:56:42 2022
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Error message in the log Error response from daemon: client version 1.41 is too old. Minimum supported API version is 1.44, please upgrade your client to a newer version.

Steps to reproduce

https://gitlab.com/gitlab-org/ci-cd/codequality/-/jobs/12782016005

Example Project

https://gitlab.com/gitlab-org/ci-cd/codequality

What is the current bug behavior?

Code quality refuses to run in newer dind contexts: pack for building CNB stops at ===> ANALYZING w... (#585225 - closed) • Vishal Tak • 18.9.

Possible fixes

We can try updating the docker client within the code climate image or we have to downgrade the dind version and update the documentation to highlight that builtin code quality only runs up until a specific docker version. Given that built-in Code Quality code is deprecated the second option may be acceptable.

Edited by Julian Thome