Skip to content

Commit df34b18

Browse files
committed
updating helm charts for neo v3.x
1 parent fa40e31 commit df34b18

File tree

6 files changed

+69
-40
lines changed

6 files changed

+69
-40
lines changed
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
apiVersion: v2
22
name: netapp-connector
3-
version: 26.10.4
4-
description: NetApp Neo v2.x for Microsoft 365 Copilot Connector Helm Chart
5-
appVersion: "2.2.5"
3+
version: 26.11.1
4+
description: NetApp Neo v3.x for Microsoft 365 Copilot Connector Helm Chart
5+
appVersion: "3.0.4"
66
type: application

charts/netapp-copilot-connector/README.md

Lines changed: 49 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,21 @@
11
# NetApp Neo for Microsoft 365 Copilot - Helm Chart
22

3-
This Helm chart deploys NetApp Neo for Microsoft 365 Copilot on a Kubernetes cluster using a `StatefulSet` for stable, persistent storage.
3+
This Helm chart deploys NetApp Neo for Microsoft 365 Copilot on a Kubernetes cluster using a `Deployment` for scalable application management.
44

55
## Overview
66

77
The chart bootstraps a deployment of NetApp Neo, which includes the following Kubernetes resources:
8-
- **StatefulSet**: Manages the connector pod, ensuring stable network identity and storage.
9-
- **PersistentVolumeClaim**: Provides persistent storage for connector data (e.g., database).
8+
- **Deployment**: Manages the connector pod with configurable replicas and rolling updates.
109
- **Service**: Exposes the connector within the cluster on a stable endpoint.
11-
- **Secret**: Securely stores sensitive credentials like Microsoft Graph API keys and the NetApp license.
10+
- **Secret**: Securely stores sensitive credentials like Microsoft Graph API keys, NetApp license, and database connection details.
1211
- **ConfigMap**: Manages non-sensitive environment variables and configuration.
1312
- **Ingress**: (Optional) Manages external access to the connector service.
1413

1514
## Prerequisites
1615

1716
- Kubernetes cluster (v1.19+ recommended)
1817
- Helm package manager (v3+)
19-
- A default StorageClass configured in your cluster for PersistentVolume provisioning.
18+
- External database (PostgreSQL or MySQL) for connector data storage
2019

2120
## Installation Guide
2221

@@ -37,13 +36,15 @@ There are two primary methods for installing the chart: using command-line flags
3736
For quick tests, you can pass parameters directly using the `--set` flag.
3837

