Skip to content
GitLab Next
  • Menu
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • GitLab GitLab
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 44,051
    • Issues 44,051
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 1,313
    • Merge requests 1,313
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • GitLab.orgGitLab.org
  • GitLabGitLab
  • Issues
  • #9784
Closed
Open
Issue created Feb 14, 2019 by JF@Lefebvre

Run codequality on shared runners without docker in docker enabled

Overview

We want to run the Code Climate scan on gitlab.com shared runners without requiring docker-in-docker. There are several reasons that we want to run the codequality job without using DinD. These include:

  • For security reasons, customers on self-hosted instances or on dot com with their own runners may disable the privileged option on their runners
  • The code quality job startup time can be slow, when using DinD (#233001)
  • (Potentially) The code quality job is difficult to configure for runners that are spun up in Kubernetes (#29976 (comment 421638881))
  • Users who use Kubernetes runners may no longer have access to Docker-in-Docker due to the Kubernetes community's move toward CRI-O and containerd. For example, Amazon EKS no longer supports Docker in Kubernetes v1.22 and above.

Intended users

  • Delaney (Development Team Lead)
  • Sasha (Software Developer)
  • Devon (DevOps Engineer)
  • Sidney (Systems Administrator)
  • Priyanka (Platform Engineer)

User experience goal

The default code quality template should be widely usable in more situations than it is now, including where:

  • Running a privileged runner is undesirable
  • Speed of pipeline is important
  • Runners are spun up in Kubernetes

Proposal

The SAST job has previously been through this conversion (#10796 (closed)), we may be able to leverage the work that was done there in order to convert the codequality job. However, we may not be able to, since the code climate scan is distributed as an image as mentioned here.

Some number of gitlab.com runners should be setup to run code quality jobs without utilizing DinD.

Documentation

CodeQuality documentation would need to be revised to remove mentions of DinD workflow.

Availability & Testing

What does success look like, and how can we measure that?

What is the type of buyer?

Is this a cross-stage feature?

Links / references

Original

Problem to solve

For security reason, my company disabled the privileged option (https://docs.gitlab.com/runner/configuration/advanced-configuration.html#the-runnersdocker-section).

Cound you please add a way to run codequality and sast without using docker in docker (and without private runner).

Links / references

DinD requirement for SAST was removed with completion of #10796 (closed)

Edited Mar 15, 2022 by Connor Gilbert
Assignee
Assign to
Time tracking