Cascading namespace settings for package forwarding
Release notes
Problem to solve
Users want to be able to have more control over their package forwarding settings, especially when the settings occur at different levels (instance, namespace, project). There should be rules about how settings are inherited and overwritten, and how changes can cascade down.
Proposal
Currently, we have instance-level settings to turn on and off package forwarding for PyPI and NPM, and soon to include maven.
Here, we should implement namespace-level settings, starting with Maven with logic around cascading.
These settings should be accessible by maintainers and higher.
Intended users
Feature Usage Metrics
Implementation notes
For the backend, we are starting with the maven package forwarding setting. This setting will likely live in namespace_package_settings
or something similar. We need to:
- Add the new setting column and model
- Expose the new fields to existing
group
query API and - a mutation to update package forward settings
- Add logic to traverse the parent namespaces when the direct namespace setting is not set. This logic should optimally live in a shared concern or module that can be reused by other package settings in the future.
- Once the setting and logic exists, #233022 (closed) will be unblocked.
This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.