3938
```sh
40-
helm install netapp-connector innovation-labs/netapp-connector --version 26.10.4 \
39+
helm install netapp-connector innovation-labs/netapp-connector --version 26.11.1 \
4140
--namespace netapp-connector \
4241
--create-namespace \
4342
--set main.credentials.MS_GRAPH_CLIENT_ID="<your-graph-client-id>" \
4443
--set main.credentials.MS_GRAPH_CLIENT_SECRET="<your-graph-client-secret>" \
4544
--set main.credentials.MS_GRAPH_TENANT_ID="<your-graph-tenant-id>" \
46-
--set main.credentials.NETAPP_CONNECTOR_LICENSE="<your-license-key>"
45+
--set main.credentials.NETAPP_CONNECTOR_LICENSE="<your-license-key>" \
46+
--set main.env.DB_TYPE=postgres" \
47+
--set main.env.DATABASE_URL="postgresql://user:password@hostname:5432/database"
4748
```
4849
4950
#### Method 2: Using a Custom Values File (Recommended for Production)
@@ -62,6 +63,11 @@ For production environments, it is highly recommended to use a custom `values.ya
6263
MS_GRAPH_TENANT_ID: "<your-graph-tenant-id>"
6364
NETAPP_CONNECTOR_LICENSE: "<your-license-key>"
6465
66+
# --- Database Configuration ---
67+
env:
68+
DB_TYPE: "postgres" # or "mysql"
69+
DATABASE_URL: "postgresql://user:password@hostname:5432/database"
70+
6571
# --- Optional Ingress Configuration ---
6672
ingress:
6773
enabled: true
@@ -79,14 +85,35 @@ For production environments, it is highly recommended to use a custom `values.ya
7985
2. Install the chart using your custom values file:
8086
8187
```sh
82-
helm install netapp-connector innovation-labs/netapp-connector --version 26.10.3 \
88+
helm install netapp-connector innovation-labs/netapp-connector --version 26.11.1 \
8389
--namespace netapp-connector \
8490
--create-namespace \
8591
-f my-values.yaml
8692
```
8793
8894
> [!IMPORTANT]
89-
> The connector will not start correctly without the four mandatory `main.credentials` values being set, regardless of the installation method.
95+
> The connector requires the following mandatory values to start correctly:
96+
> - `main.credentials.MS_GRAPH_CLIENT_ID`
97+
> - `main.credentials.MS_GRAPH_CLIENT_SECRET`
98+
> - `main.credentials.MS_GRAPH_TENANT_ID`
99+
> - `main.credentials.NETAPP_CONNECTOR_LICENSE`
100+
> - `main.env.DATABASE_URL` (connection string to your external database)
101+
102+
## Database Setup
103+
104+
The connector requires an external database (PostgreSQL or MySQL) for storing connector data. Ensure your database is accessible from the Kubernetes cluster and configure the connection string in the `DATABASE_URL` parameter.
105+
106+
### PostgreSQL Example:
107+
108+
```
109+
postgresql://username:password@hostname:5432/database_name
110+
```
111+
112+
### MySQL Example:
113+
114+
```
115+
mysql://username:password@hostname:3306/database_name
116+
```
90117
91118
## Upgrading the Chart
92119
@@ -96,11 +123,11 @@ To upgrade an existing release, use `helm upgrade`. The `--reuse-values` flag is
96123
# 1. Update your local chart repository
97124
helm repo update
98125
99-
# 2. Upgrade the release to a new version (e.g., 2.2.5)
126+
# 2. Upgrade the release to a new version (e.g., 3.0.4)
100127
helm upgrade netapp-connector innovation-labs/netapp-connector \
101128
--namespace netapp-connector \
102129
--reuse-values \
103-
--set main.image.tag="2.2.5"
130+
--set main.image.tag="3.0.4"
104131
```
105132
106133
## Uninstallation
@@ -112,7 +139,7 @@ helm uninstall netapp-connector --namespace netapp-connector
112139
```
113140
114141
> [!NOTE]
115-
> This command removes the StatefulSet, Service, and other resources but **does not delete the PersistentVolumeClaim (PVC)**. Your data will be preserved. To permanently delete all data, you must manually delete the PVC.
142+
> This command removes the Deployment, Service, and other Kubernetes resources. Your external database data will remain intact as it's managed separately from the Helm chart.
116143
117144
## Configuration Parameters
118145
@@ -121,7 +148,7 @@ The following table lists the configurable parameters of NetApp Neo chart and th
121148
| Parameter | Description | Default |
122149
|-----------|-------------|---------|
123150
| `main.name` | The base name for all created resources. | `netapp-connector-main` |
124-
| `main.replicaCount` | Number of connector pods to run. Only 1 is supported. | `1` |
151+
| `main.replicaCount` | Number of connector pods to run. | `1` |
125152
| `main.image.repository` | The container image repository. | `ghcr.io/netapp/netapp-copilot-connector` |
126153
| `main.image.tag` | The container image tag. If empty, defaults to the chart's `appVersion`. | `""` |
127154
| `main.image.pullPolicy` | The image pull policy. | `Always` |
@@ -133,11 +160,15 @@ The following table lists the configurable parameters of NetApp Neo chart and th
133160
| `main.ingress.pathType` | The path type for the Ingress rule (`Prefix`, `Exact`, `ImplementationSpecific`). | `Prefix` |
134161
| `main.ingress.className` | The `ingressClassName` to associate with the Ingress. | `""` |
135162
| `main.ingress.tls` | Ingress TLS configuration (list of objects with `secretName` and `hosts`). | `[]` |
136-
| `main.persistence.enabled` | If true, create a `PersistentVolumeClaim`. | `true` |
137-
| `main.persistence.accessMode` | The access mode for the PVC. | `ReadWriteOnce` |
138-
| `main.persistence.size` | The size of the persistent volume. | `1Gi` |
139-
| `main.persistence.mountPath` | The path inside the container where the volume is mounted. | `/app/data` |
140-
| `main.env.*` | Non-sensitive environment variables. See `values.yaml` for all options. | (various) |
163+
| `main.env.PORT` | The port the application runs on. | `8080` |
164+
| `main.env.DB_TYPE` | Database type (`postgres` or `mysql`). | `postgres` |
165+
| `main.env.DATABASE_URL` | Database connection URL. **Must be provided by the user.** | `postgresql://postgres:neodbsecret@neodb:5432/neoconnectortest` |
166+
| `main.env.HTTPS_PROXY` | HTTPS proxy configuration. | `""` |
167+
| `main.env.PROXY_USERNAME` | Proxy username if authentication is required. | `""` |
168+
| `main.env.PROXY_PASSWORD` | Proxy password if authentication is required. | `""` |
169+
| `main.env.GRAPH_VERIFY_SSL` | Whether to verify SSL certificates for Microsoft Graph calls. | `""` |
170+
| `main.env.SSL_CERT_FILE` | Custom SSL certificate file content. | `""` |
171+
| `main.env.GRAPH_TIMEOUT` | Timeout for Microsoft Graph API calls. | `""` |
141172
| `main.credentials.*` | Sensitive credentials stored in a Secret. **Must be provided by the user.** | (placeholders) |
142173
143174
---

