diff --git a/bitnami/harbor/Chart.yaml b/bitnami/harbor/Chart.yaml index 91151e41506272..93b7901fe74288 100644 --- a/bitnami/harbor/Chart.yaml +++ b/bitnami/harbor/Chart.yaml @@ -36,4 +36,4 @@ sources: - https://github.com/bitnami/containers/tree/main/bitnami/harbor-registry - https://github.com/bitnami/containers/tree/main/bitnami/harbor-registryctl - https://goharbor.io/ -version: 16.1.2 +version: 16.2.0 diff --git a/bitnami/harbor/README.md b/bitnami/harbor/README.md index 757acf83923639..7e06c6eb9d095d 100644 --- a/bitnami/harbor/README.md +++ b/bitnami/harbor/README.md @@ -153,94 +153,101 @@ Additionally, if `persistence.resourcePolicy` is set to `keep`, you should manua ### Persistence Parameters -| Name | Description | Value | -| ------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------- | -| `persistence.enabled` | Enable the data persistence or not | `true` | -| `persistence.resourcePolicy` | Setting it to `keep` to avoid removing PVCs during a helm delete operation. Leaving it empty will delete PVCs after the chart deleted | `keep` | -| `persistence.persistentVolumeClaim.registry.existingClaim` | Name of an existing PVC to use | `""` | -| `persistence.persistentVolumeClaim.registry.storageClass` | PVC Storage Class for Harbor Registry data volume | `""` | -| `persistence.persistentVolumeClaim.registry.subPath` | The sub path used in the volume | `""` | -| `persistence.persistentVolumeClaim.registry.accessModes` | The access mode of the volume | `["ReadWriteOnce"]` | -| `persistence.persistentVolumeClaim.registry.size` | The size of the volume | `5Gi` | -| `persistence.persistentVolumeClaim.registry.annotations` | Annotations for the PVC | `{}` | -| `persistence.persistentVolumeClaim.registry.selector` | Selector to match an existing Persistent Volume | `{}` | -| `persistence.persistentVolumeClaim.jobservice.existingClaim` | Name of an existing PVC to use | `""` | -| `persistence.persistentVolumeClaim.jobservice.storageClass` | PVC Storage Class for Harbor Jobservice data volume | `""` | -| `persistence.persistentVolumeClaim.jobservice.subPath` | The sub path used in the volume | `""` | -| `persistence.persistentVolumeClaim.jobservice.accessModes` | The access mode of the volume | `["ReadWriteOnce"]` | -| `persistence.persistentVolumeClaim.jobservice.size` | The size of the volume | `1Gi` | -| `persistence.persistentVolumeClaim.jobservice.annotations` | Annotations for the PVC | `{}` | -| `persistence.persistentVolumeClaim.jobservice.selector` | Selector to match an existing Persistent Volume | `{}` | -| `persistence.persistentVolumeClaim.chartmuseum.existingClaim` | Name of an existing PVC to use | `""` | -| `persistence.persistentVolumeClaim.chartmuseum.storageClass` | PVC Storage Class for Chartmuseum data volume | `""` | -| `persistence.persistentVolumeClaim.chartmuseum.subPath` | The sub path used in the volume | `""` | -| `persistence.persistentVolumeClaim.chartmuseum.accessModes` | The access mode of the volume | `["ReadWriteOnce"]` | -| `persistence.persistentVolumeClaim.chartmuseum.size` | The size of the volume | `5Gi` | -| `persistence.persistentVolumeClaim.chartmuseum.annotations` | Annotations for the PVC | `{}` | -| `persistence.persistentVolumeClaim.chartmuseum.selector` | Selector to match an existing Persistent Volume | `{}` | -| `persistence.persistentVolumeClaim.trivy.storageClass` | PVC Storage Class for Trivy data volume | `""` | -| `persistence.persistentVolumeClaim.trivy.accessModes` | The access mode of the volume | `["ReadWriteOnce"]` | -| `persistence.persistentVolumeClaim.trivy.size` | The size of the volume | `5Gi` | -| `persistence.persistentVolumeClaim.trivy.annotations` | Annotations for the PVC | `{}` | -| `persistence.persistentVolumeClaim.trivy.selector` | Selector to match an existing Persistent Volume | `{}` | -| `persistence.imageChartStorage.caBundleSecret` | Specify the `caBundleSecret` if the storage service uses a self-signed certificate. The secret must contain keys named `ca.crt` which will be injected into the trust store of registry's and chartmuseum's containers. | `""` | -| `persistence.imageChartStorage.disableredirect` | The configuration for managing redirects from content backends. For backends which do not supported it (such as using MinIO® for `s3` storage type), please set it to `true` to disable redirects. Refer to the [guide](https://github.com/docker/distribution/blob/master/docs/configuration.md#redirect) for more information about the detail | `false` | -| `persistence.imageChartStorage.type` | The type of storage for images and charts: `filesystem`, `azure`, `gcs`, `s3`, `swift` or `oss`. The type must be `filesystem` if you want to use persistent volumes for registry and chartmuseum. Refer to the [guide](https://github.com/docker/distribution/blob/master/docs/configuration.md#storage) for more information about the detail | `filesystem` | -| `persistence.imageChartStorage.filesystem.rootdirectory` | Filesystem storage type setting: Storage root directory | `/storage` | -| `persistence.imageChartStorage.filesystem.maxthreads` | Filesystem storage type setting: Maximum threads directory | `""` | -| `persistence.imageChartStorage.azure.accountname` | Azure storage type setting: Name of the Azure account | `accountname` | -| `persistence.imageChartStorage.azure.accountkey` | Azure storage type setting: Key of the Azure account | `base64encodedaccountkey` | -| `persistence.imageChartStorage.azure.container` | Azure storage type setting: Container | `containername` | -| `persistence.imageChartStorage.azure.storagePrefix` | Azure storage type setting: Storage prefix | `/azure/harbor/charts` | -| `persistence.imageChartStorage.azure.realm` | Azure storage type setting: Realm of the Azure account | `""` | -| `persistence.imageChartStorage.gcs.bucket` | GCS storage type setting: Bucket name | `bucketname` | -| `persistence.imageChartStorage.gcs.encodedkey` | GCS storage type setting: Base64 encoded key | `base64-encoded-json-key-file` | -| `persistence.imageChartStorage.gcs.rootdirectory` | GCS storage type setting: Root directory name | `""` | -| `persistence.imageChartStorage.gcs.chunksize` | GCS storage type setting: Chunk size name | `""` | -| `persistence.imageChartStorage.s3.region` | S3 storage type setting: Region | `us-west-1` | -| `persistence.imageChartStorage.s3.bucket` | S3 storage type setting: Bucket name | `bucketname` | -| `persistence.imageChartStorage.s3.accesskey` | S3 storage type setting: Access key name | `""` | -| `persistence.imageChartStorage.s3.secretkey` | S3 storage type setting: Secret Key name | `""` | -| `persistence.imageChartStorage.s3.regionendpoint` | S3 storage type setting: Region Endpoint | `""` | -| `persistence.imageChartStorage.s3.encrypt` | S3 storage type setting: Encrypt | `""` | -| `persistence.imageChartStorage.s3.keyid` | S3 storage type setting: Key ID | `""` | -| `persistence.imageChartStorage.s3.secure` | S3 storage type setting: Secure | `""` | -| `persistence.imageChartStorage.s3.skipverify` | S3 storage type setting: TLS skip verification | `""` | -| `persistence.imageChartStorage.s3.v4auth` | S3 storage type setting: V4 authorization | `""` | -| `persistence.imageChartStorage.s3.chunksize` | S3 storage type setting: V4 authorization | `""` | -| `persistence.imageChartStorage.s3.rootdirectory` | S3 storage type setting: Root directory name | `""` | -| `persistence.imageChartStorage.s3.storageClass` | S3 storage type setting: Storage class | `""` | -| `persistence.imageChartStorage.s3.sse` | S3 storage type setting: SSE name | `""` | -| `persistence.imageChartStorage.swift.authurl` | Swift storage type setting: Authentication url | `https://storage.myprovider.com/v3/auth` | -| `persistence.imageChartStorage.swift.username` | Swift storage type setting: Authentication url | `""` | -| `persistence.imageChartStorage.swift.password` | Swift storage type setting: Password | `""` | -| `persistence.imageChartStorage.swift.container` | Swift storage type setting: Container | `""` | -| `persistence.imageChartStorage.swift.region` | Swift storage type setting: Region | `""` | -| `persistence.imageChartStorage.swift.tenant` | Swift storage type setting: Tenant | `""` | -| `persistence.imageChartStorage.swift.tenantid` | Swift storage type setting: TenantID | `""` | -| `persistence.imageChartStorage.swift.domain` | Swift storage type setting: Domain | `""` | -| `persistence.imageChartStorage.swift.domainid` | Swift storage type setting: DomainID | `""` | -| `persistence.imageChartStorage.swift.trustid` | Swift storage type setting: TrustID | `""` | -| `persistence.imageChartStorage.swift.insecureskipverify` | Swift storage type setting: Verification | `""` | -| `persistence.imageChartStorage.swift.chunksize` | Swift storage type setting: Chunk | `""` | -| `persistence.imageChartStorage.swift.prefix` | Swift storage type setting: Prefix | `""` | -| `persistence.imageChartStorage.swift.secretkey` | Swift storage type setting: Secre Key | `""` | -| `persistence.imageChartStorage.swift.accesskey` | Swift storage type setting: Access Key | `""` | -| `persistence.imageChartStorage.swift.authversion` | Swift storage type setting: Auth | `""` | -| `persistence.imageChartStorage.swift.endpointtype` | Swift storage type setting: Endpoint | `""` | -| `persistence.imageChartStorage.swift.tempurlcontainerkey` | Swift storage type setting: Temp URL container key | `""` | -| `persistence.imageChartStorage.swift.tempurlmethods` | Swift storage type setting: Temp URL methods | `""` | -| `persistence.imageChartStorage.oss.accesskeyid` | OSS storage type setting: Access key ID | `""` | -| `persistence.imageChartStorage.oss.accesskeysecret` | OSS storage type setting: Access key secret name containing the token | `""` | -| `persistence.imageChartStorage.oss.region` | OSS storage type setting: Region name | `""` | -| `persistence.imageChartStorage.oss.bucket` | OSS storage type setting: Bucket name | `""` | -| `persistence.imageChartStorage.oss.endpoint` | OSS storage type setting: Endpoint | `""` | -| `persistence.imageChartStorage.oss.internal` | OSS storage type setting: Internal | `""` | -| `persistence.imageChartStorage.oss.encrypt` | OSS storage type setting: Encrypt | `""` | -| `persistence.imageChartStorage.oss.secure` | OSS storage type setting: Secure | `""` | -| `persistence.imageChartStorage.oss.chunksize` | OSS storage type setting: Chunk | `""` | -| `persistence.imageChartStorage.oss.rootdirectory` | OSS storage type setting: Directory | `""` | -| `persistence.imageChartStorage.oss.secretkey` | OSS storage type setting: Secret key | `""` | +| Name | Description | Value | +| --------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------- | +| `persistence.enabled` | Enable the data persistence or not | `true` | +| `persistence.resourcePolicy` | Setting it to `keep` to avoid removing PVCs during a helm delete operation. Leaving it empty will delete PVCs after the chart deleted | `keep` | +| `persistence.persistentVolumeClaim.registry.existingClaim` | Name of an existing PVC to use | `""` | +| `persistence.persistentVolumeClaim.registry.storageClass` | PVC Storage Class for Harbor Registry data volume | `""` | +| `persistence.persistentVolumeClaim.registry.subPath` | The sub path used in the volume | `""` | +| `persistence.persistentVolumeClaim.registry.accessModes` | The access mode of the volume | `["ReadWriteOnce"]` | +| `persistence.persistentVolumeClaim.registry.size` | The size of the volume | `5Gi` | +| `persistence.persistentVolumeClaim.registry.annotations` | Annotations for the PVC | `{}` | +| `persistence.persistentVolumeClaim.registry.selector` | Selector to match an existing Persistent Volume | `{}` | +| `persistence.persistentVolumeClaim.jobservice.existingClaim` | Name of an existing PVC to use | `""` | +| `persistence.persistentVolumeClaim.jobservice.storageClass` | PVC Storage Class for Harbor Jobservice data volume | `""` | +| `persistence.persistentVolumeClaim.jobservice.subPath` | The sub path used in the volume | `""` | +| `persistence.persistentVolumeClaim.jobservice.accessModes` | The access mode of the volume | `["ReadWriteOnce"]` | +| `persistence.persistentVolumeClaim.jobservice.size` | The size of the volume | `1Gi` | +| `persistence.persistentVolumeClaim.jobservice.annotations` | Annotations for the PVC | `{}` | +| `persistence.persistentVolumeClaim.jobservice.selector` | Selector to match an existing Persistent Volume | `{}` | +| `persistence.persistentVolumeClaim.jobservice.scanData.existingClaim` | Name of an existing PVC to use | `""` | +| `persistence.persistentVolumeClaim.jobservice.scanData.storageClass` | PVC Storage Class for Harbor Jobservice data volume | `""` | +| `persistence.persistentVolumeClaim.jobservice.scanData.subPath` | The sub path used in the volume | `""` | +| `persistence.persistentVolumeClaim.jobservice.scanData.accessModes` | The access mode of the volume | `["ReadWriteOnce"]` | +| `persistence.persistentVolumeClaim.jobservice.scanData.size` | The size of the volume | `1Gi` | +| `persistence.persistentVolumeClaim.jobservice.scanData.annotations` | Annotations for the PVC | `{}` | +| `persistence.persistentVolumeClaim.jobservice.scanData.selector` | Selector to match an existing Persistent Volume | `{}` | +| `persistence.persistentVolumeClaim.chartmuseum.existingClaim` | Name of an existing PVC to use | `""` | +| `persistence.persistentVolumeClaim.chartmuseum.storageClass` | PVC Storage Class for Chartmuseum data volume | `""` | +| `persistence.persistentVolumeClaim.chartmuseum.subPath` | The sub path used in the volume | `""` | +| `persistence.persistentVolumeClaim.chartmuseum.accessModes` | The access mode of the volume | `["ReadWriteOnce"]` | +| `persistence.persistentVolumeClaim.chartmuseum.size` | The size of the volume | `5Gi` | +| `persistence.persistentVolumeClaim.chartmuseum.annotations` | Annotations for the PVC | `{}` | +| `persistence.persistentVolumeClaim.chartmuseum.selector` | Selector to match an existing Persistent Volume | `{}` | +| `persistence.persistentVolumeClaim.trivy.storageClass` | PVC Storage Class for Trivy data volume | `""` | +| `persistence.persistentVolumeClaim.trivy.accessModes` | The access mode of the volume | `["ReadWriteOnce"]` | +| `persistence.persistentVolumeClaim.trivy.size` | The size of the volume | `5Gi` | +| `persistence.persistentVolumeClaim.trivy.annotations` | Annotations for the PVC | `{}` | +| `persistence.persistentVolumeClaim.trivy.selector` | Selector to match an existing Persistent Volume | `{}` | +| `persistence.imageChartStorage.caBundleSecret` | Specify the `caBundleSecret` if the storage service uses a self-signed certificate. The secret must contain keys named `ca.crt` which will be injected into the trust store of registry's and chartmuseum's containers. | `""` | +| `persistence.imageChartStorage.disableredirect` | The configuration for managing redirects from content backends. For backends which do not supported it (such as using MinIO® for `s3` storage type), please set it to `true` to disable redirects. Refer to the [guide](https://github.com/docker/distribution/blob/master/docs/configuration.md#redirect) for more information about the detail | `false` | +| `persistence.imageChartStorage.type` | The type of storage for images and charts: `filesystem`, `azure`, `gcs`, `s3`, `swift` or `oss`. The type must be `filesystem` if you want to use persistent volumes for registry and chartmuseum. Refer to the [guide](https://github.com/docker/distribution/blob/master/docs/configuration.md#storage) for more information about the detail | `filesystem` | +| `persistence.imageChartStorage.filesystem.rootdirectory` | Filesystem storage type setting: Storage root directory | `/storage` | +| `persistence.imageChartStorage.filesystem.maxthreads` | Filesystem storage type setting: Maximum threads directory | `""` | +| `persistence.imageChartStorage.azure.accountname` | Azure storage type setting: Name of the Azure account | `accountname` | +| `persistence.imageChartStorage.azure.accountkey` | Azure storage type setting: Key of the Azure account | `base64encodedaccountkey` | +| `persistence.imageChartStorage.azure.container` | Azure storage type setting: Container | `containername` | +| `persistence.imageChartStorage.azure.storagePrefix` | Azure storage type setting: Storage prefix | `/azure/harbor/charts` | +| `persistence.imageChartStorage.azure.realm` | Azure storage type setting: Realm of the Azure account | `""` | +| `persistence.imageChartStorage.gcs.bucket` | GCS storage type setting: Bucket name | `bucketname` | +| `persistence.imageChartStorage.gcs.encodedkey` | GCS storage type setting: Base64 encoded key | `base64-encoded-json-key-file` | +| `persistence.imageChartStorage.gcs.rootdirectory` | GCS storage type setting: Root directory name | `""` | +| `persistence.imageChartStorage.gcs.chunksize` | GCS storage type setting: Chunk size name | `""` | +| `persistence.imageChartStorage.s3.region` | S3 storage type setting: Region | `us-west-1` | +| `persistence.imageChartStorage.s3.bucket` | S3 storage type setting: Bucket name | `bucketname` | +| `persistence.imageChartStorage.s3.accesskey` | S3 storage type setting: Access key name | `""` | +| `persistence.imageChartStorage.s3.secretkey` | S3 storage type setting: Secret Key name | `""` | +| `persistence.imageChartStorage.s3.regionendpoint` | S3 storage type setting: Region Endpoint | `""` | +| `persistence.imageChartStorage.s3.encrypt` | S3 storage type setting: Encrypt | `""` | +| `persistence.imageChartStorage.s3.keyid` | S3 storage type setting: Key ID | `""` | +| `persistence.imageChartStorage.s3.secure` | S3 storage type setting: Secure | `""` | +| `persistence.imageChartStorage.s3.skipverify` | S3 storage type setting: TLS skip verification | `""` | +| `persistence.imageChartStorage.s3.v4auth` | S3 storage type setting: V4 authorization | `""` | +| `persistence.imageChartStorage.s3.chunksize` | S3 storage type setting: V4 authorization | `""` | +| `persistence.imageChartStorage.s3.rootdirectory` | S3 storage type setting: Root directory name | `""` | +| `persistence.imageChartStorage.s3.storageClass` | S3 storage type setting: Storage class | `""` | +| `persistence.imageChartStorage.s3.sse` | S3 storage type setting: SSE name | `""` | +| `persistence.imageChartStorage.swift.authurl` | Swift storage type setting: Authentication url | `https://storage.myprovider.com/v3/auth` | +| `persistence.imageChartStorage.swift.username` | Swift storage type setting: Authentication url | `""` | +| `persistence.imageChartStorage.swift.password` | Swift storage type setting: Password | `""` | +| `persistence.imageChartStorage.swift.container` | Swift storage type setting: Container | `""` | +| `persistence.imageChartStorage.swift.region` | Swift storage type setting: Region | `""` | +| `persistence.imageChartStorage.swift.tenant` | Swift storage type setting: Tenant | `""` | +| `persistence.imageChartStorage.swift.tenantid` | Swift storage type setting: TenantID | `""` | +| `persistence.imageChartStorage.swift.domain` | Swift storage type setting: Domain | `""` | +| `persistence.imageChartStorage.swift.domainid` | Swift storage type setting: DomainID | `""` | +| `persistence.imageChartStorage.swift.trustid` | Swift storage type setting: TrustID | `""` | +| `persistence.imageChartStorage.swift.insecureskipverify` | Swift storage type setting: Verification | `""` | +| `persistence.imageChartStorage.swift.chunksize` | Swift storage type setting: Chunk | `""` | +| `persistence.imageChartStorage.swift.prefix` | Swift storage type setting: Prefix | `""` | +| `persistence.imageChartStorage.swift.secretkey` | Swift storage type setting: Secre Key | `""` | +| `persistence.imageChartStorage.swift.accesskey` | Swift storage type setting: Access Key | `""` | +| `persistence.imageChartStorage.swift.authversion` | Swift storage type setting: Auth | `""` | +| `persistence.imageChartStorage.swift.endpointtype` | Swift storage type setting: Endpoint | `""` | +| `persistence.imageChartStorage.swift.tempurlcontainerkey` | Swift storage type setting: Temp URL container key | `""` | +| `persistence.imageChartStorage.swift.tempurlmethods` | Swift storage type setting: Temp URL methods | `""` | +| `persistence.imageChartStorage.oss.accesskeyid` | OSS storage type setting: Access key ID | `""` | +| `persistence.imageChartStorage.oss.accesskeysecret` | OSS storage type setting: Access key secret name containing the token | `""` | +| `persistence.imageChartStorage.oss.region` | OSS storage type setting: Region name | `""` | +| `persistence.imageChartStorage.oss.bucket` | OSS storage type setting: Bucket name | `""` | +| `persistence.imageChartStorage.oss.endpoint` | OSS storage type setting: Endpoint | `""` | +| `persistence.imageChartStorage.oss.internal` | OSS storage type setting: Internal | `""` | +| `persistence.imageChartStorage.oss.encrypt` | OSS storage type setting: Encrypt | `""` | +| `persistence.imageChartStorage.oss.secure` | OSS storage type setting: Secure | `""` | +| `persistence.imageChartStorage.oss.chunksize` | OSS storage type setting: Chunk | `""` | +| `persistence.imageChartStorage.oss.rootdirectory` | OSS storage type setting: Directory | `""` | +| `persistence.imageChartStorage.oss.secretkey` | OSS storage type setting: Secret key | `""` | ### Tracing parameters diff --git a/bitnami/harbor/templates/_helpers.tpl b/bitnami/harbor/templates/_helpers.tpl index b232b7546ca1a7..99a6fc98c8ea15 100644 --- a/bitnami/harbor/templates/_helpers.tpl +++ b/bitnami/harbor/templates/_helpers.tpl @@ -341,6 +341,10 @@ Return whether Redis® uses password authentication or not {{- printf "%s-jobservice" (include "common.names.fullname" .) -}} {{- end -}} +{{- define "harbor.jobserviceScanData" -}} + {{- printf "%s-jobservice-scandata" (include "common.names.fullname" .) -}} +{{- end -}} + {{- define "harbor.registry" -}} {{- printf "%s-registry" (include "common.names.fullname" .) -}} {{- end -}} diff --git a/bitnami/harbor/templates/jobservice/jobservice-dpl.yaml b/bitnami/harbor/templates/jobservice/jobservice-dpl.yaml index 0c2193aa97fe7f..bf3366c98db11b 100644 --- a/bitnami/harbor/templates/jobservice/jobservice-dpl.yaml +++ b/bitnami/harbor/templates/jobservice/jobservice-dpl.yaml @@ -202,6 +202,9 @@ spec: - name: job-logs mountPath: /var/log/jobs subPath: {{ .Values.persistence.persistentVolumeClaim.jobservice.subPath }} + - name: jobservice-scandata + mountPath: /var/scandata_exports + subPath: {{ .Values.persistence.persistentVolumeClaim.jobservice.scanData.subPath }} {{- if .Values.internalTLS.enabled }} - name: internal-tls-certs mountPath: /etc/harbor/ssl/jobservice @@ -226,6 +229,13 @@ spec: {{- else }} emptyDir: {} {{- end }} + - name: jobservice-scandata + {{- if and .Values.persistence.enabled }} + persistentVolumeClaim: + claimName: {{ .Values.persistence.persistentVolumeClaim.jobservice.scanData.existingClaim | default (include "harbor.jobserviceScanData" .) }} + {{- else }} + emptyDir: {} + {{- end }} {{- if .Values.internalTLS.caBundleSecret }} {{- include "harbor.caBundleVolume" . | nindent 8 }} {{- end }} diff --git a/bitnami/harbor/templates/jobservice/jobservice-scandata-pvc.yaml b/bitnami/harbor/templates/jobservice/jobservice-scandata-pvc.yaml new file mode 100644 index 00000000000000..70592dd7aceb71 --- /dev/null +++ b/bitnami/harbor/templates/jobservice/jobservice-scandata-pvc.yaml @@ -0,0 +1,34 @@ +{{- if and .Values.persistence.enabled (not .Values.persistence.persistentVolumeClaim.jobservice.scanData.existingClaim) }} +kind: PersistentVolumeClaim +apiVersion: v1 +metadata: + name: {{ include "harbor.jobserviceScanData" . }} + namespace: {{ .Release.Namespace | quote }} + labels: {{- include "common.labels.standard" . | nindent 4 }} + {{- if .Values.commonLabels }} + {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} + {{- end }} + app.kubernetes.io/component: jobservice + annotations: + {{- if eq .Values.persistence.resourcePolicy "keep" }} + helm.sh/resource-policy: keep + {{- end }} + {{- if .Values.commonAnnotations }} + {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} + {{- end }} + {{- if .Values.persistence.persistentVolumeClaim.jobservice.scanData.annotations }} + {{- toYaml .Values.persistence.persistentVolumeClaim.jobservice.scanData.annotations | nindent 4 }} + {{- end }} +spec: + accessModes: + {{- range .Values.persistence.persistentVolumeClaim.jobservice.scanData.accessModes }} + - {{ . | quote }} + {{- end }} + resources: + requests: + storage: {{ .Values.persistence.persistentVolumeClaim.jobservice.scanData.size }} + {{- if .Values.persistence.persistentVolumeClaim.jobservice.scanData.selector }} + selector: {{- include "common.tplvalues.render" (dict "value" .Values.persistence.persistentVolumeClaim.jobservice.scanData.selector "context" $) | nindent 2 }} + {{- end }} + {{- include "common.storage.class" ( dict "persistence" .Values.persistence.persistentVolumeClaim.jobservice.scanData "global" .Values.global ) | nindent 2 }} +{{- end }} diff --git a/bitnami/harbor/values.yaml b/bitnami/harbor/values.yaml index d36cb67e499e66..816376bed31a41 100644 --- a/bitnami/harbor/values.yaml +++ b/bitnami/harbor/values.yaml @@ -462,6 +462,24 @@ persistence: size: 1Gi annotations: {} selector: {} + ## @param persistence.persistentVolumeClaim.jobservice.scanData.existingClaim Name of an existing PVC to use + ## @param persistence.persistentVolumeClaim.jobservice.scanData.storageClass PVC Storage Class for Harbor Jobservice data volume + ## Note: The default StorageClass will be used if not defined. Set it to `-` to disable dynamic provisioning + ## @param persistence.persistentVolumeClaim.jobservice.scanData.subPath The sub path used in the volume + ## @param persistence.persistentVolumeClaim.jobservice.scanData.accessModes The access mode of the volume + ## @param persistence.persistentVolumeClaim.jobservice.scanData.size The size of the volume + ## @param persistence.persistentVolumeClaim.jobservice.scanData.annotations Annotations for the PVC + ## @param persistence.persistentVolumeClaim.jobservice.scanData.selector Selector to match an existing Persistent Volume + ## + scanData: + existingClaim: "" + storageClass: "" + subPath: "" + accessModes: + - ReadWriteOnce + size: 1Gi + annotations: {} + selector: {} ## @param persistence.persistentVolumeClaim.chartmuseum.existingClaim Name of an existing PVC to use ## @param persistence.persistentVolumeClaim.chartmuseum.storageClass PVC Storage Class for Chartmuseum data volume ## Note: The default StorageClass will be used if not defined. Set it to `-` to disable dynamic provisioning