Skip to main content

Custom Storage

RepoFlow can use the bundled MinIO deployment, AWS S3, other S3-compatible object storage, Google Cloud Storage, Azure Blob Storage, or local file-system storage.

For Helm deployments, configure the selected storage backend through server.environment and server.secretEnv in your values.yaml.

PVC StorageClass

By default, the chart does not set storageClassName on PVCs. Kubernetes will use the cluster's default StorageClass, matching the previous chart behavior.

To use one StorageClass for all chart-managed PVCs, set:

global:
storageClassName: "your-storage-class"

You can override the global value by setting storageClassName under postgresql, minio, elastic, server.logsPvc, or server.vulnerabilitiesScanning.

If both the global value and a service override are empty, storageClassName is omitted from the PVC.

When using external storage, disable the bundled MinIO deployment:

minio:
enabled: false

Use the server environment variable reference for the exact variables required by each storage backend:

Storage backendConfiguration
AWS S3AWS S3 settings
Other S3-compatible storageOther S3-compatible storage settings
Google Cloud StorageGoogle Cloud Storage settings
Azure Blob StorageAzure Blob Storage settings
Local file systemFile system storage settings

If you use the bundled MinIO deployment from the chart, leave minio.enabled=true and make sure the server S3 credentials match MinIO's root credentials.