Add Artifact Registry configuration support for hybrid deployments

Summary

While Artifact Registry is not expected to be installed and packaged into Omnibus GitLab, it needs to be configured for Rails within Omnibus to support hybrid configurations.

Background

The GitLab Helm chart added Artifact Registry integration in gitlab-org/charts/gitlab!5294 (merged), which renders the artifact_registry: section into gitlab.yml with the following structure:

artifact_registry:
  api_url: "https://artifact-registry.example.com"
  service_token:
    secret_file: /etc/gitlab/artifact-registry/.gitlab_artifact_registry_secret

The Rails-side settings keys are being added in gitlab-org/gitlab!252017.

What needs to be done

Add configuration support in Omnibus GitLab to allow operators to configure Artifact Registry integration for hybrid deployments where:

  • GitLab Rails runs on Omnibus
  • Artifact Registry runs as a separate service

This should include:

  1. Configuration options in gitlab.rb to set:
    • artifact_registry['api_url'] - the Artifact Registry service endpoint
    • artifact_registry['service_token_file'] - path to the shared service token file
  2. Chef cookbook changes to render these settings into gitlab.yml for Rails consumption
  3. Developer documentation/runbook for hybrid deployment scenarios

Notes

  • Artifact Registry will NOT be installed or packaged into Omnibus
  • This is specifically for hybrid configurations where AR runs separately
  • The feature is currently experimental and GitLab.com-only
Edited by Clemens Beck