Skip to content

feat(integrations): add group harbor integration

This code change adds support for managing Harbor container registry integrations at the GitLab group level. Harbor is a container registry service that stores and manages Docker images.

The main additions include:

  1. Three new functions to handle Harbor integrations for groups:
    • Set up a new Harbor integration with connection details (URL, project name, username, password)
    • Disable an existing Harbor integration
    • Get the current Harbor integration settings
  2. Configuration options that allow specifying Harbor server details and whether to inherit settings from parent groups.
  3. Comprehensive tests to ensure all three functions work correctly, including mock HTTP responses that simulate the GitLab API.
  4. Code reuse improvement by sharing the Harbor configuration structure between project-level and group-level integrations, eliminating duplicate code.
  5. Mock interface updates to support testing of the new Harbor group integration features.

The change also includes a minor fix to a comment format in the Makefile. Overall, this extends the existing Harbor integration functionality from just projects to also work with GitLab groups, allowing administrators to configure container registry access at a higher organizational level.

Resolves #2142 (closed)

Edited by 🤖 GitLab Bot 🤖

Merge request reports

Loading