charts/netapp-copilot-connector/templates/statefulset.yaml renamed to charts/netapp-copilot-connector/templates/deployment.yaml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
apiVersion: apps/v1
2-
kind: StatefulSet
2+
kind: Deployment
33
metadata:
44
name: {{ .Values.main.name }}
55
namespace: {{ .Release.Namespace }}
@@ -102,14 +102,22 @@ spec:
102102
secretKeyRef:
103103
name: {{ .Values.main.name }}
104104
key: NETAPP_CONNECTOR_LICENSE
105+
- name: DB_TYPE
106+
valueFrom:
107+
secretKeyRef:
108+
name: {{ .Values.main.name }}
109+
key: DB_TYPE
110+
- name: DATABASE_URL
111+
valueFrom:
112+
secretKeyRef:
113+
name: {{ .Values.main.name }}
114+
key: DATABASE_URL
105115
securityContext:
106116
capabilities:
107117
add: ["SYS_ADMIN", "DAC_READ_SEARCH", "DAC_OVERRIDE"]
108118
allowPrivilegeEscalation: true
109119
privileged: true
110120
volumeMounts:
111-
- name: data
112-
mountPath: {{ .Values.main.persistence.mountPath }}
113121
{{- if .Values.main.env.SSL_CERT_FILE }}
114122
- name: ssl-cert
115123
mountPath: /app/ssl_certs/custom_ca_bundle.pem
@@ -121,12 +129,4 @@ spec:
121129
secret:
122130
secretName: {{ .Values.main.name }}-ssl-cert
123131
{{- end }}
124-
restartPolicy: Always
125-
volumeClaimTemplates:
126-
- metadata:
127-
name: data
128-
spec:
129-
accessModes: [ {{ .Values.main.persistence.accessMode }} ]
130-
resources:
131-
requests:
132-
storage: {{ .Values.main.persistence.size }}
132+
restartPolicy: Always

charts/netapp-copilot-connector/templates/secret.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,6 @@ stringData:
1111
MS_GRAPH_CLIENT_ID: {{ .Values.main.credentials.MS_GRAPH_CLIENT_ID | quote }}
1212
MS_GRAPH_CLIENT_SECRET: {{ .Values.main.credentials.MS_GRAPH_CLIENT_SECRET | quote }}
1313
MS_GRAPH_TENANT_ID: {{ .Values.main.credentials.MS_GRAPH_TENANT_ID | quote }}
14-
NETAPP_CONNECTOR_LICENSE: {{ .Values.main.credentials.NETAPP_CONNECTOR_LICENSE | quote }}
14+
NETAPP_CONNECTOR_LICENSE: {{ .Values.main.credentials.NETAPP_CONNECTOR_LICENSE | quote }}
15+
DB_TYPE: {{ .Values.main.env.DB_TYPE | quote }}
16+
DATABASE_URL: {{ .Values.main.env.DATABASE_URL | quote }}

charts/netapp-copilot-connector/templates/ssl-cert-secret.yml renamed to charts/netapp-copilot-connector/templates/ssl-cert-secret.yaml

File renamed without changes.

charts/netapp-copilot-connector/values.yaml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,19 +22,15 @@ main:
2222
env:
2323
PORT: 8080
2424
PYTHONUNBUFFERED: 1
25-
DB_PATH: "data/database.db"
2625
HTTPS_PROXY: ""
2726
PROXY_USERNAME: ""
2827
PROXY_PASSWORD: ""
2928
GRAPH_VERIFY_SSL: ""
3029
GRAPH_TIMEOUT: ""
3130
SSL_CERT_FILE: ""
3231
SSL_CERT_FILE_PATH: ""
33-
persistence:
34-
enabled: true
35-
accessMode: ReadWriteOnce
36-
size: 1Gi
37-
mountPath: /app/data
32+
DB_TYPE: postgres # or mysql
33+
DATABASE_URL: postgresql://postgres:neodbsecret@neodb:5432/neoconnectortest # or mysql://user:password@localhost:3306/netapp_connector
3834
credentials:
3935
MS_GRAPH_CONNECTOR_ID: "netappconnector"
4036
MS_GRAPH_CONNECTOR_DESCRIPTION: "The connector contains information contained in the on premises or on-prem file share server. This contains documents and files. These are of type DOC, DOCM, DOCX, DOT, DOTX, EML, GIF, HTML, JPEG, JPG, MHT, MHTML, MSG, NWS, OBD, OBT, ODP, ODS, ODT, ONE, PDF, PNG, POT, PPS, PPT, PPTM, PPTX, TXT, XLB, XLC, XLSB, XLS, XLSX, XLT, XLXM, XML, XPS, and ZIP."

0 commit comments

Comments
 (0)