Issue with a limit of 20 helm packages when using the package registry

Summary

I'm using the helm package registry to store helm packages in GitLab. Using the browsable "index.yaml" file served by the API, you can see all released helm charts which are backed by the helm package registry. I'm packaging helm charts using helm package . and curl to upload the package to the registry as described in the following documentation: https://docs.gitlab.com/ee/user/packages/helm_repository/#use-cicd-to-publish-a-helm-package.

The release process works fine, both manually and using a pipeline, however you hit a limit of 20 releases. The release 21 is visible in the user interface under https://YOUR_INSTANCE/GROUP/PROJECT/-/packages but its not available under the browsable api url and can not be installed via helm.

Is there any limit or pagination active or are there any settings to change this behaviour?

Steps to reproduce

  1. Create a helm chart and release it with the steps described in https://docs.gitlab.com/ee/user/packages/helm_repository/#use-cicd-to-publish-a-helm-package
  2. redo this until you have created the twentieth release
  3. Create release no. 21 and see it's visible in the API and the API responses with 201:created and browse the API url and see that the package with version 21 is not there
  4. Try to install the chart with the exact version of 21 with:
❯ helm install sample helm-release-app-template/helm-release-app-template --namespace=sample --version=0.0.21
Error: INSTALLATION FAILED: failed to download "helm-release-app-template/helm-release-app-template" at version "0.0.21"

What is the current bug behavior?

The release is generated correctly and is visible in the UI but not available in the API where GitLab serves the chart packages and index.yaml

What is the expected correct behavior?

The release is generated correctly and is visible in the UI as well as in the API where GitLab serves the chart packages and index.yaml

Relevant logs and/or screenshots

Screenshot of the release visible in the UI:

Screenshot_2021-09-28_at_09.44.45

Output of the index.yaml:


---
apiVersion: v1
entries:
  helm-release-app-template:
 [... skipping previous lines ...]
  - home: YOUR-INSTANCE-URL
    name: helm-release-app-template
    type: application
    version: 0.0.20
    keywords:
    - sample
    - template
    apiVersion: v2
    appVersion: 0.0.2
    description: A Helm chart for Kubernetes
    created: 'omitted'
    digest: 
    urls:
    - charts/helm-release-app-template-0.0.20.tgz
generated: 'omitted'
serverInfo:
  contextPath: "/api/v4/projects/YOUR-PROJECT-ID/packages/helm"

Output of the helm search command:

helm repo update
helm search repo helm-release-app-template
NAME                                              	CHART VERSION	APP VERSION	DESCRIPTION
helm-release-app-template/helm-release-app-temp...	0.0.20       	0.0.2      	A Helm chart for Kubernetes

Results of GitLab environment info

I'm using GitLab Enterprise Edition 14.2.4-ee