← All reportsPublic report

gitlabhq/gitlabhq

GitLab CE Mirror | Please open new issues in our issue tracker on GitLab.com

25k stars Ruby View on GitHubprofiled 14d ago
Try GitZoid
236PRs this week
2Contributors
1500Deps scanned
0Issues found
01 · Repo overview

How gitlabhq is put together

GitLab is a large monolithic Ruby on Rails web application providing DevSecOps platform functionality (repositories, CI/CD, issues/MRs, authentication, APIs). The repo follows a modular Rails layout with app/ (models/controllers/workers), config/ for boot and middleware wiring, lib/gitlab for core services and Rack middleware, and vendor/gems plus gems/ for in-repo extracted gems. Data flows through Puma/Rails into PostgreSQL via ActiveRecord, Redis-backed subsystems (cache, queues, sessions, shared state), and Sidekiq workers; a separate Grape REST API, GraphQL API, and ActionCable run inside the same application. Frontend is a Vue.js SPA built with Webpack/Vite and Babel under app/assets/javascripts. Companion services (Workhorse, Gitaly, Shell, Pages, KAS, mail_room) are version-pinned via top-level *_VERSION files.

Languages

RubyJavaScriptVue (SFC)SCSS/CSSHamlYAMLPython

Frameworks

Rails 7.2 (~>7.2.3; dual-boot Gemfile.next with Rails 8.0)Grape (~>2.4; next ~>3.2) REST APIGraphQL (graphql 2.6.3)Devise authenticationDoorkeeper OAuth2/OIDCOmniAuth SSO strategiesSidekiq background jobsActionCableSprocketsViewComponentBabel/@babel/preset-envApollo Client (frontend GraphQL)

Datastores

PostgreSQL (pg gem ~1.6.1)Redis (multiple stores: cache, queues, shared_state, sessions, trace_chunks, rate_limiting, repository_cache, db_load_balancing)

Infrastructure

.gitlab-ci.yml CI pipeline with .gitlab/ci/*.gitlab-ci.yml includesPuma web server (config/puma.rb referenced)Dockerfile.assets asset build imageCompanion services pinned by GITLAB_WORKHORSE_VERSION, GITALY_SERVER_VERSION, GITLAB_SHELL_VERSION, GITLAB_PAGES_VERSION, GITLAB_KAS_VERSION, GITLAB_ELASTICSEARCH_INDEXER_VERSION, GITLAB_OPENBAO_VERSION, GITLAB_ZOEKT_VERSIONcells-mailroom standalone Ruby serviceCoverband code coverage via Redis store

Major components

Rails application core

Monolithic Gitlab::Application wiring railties, autoload/eager-load paths (including ee/jh overlays), exceptions_app, and legacy compatibility defaults.

Rack middleware stack

lib/gitlab/middleware/* handlers for read-only mode, compressed JSON, path traversal/depth checks, IP spoofing, rate limiting, secure headers, same-site cookies, static assets authorization, and JSON validation.

Redis multi-store layer

lib/gitlab/redis/* wrappers partitioning cache, Sidekiq queues, sessions, trace chunks, rate limiting, repository cache, and DB load balancing across Redis instances.

REST API (Grape)

Grape-based /api endpoints with grape-entity representations, Swagger/OpenAPI generation, path helpers, and CORS handling.

GraphQL API

graphql-ruby schema under app/graphql with resolvers/mutations/types/concerns, Apollo upload support, and schema export for frontend tooling.

Authentication & SSO

Devise password auth, Doorkeeper OAuth2/device grant/OIDC, OmniAuth strategies (SAML, LDAP, GitHub, Google, Azure AD, Crowd, Salesforce, etc.), 2FA (TOTP/WebAuthn), Kerberos.

Background processing & mail

Sidekiq cluster scripts (bin/sidekiq-cluster), mail_room email ingestion, and the standalone cells-mailroom routing service built on gitlab-email_handler and Topology Service client.

Frontend SPA build

Vue.js application in app/assets/javascripts compiled with Babel/Vite/Sprockets, ESLint local rules, Stylelint, and Apollo config against exported GraphQL schema.

Over the past five weeks, activity on gitlabhq/gitlabhq consisted almost entirely of routine, automated synchronization commits that pull the latest changes from the main gitlab-org/gitlab repository, keeping this public mirror up to date. The only notable exception was a version file update during the week of August 17, which typically signals preparation for a release. Overall, this was steady maintenance rather than new feature development.

Week by week

2026-08-24A quieter week with twelve automated sync commits pulling the latest code from the main GitLab repository.latest1 change

Chore

Repository synchronization

Twelve automated updates were applied to keep this public mirror aligned with the latest changes from the main GitLab codebase.

2026-08-17A high-volume sync week capped by an update to the VERSION files, which usually marks readiness for a release.2 changes

Chore

Version bump

The VERSION files were updated, indicating the project was being prepared for its next numbered release.

Chore

Repository synchronization

Forty-five automated updates were applied to mirror the latest work from the main GitLab development branch.

2026-08-10Another busy maintenance week consisting entirely of forty-six automated syncs from the main GitLab repository.1 change

Chore

Repository synchronization

Forty-six automated updates were applied to bring the public mirror in line with the newest code from GitLab's main branch.

2026-08-03Steady upkeep continued with forty-six automated sync commits and no other distinct changes.1 change

Chore

Repository synchronization

Forty-six automated updates were pulled from the main GitLab repository to keep this mirror current.

2026-07-27Routine maintenance with forty-five automated sync commits from the main GitLab codebase.1 change

Chore

Repository synchronization

Forty-five automated updates were applied so this public mirror reflects the latest state of GitLab's main development branch.

03 · Security check

Dependencies and code review

1500 dependencies scanned

Dependency advisories

Security Watch

No known advisories across 1500 scanned dependencies.

No known advisories in the scanned dependencies.

Code review

No concrete code-level issues confirmed.

Get this report every week for your repos.

GitZoid learns each repo, reports what changed, and flags what needs attention. One flat price for the whole team.

$19 a month, flat · First 10 outputs free · No card required