Shift-Left with CDAF Build Image.
Building In Containers
Many CI/CD orchestration tools support building in containers, e.g. GitLab & BitBucket Pipelines, for some of these tools, it is the only supported meethod, e.g. CircleCI & Travis. For these tools the CDAF images have been extended to provide a broad range of software development kits and command line utilities.
Azure DevOps does not natively support building in containers, however, the Azure DevOps agent is installed on the CDAF Build Image, so one or more containers can be registered and run in Agent Pools or Deployment Groups.
The same image used for building in a container can be used outside of the orchestration tooling. This realises the principle of loose coupling while providing a simplified method of fulfilling build dependencies. An additional advantage of this approach is that if there are mutually exclusive depedencies (at a system level), the latest versions in the CDAF image can be used, while using older versions on the host system, e.g. Java, NodeJS, etc.
With Docker Desktop, this also provides the ability to execute Linux builds on Windows workstations.
For usage details, refer to the readme on DockerHub