diff --git a/charts/port-k8s-exporter/Chart.yaml b/charts/port-k8s-exporter/Chart.yaml
index 7311a13..ffaeb4a 100644
--- a/charts/port-k8s-exporter/Chart.yaml
+++ b/charts/port-k8s-exporter/Chart.yaml
@@ -2,7 +2,7 @@ apiVersion: v2
name: port-k8s-exporter
description: A Helm chart for Port Kubernetes Exporter
type: application
-version: 0.2.0
+version: 0.2.1
appVersion: "0.1.14"
home: https://getport.io/
sources:
diff --git a/charts/port-k8s-exporter/README.md b/charts/port-k8s-exporter/README.md
index be89295..b87568b 100644
--- a/charts/port-k8s-exporter/README.md
+++ b/charts/port-k8s-exporter/README.md
@@ -45,46 +45,47 @@ The command removes all the Kubernetes components associated with the chart and
The following table lists the configuration parameters of the `port-k8s-exporter` chart and default values.
-| Parameter | Description | Default |
-|---------------------------------------|------------------------------------------------------------------------------------------------------|---------------------------------------|
-| `resyncInterval` | The interval in minutes before sending a sync event for all known objects | `0` |
-| `stateKey` | Unique state key to enable delete of stale Port entities (which not listed in `config.yaml` anymore) | `""` (when empty, replaced by uuid) |
-| `deleteDependents` | A flag to enable deletion of dependent Port Entities. | `false` |
-| `createMissingRelatedEntities` | A flag to enable creation of missing related Port Entities. | `false` |
-| `verbosity` | A number for the log level verbosity. Set to `-1` to print less info logs. | `0` |
-| `image.repository` | Image repository | `ghcr.io/port-labs/port-k8s-exporter` |
-| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
-| `image.tag` | Image tag | `""` |
-| `imagePullSecrets` | Image pull secrets | `[]` |
-| `nameOverride` | Chart name override | `""` |
-| `fullnameOverride` | Fully qualified app name override | `""` |
-| `secret.annotations` | Annotations for Secret object | `{}` |
-| `secret.name` | Secret object name | `""` |
-| **`secret.secrets.portClientId`** | **Port Client ID - Required** | `""` |
-| **`secret.secrets.portClientSecret`** | **Port Client Secret - Required** | `""` |
-| `configMap.annotations` | Annotations for ConfigMap object | `{}` |
-| `configMap.name` | ConfigMap object name | `""` |
-| **`configMap.config`** | **Port K8s Exporter `config.yaml` - Required** | |
-| `serviceAccount.create` | If `true`, create and use ServiceAccount, ClusterRole & ClusterRoleBinding | `true` |
-| `serviceAccount.annotations` | Annotations for ServiceAccount object | `{}` |
-| `serviceAccount.name` | ServiceAccount object name | `""` |
-| `clusterRole.annotations` | Annotations for ClusterRole object | `{}` |
-| `clusterRole.name` | ClusterRole object name | `""` |
-| `clusterRole.apiGroups` | ClusterRole apiGroups | `"{'*'}"` |
-| `clusterRole.resources` | ClusterRole resources | `"{'*'}"` |
-| `clusterRoleBinding.annotations` | Annotations for ClusterRoleBinding object | `{}` |
-| `clusterRoleBinding.name` | ClusterRoleBinding object name | `""` |
-| `podAnnotations` | Annotations to be added to the pod | `{}` |
-| `podSecurityContext` | Security context applied to the pod | `{}` |
-| `securityContext` | Security context applied to the container | `{}` |
-| `resources` | Container resource requests & limits | `{}` |
-| `nodeSelector` | NodeSelector applied to the pod | `{}` |
-| `tolerations` | Tolerations applied to the pod | `[]` |
-| `affinity` | Affinity applied to the pod | `{}` |
-| `extraEnv` | extraEnv applied to the pod | `[]` |
-| `extraObjects` | extraObjects applied to the namespace | `[]` |
-| `extraVolumes` | extraVolumes applied to the pod | `[]` |
-| `extraVolumeMounts` | extraVolumeMounts applied to the pod | `[]` |
+| Parameter | Description | Default |
+|---------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------|
+| `resyncInterval` | The interval in minutes before sending a sync event for all known objects | `0` |
+| `stateKey` | Unique state key to enable delete of stale Port entities (which not listed in `config.yaml` anymore) | `""` (when empty, replaced by uuid) |
+| `deleteDependents` | A flag to enable deletion of dependent Port Entities. | `false` |
+| `createMissingRelatedEntities` | A flag to enable creation of missing related Port Entities. | `false` |
+| `verbosity` | A number for the log level verbosity. Set to `-1` to print less info logs. | `0` |
+| `image.repository` | Image repository | `ghcr.io/port-labs/port-k8s-exporter` |
+| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
+| `image.tag` | Image tag | `""` |
+| `imagePullSecrets` | Image pull secrets | `[]` |
+| `nameOverride` | Chart name override | `""` |
+| `fullnameOverride` | Fully qualified app name override | `""` |
+| `secret.annotations` | Annotations for Secret object | `{}` |
+| `secret.name` | Secret object name | `""` |
+| `secret.useExistingSecret` | Enable this if you wish to create your own secret with credentials.
You must provide the following secrets:
`PORT_CLIENT_ID`
`PORT_CLIENT_SECRET` | `false` |
+| **`secret.secrets.portClientId`** | **Port Client ID - Required** (irrelevant if secret.useExistingSecret=true) | `""` |
+| **`secret.secrets.portClientSecret`** | **Port Client Secret - Required** (irrelevant if secret.useExistingSecret=true) | `""` |
+| `configMap.annotations` | Annotations for ConfigMap object | `{}` |
+| `configMap.name` | ConfigMap object name | `""` |
+| **`configMap.config`** | **Port K8s Exporter `config.yaml` - Required** | |
+| `serviceAccount.create` | If `true`, create and use ServiceAccount, ClusterRole & ClusterRoleBinding | `true` |
+| `serviceAccount.annotations` | Annotations for ServiceAccount object | `{}` |
+| `serviceAccount.name` | ServiceAccount object name | `""` |
+| `clusterRole.annotations` | Annotations for ClusterRole object | `{}` |
+| `clusterRole.name` | ClusterRole object name | `""` |
+| `clusterRole.apiGroups` | ClusterRole apiGroups | `"{'*'}"` |
+| `clusterRole.resources` | ClusterRole resources | `"{'*'}"` |
+| `clusterRoleBinding.annotations` | Annotations for ClusterRoleBinding object | `{}` |
+| `clusterRoleBinding.name` | ClusterRoleBinding object name | `""` |
+| `podAnnotations` | Annotations to be added to the pod | `{}` |
+| `podSecurityContext` | Security context applied to the pod | `{}` |
+| `securityContext` | Security context applied to the container | `{}` |
+| `resources` | Container resource requests & limits | `{}` |
+| `nodeSelector` | NodeSelector applied to the pod | `{}` |
+| `tolerations` | Tolerations applied to the pod | `[]` |
+| `affinity` | Affinity applied to the pod | `{}` |
+| `extraEnv` | extraEnv applied to the pod | `[]` |
+| `extraObjects` | extraObjects applied to the namespace | `[]` |
+| `extraVolumes` | extraVolumes applied to the pod | `[]` |
+| `extraVolumeMounts` | extraVolumeMounts applied to the pod | `[]` |
To override values in `helm install`, use either the `--set` flag or the `--set-file` flag to set individual values from a file.
diff --git a/charts/port-ocean/Chart.yaml b/charts/port-ocean/Chart.yaml
index 3aa0804..55eb99a 100644
--- a/charts/port-ocean/Chart.yaml
+++ b/charts/port-ocean/Chart.yaml
@@ -2,7 +2,7 @@ apiVersion: v2
name: port-ocean
description: A Helm chart for Port Ocean integrations
type: application
-version: 0.1.4
+version: 0.1.5
appVersion: "0.1.0"
home: https://getport.io/
sources:
diff --git a/charts/port-ocean/README.md b/charts/port-ocean/README.md
index 447debe..63b1785 100644
--- a/charts/port-ocean/README.md
+++ b/charts/port-ocean/README.md
@@ -46,34 +46,36 @@ The command removes all the Kubernetes components associated with the chart and
The following table lists the configuration parameters of the `port-ocean` chart and default values.
-| Parameter | Description | Default |
-|---------------------------------------|------------------------------------------------------------------------------------------------------|---------------------------------------|
-| `nameOverride` | Chart name override. | `""` |
-| `fullnameOverride` | Fully qualified app name override. | `""` |
-| `port.clientId` | Type: secret
Key: PORT_CLIENT_ID
Value: "".
Client ID for Port API authentication. | |
-| `port.clientSecret` | Type: secret
Key: PORT_CLIENT_SECRET
Value: "".
Client secret for Port API authentication. | |
-| `port.baseUrl` | Base URL for the Port API. | `https://api.getport.io/v1` |
-| `initializePortResources` | When set to true, creates a default JQ mapping and the relevant blueprints | `true` |
-| `scheduledResyncInterval` | The number in minutes to reschedule and poll data from the 3rd party system | `null` |
-| `podAnnotations` | Annotations to be added to the pod. | `{}` |
-| `podSecurityContext` | Security context applied to the pod. | `{}` |
-| `securityContext` | Security context applied to the container. | `{}` |
-| `resources` | Container resource requests and limits. | `{}` |
-| `nodeSelector` | NodeSelector applied to the pod. | `{}` |
-| `tolerations` | Tolerations applied to the pod. | `[]` |
-| `affinity` | Affinity applied to the pod. | `{}` |
-| `service.enabled` | Specifies whether the service is enabled or not. | `true` |
-| `service.type` | Service type for the Port application. | `ClusterIP` |
-| `service.port` | Port number for the service. | `8000` |
-| `ingress.enabled` | Specifies whether the ingress is enabled or not. | `false` |
-| `ingress.annotations` | Annotations for the ingress object. | `{}` |
-| `ingress.host` | Hostname for the ingress. | `null` |
-| `integration.identifier` | Identifier for the integration. | `""` |
-| `integration.version` | Version of the integration. | `""` |
-| `integration.type` | Type of the integration. i.e (`pager-duty`) | `""` |
-| `integration.config` | Configuration for the integration. | `{}` |
-| `integration.secrets` | secret for the integration. | `{}` |
-| `eventListener.type` | Type of the event listener for the integration, one of the following "WEBHOOK" / "KAFKA" / "SAMPLE" | `"KAFKA"` |
+| Parameter | Description | Default |
+|--------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------|
+| `nameOverride` | Chart name override. | `""` |
+| `fullnameOverride` | Fully qualified app name override. | `""` |
+| `port.clientId` | Client ID for Port API authentication (irrelevant if secret.useExistingSecret=true). | |
+| `port.clientSecret` | Client secret for Port API authentication (irrelevant if secret.useExistingSecret=true). | |
+| `port.baseUrl` | Base URL for the Port API. | `https://api.getport.io/v1` |
+| `initializePortResources` | When set to true, creates a default JQ mapping and the relevant blueprints | `true` |
+| `scheduledResyncInterval` | The number in minutes to reschedule and poll data from the 3rd party system | `null` |
+| `podAnnotations` | Annotations to be added to the pod. | `{}` |
+| `podSecurityContext` | Security context applied to the pod. | `{}` |
+| `securityContext` | Security context applied to the container. | `{}` |
+| `resources` | Container resource requests and limits. | `{}` |
+| `nodeSelector` | NodeSelector applied to the pod. | `{}` |
+| `tolerations` | Tolerations applied to the pod. | `[]` |
+| `affinity` | Affinity applied to the pod. | `{}` |
+| `secret.name` | Secret object name | `""` |
+| `secret.useExistingSecret` | Enable this if you wish to create your own secret with credentials.
You must provide the following secrets:
`OCEAN__PORT__CLIENT_ID`
`OCEAN__PORT__CLIENT_SECRET`
Moreover, you need to provide sensitive configurations (required ones are **MUST**) for the selected integration:
Secret key format:`OCEAN__INTEGRATION__CONFIG__{{ $configName \| snakecase \| upper }}`
Example (if config name is `clusterConfMapping`): `OCEAN__INTEGRATION__CONFIG__CLUSTER_CONF_MAPPING` | `false` |
+| `service.enabled` | Specifies whether the service is enabled or not. | `true` |
+| `service.type` | Service type for the Port application. | `ClusterIP` |
+| `service.port` | Port number for the service. | `8000` |
+| `ingress.enabled` | Specifies whether the ingress is enabled or not. | `false` |
+| `ingress.annotations` | Annotations for the ingress object. | `{}` |
+| `ingress.host` | Hostname for the ingress. | `null` |
+| `integration.identifier` | Identifier for the integration. | `""` |
+| `integration.version` | Version of the integration. | `""` |
+| `integration.type` | Type of the integration. i.e (`pager-duty`) | `""` |
+| `integration.config` | Configuration for the integration. | `{}` |
+| `integration.secrets` | Secrets for the integration (irrelevant if secret.useExistingSecret=true). | `{}` |
+| `eventListener.type` | Type of the event listener for the integration, one of the following "WEBHOOK" / "KAFKA" / "SAMPLE" | `"KAFKA"` |
To override values in `helm install`, use either the `--set` flag.
diff --git a/charts/port-ocean/templates/_helpers.tpl b/charts/port-ocean/templates/_helpers.tpl
index c2e6a7b..185aa95 100644
--- a/charts/port-ocean/templates/_helpers.tpl
+++ b/charts/port-ocean/templates/_helpers.tpl
@@ -70,7 +70,7 @@ Get secret name per integration
*/}}
{{- define "port-ocean.secretName" -}}
{{ $prefix:= include "port-ocean.metadataNamePrefix" . }}
-{{- printf "%s-secret" $prefix }}
+{{- default (printf "%s-secret" $prefix) .Values.secret.name }}
{{- end }}
{{/*
diff --git a/charts/port-ocean/templates/secret.yaml b/charts/port-ocean/templates/secret.yaml
index 191a73d..8241b66 100644
--- a/charts/port-ocean/templates/secret.yaml
+++ b/charts/port-ocean/templates/secret.yaml
@@ -1,3 +1,4 @@
+{{- if eq .Values.secret.useExistingSecret false }}
apiVersion: v1
kind: Secret
metadata:
@@ -14,3 +15,4 @@ data:
{{ if kindIs "map" $value }}{{ $value | toJson | b64enc | quote }}{{ else }}{{ $value | b64enc | quote }}{{ end }}
{{- end }}
{{- end }}
+{{- end }}
diff --git a/charts/port-ocean/values.yaml b/charts/port-ocean/values.yaml
index 87e15ea..e040af0 100644
--- a/charts/port-ocean/values.yaml
+++ b/charts/port-ocean/values.yaml
@@ -26,6 +26,10 @@ initializePortResources: true
scheduledResyncInterval: null
+secret:
+ name: ""
+ useExistingSecret: false
+
service:
enabled: true
type: ClusterIP