[go: up one dir, main page]

Skip to content

Git object / tag filtering for Repository Pull Mirroring

Problem to solve

Gitlab currently creates a few autodeploy-tags /day in the CNG chart repo, which is understandable. The pull mirroring feature though always pulls tags (including these autodeploy-tags), even though some or most have no value for community contributors developing the chart.

Intended users

Developers that use the pull mirroring feature, on a project that has an upstream which (ab)uses the git repository as a metadata store for project management or other issues not directly related to code deployment.

User experience goal

An easy way to exclude or explicitly include a pattern of tags / branches / refs from pull mirroring. Protected branches is an incomplete solution, as currently tags seem to be pulled always.

Proposal

I believe the best way to fix this is to allow git ref filtering (allow / ignore) for pull mirroring, similar to how protected branches are set up.

Further details

Note that this is generally useful for projects that use pull mirroring, but do not want/need all of the git history and structure of the upstream repository. It is further useful to decrease the amount of refs in a repository, which should increase the performance of gitlab handling that repository.

Permissions and Security

No changes in the rights for pull mirroring.

Documentation

The following page needs updating when this feature is implemented: https://docs.gitlab.com/ee/user/project/repository/repository_mirroring.html#pulling-from-a-remote-repository-starter

Availability & Testing

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

What is the type of buyer?

Current users of pull mirroring

Is this a cross-stage feature?

Links / references

This is comparable to #1355 (closed), but different in that we need tag filters as well.