From 31f065526dc74e82ae0ed03947b8ae9b0c9467b2 Mon Sep 17 00:00:00 2001 From: Jarvis Date: Tue, 7 Apr 2026 21:52:11 +0800 Subject: [PATCH] chore: bump api7 and gateway chart versions for v3.9.8 - Bump api7 chart version: 0.17.48 -> 0.17.49 - Bump gateway chart version: 0.2.58 -> 0.2.59 - Update appVersion to 3.9.8 for both charts - Update all image tags to v3.9.8 - Add file-server component (disabled by default) - Add vault role_type config option to dashboard, dp_manager and developer_portal --- charts/api7/Chart.yaml | 4 +- charts/api7/README.md | 25 +++++- .../api7/templates/file-server-configmap.yaml | 10 +++ charts/api7/templates/file-server-deploy.yaml | 87 +++++++++++++++++++ .../api7/templates/file-server-service.yaml | 19 ++++ charts/api7/values.yaml | 38 +++++++- charts/gateway/Chart.yaml | 4 +- charts/gateway/README.md | 2 +- charts/gateway/values.yaml | 2 +- 9 files changed, 178 insertions(+), 13 deletions(-) create mode 100644 charts/api7/templates/file-server-configmap.yaml create mode 100644 charts/api7/templates/file-server-deploy.yaml create mode 100644 charts/api7/templates/file-server-service.yaml diff --git a/charts/api7/Chart.yaml b/charts/api7/Chart.yaml index 80fe640..1ab4359 100644 --- a/charts/api7/Chart.yaml +++ b/charts/api7/Chart.yaml @@ -15,13 +15,13 @@ type: application # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. # Versions are expected to follow Semantic Versioning (https://semver.org/) -version: 0.17.48 +version: 0.17.49 # This is the version number of the application being deployed. This version number should be # incremented each time you make changes to the application. Versions are not expected to # follow Semantic Versioning. They should reflect the version the application is using. # It is recommended to use it with quotes. -appVersion: "3.9.7" +appVersion: "3.9.8" maintainers: - name: API7 diff --git a/charts/api7/README.md b/charts/api7/README.md index 0cf64e4..537fa7b 100644 --- a/charts/api7/README.md +++ b/charts/api7/README.md @@ -1,6 +1,6 @@ # api7ee3 -![Version: 0.17.48](https://img.shields.io/badge/Version-0.17.48-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 3.9.7](https://img.shields.io/badge/AppVersion-3.9.7-informational?style=flat-square) +![Version: 0.17.49](https://img.shields.io/badge/Version-0.17.49-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 3.9.8](https://img.shields.io/badge/AppVersion-3.9.8-informational?style=flat-square) A Helm chart for Kubernetes @@ -28,7 +28,7 @@ A Helm chart for Kubernetes | dashboard.extraVolumes | list | `[]` | | | dashboard.image.pullPolicy | string | `"Always"` | | | dashboard.image.repository | string | `"api7/api7-ee-3-integrated"` | | -| dashboard.image.tag | string | `"v3.9.7"` | | +| dashboard.image.tag | string | `"v3.9.8"` | | | dashboard.keyCertSecret | string | `""` | | | dashboard.livenessProbe.failureThreshold | int | `30` | | | dashboard.livenessProbe.initialDelaySeconds | int | `180` | | @@ -113,7 +113,7 @@ A Helm chart for Kubernetes | developer_portal.extraVolumes | list | `[]` | | | developer_portal.image.pullPolicy | string | `"Always"` | | | developer_portal.image.repository | string | `"api7/api7-ee-developer-portal"` | | -| developer_portal.image.tag | string | `"v3.9.7"` | | +| developer_portal.image.tag | string | `"v3.9.8"` | | | developer_portal.keyCertSecret | string | `""` | | | developer_portal.livenessProbe.failureThreshold | int | `10` | | | developer_portal.livenessProbe.initialDelaySeconds | int | `60` | | @@ -158,7 +158,7 @@ A Helm chart for Kubernetes | dp_manager.extraVolumes | list | `[]` | | | dp_manager.image.pullPolicy | string | `"Always"` | | | dp_manager.image.repository | string | `"api7/api7-ee-dp-manager"` | | -| dp_manager.image.tag | string | `"v3.9.7"` | | +| dp_manager.image.tag | string | `"v3.9.8"` | | | dp_manager.livenessProbe.failureThreshold | int | `10` | | | dp_manager.livenessProbe.initialDelaySeconds | int | `60` | | | dp_manager.livenessProbe.periodSeconds | int | `3` | | @@ -221,6 +221,23 @@ A Helm chart for Kubernetes | dp_manager_service.tlsNodePort | int | `nil` | The nodePort for HTTPS service, only used if dp_manager_service.type is NodePort. If not set, a random port will be assigned by Kubernetes. | | dp_manager_service.tlsPort | int | `7943` | | | dp_manager_service.type | string | `"ClusterIP"` | | +| file_server.enabled | bool | `false` | | +| file_server.image.pullPolicy | string | `"IfNotPresent"` | | +| file_server.image.repository | string | `"api7/api7-ee-file-server"` | | +| file_server.image.tag | string | `"dev"` | | +| file_server.livenessProbe.failureThreshold | int | `10` | | +| file_server.livenessProbe.initialDelaySeconds | int | `60` | | +| file_server.livenessProbe.periodSeconds | int | `3` | | +| file_server.readinessProbe.failureThreshold | int | `3` | | +| file_server.readinessProbe.initialDelaySeconds | int | `10` | | +| file_server.readinessProbe.periodSeconds | int | `3` | | +| file_server.replicaCount | int | `1` | | +| file_server_configuration.database.dsn | string | `"postgres://api7ee:changeme@api7-postgresql:5432/api7ee"` | | +| file_server_configuration.file_server.listen | string | `"0.0.0.0:8080"` | | +| file_server_configuration.log.level | string | `"warn"` | | +| file_server_configuration.log.output | string | `"stderr"` | | +| file_server_service.port | int | `8080` | | +| file_server_service.type | string | `"ClusterIP"` | | | fullnameOverride | string | `""` | | | global.storageClass | string | `""` | | | imagePullSecret | string | `""` | | diff --git a/charts/api7/templates/file-server-configmap.yaml b/charts/api7/templates/file-server-configmap.yaml new file mode 100644 index 0000000..b94efe4 --- /dev/null +++ b/charts/api7/templates/file-server-configmap.yaml @@ -0,0 +1,10 @@ +{{- if .Values.file_server.enabled }} +kind: ConfigMap +apiVersion: v1 +metadata: + name: {{ include "api7ee3.fullname" . }}-file-server-config + namespace: {{ .Release.Namespace | quote }} +data: + config.yaml: | + {{- toYaml .Values.file_server_configuration | nindent 4 }} +{{- end }} diff --git a/charts/api7/templates/file-server-deploy.yaml b/charts/api7/templates/file-server-deploy.yaml new file mode 100644 index 0000000..78e8741 --- /dev/null +++ b/charts/api7/templates/file-server-deploy.yaml @@ -0,0 +1,87 @@ +{{- if .Values.file_server.enabled }} +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ include "api7ee3.fullname" . }}-file-server + namespace: {{ .Release.Namespace | quote }} + labels: + {{- include "api7ee3.labels" . | nindent 4 }} +spec: + replicas: {{ .Values.file_server.replicaCount }} + selector: + matchLabels: + {{- include "api7ee3.selectorLabels" . | nindent 6 }} + app.kubernetes.io/component: file-server + template: + metadata: + annotations: + checksum/config: {{ include (print $.Template.BasePath "/file-server-configmap.yaml") . | sha256sum }} + {{- with .Values.podAnnotations }} + {{- toYaml . | nindent 8 }} + {{- end }} + labels: + {{- include "api7ee3.selectorLabels" . | nindent 8 }} + app.kubernetes.io/component: file-server + spec: + {{- if .Values.imagePullSecret }} + imagePullSecrets: + - name: {{ .Values.imagePullSecret }} + {{- end }} + serviceAccountName: {{ include "api7ee3.serviceAccountName" . }} + securityContext: + {{- toYaml .Values.podSecurityContext | nindent 8 }} + volumes: + - name: config + configMap: + name: {{ include "api7ee3.fullname" . }}-file-server-config + containers: + - name: file-server + securityContext: + {{- toYaml .Values.securityContext | nindent 12 }} + image: "{{ .Values.file_server.image.repository }}:{{ .Values.file_server.image.tag | default .Chart.AppVersion }}" + imagePullPolicy: {{ .Values.file_server.image.pullPolicy }} + command: + - /usr/local/api7/api7-ee-file-server + args: + - -c + - /usr/local/api7/conf/config.yaml + ports: + - name: http + containerPort: 8080 + protocol: TCP + livenessProbe: + httpGet: + path: /healthz + port: http + initialDelaySeconds: {{ .Values.file_server.livenessProbe.initialDelaySeconds }} + periodSeconds: {{ .Values.file_server.livenessProbe.periodSeconds }} + failureThreshold: {{ .Values.file_server.livenessProbe.failureThreshold }} + readinessProbe: + httpGet: + path: /healthz + port: http + initialDelaySeconds: {{ .Values.file_server.readinessProbe.initialDelaySeconds }} + periodSeconds: {{ .Values.file_server.readinessProbe.periodSeconds }} + failureThreshold: {{ .Values.file_server.readinessProbe.failureThreshold }} + volumeMounts: + - name: config + mountPath: /usr/local/api7/conf + resources: + {{- if .Values.file_server.resources }} + {{- toYaml .Values.file_server.resources | nindent 12 }} + {{- else }} + {{- toYaml .Values.resources | nindent 12 }} + {{- end }} + {{- with .Values.nodeSelector }} + nodeSelector: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.affinity }} + affinity: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.tolerations }} + tolerations: + {{- toYaml . | nindent 8 }} + {{- end }} +{{- end }} diff --git a/charts/api7/templates/file-server-service.yaml b/charts/api7/templates/file-server-service.yaml new file mode 100644 index 0000000..55e4c43 --- /dev/null +++ b/charts/api7/templates/file-server-service.yaml @@ -0,0 +1,19 @@ +{{- if .Values.file_server.enabled }} +apiVersion: v1 +kind: Service +metadata: + name: {{ include "api7ee3.fullname" . }}-file-server + namespace: {{ .Release.Namespace | quote }} + labels: + {{- include "api7ee3.labels" . | nindent 4 }} +spec: + type: {{ .Values.file_server_service.type }} + ports: + - port: {{ .Values.file_server_service.port }} + targetPort: http + protocol: TCP + name: http + selector: + {{- include "api7ee3.selectorLabels" . | nindent 4 }} + app.kubernetes.io/component: file-server +{{- end }} diff --git a/charts/api7/values.yaml b/charts/api7/values.yaml index 62ce8b2..3c40ba8 100644 --- a/charts/api7/values.yaml +++ b/charts/api7/values.yaml @@ -18,7 +18,7 @@ dashboard: repository: api7/api7-ee-3-integrated pullPolicy: Always # Overrides the image tag whose default is the chart appVersion. - tag: "v3.9.7" + tag: "v3.9.8" # Resources of the deployment. # It has a higher priority than the common resources configuration: # when this field is configured, it is used first in the deployment, @@ -54,7 +54,7 @@ dp_manager: repository: api7/api7-ee-dp-manager pullPolicy: Always # Overrides the image tag whose default is the chart appVersion. - tag: "v3.9.7" + tag: "v3.9.8" # Resources of the deployment. # It has a higher priority than the common resources configuration: # when this field is configured, it is used first in the deployment, @@ -84,6 +84,22 @@ dp_manager: periodSeconds: 3 failureThreshold: 3 +file_server: + enabled: false + replicaCount: 1 + image: + repository: api7/api7-ee-file-server + pullPolicy: IfNotPresent + tag: "dev" + livenessProbe: + initialDelaySeconds: 60 + periodSeconds: 3 + failureThreshold: 10 + readinessProbe: + initialDelaySeconds: 10 + periodSeconds: 3 + failureThreshold: 3 + developer_portal: replicaCount: 1 # Specifies the name of Secret for developer portal TLS configuration, and files store under /app/certs directory @@ -92,7 +108,7 @@ developer_portal: repository: api7/api7-ee-developer-portal pullPolicy: Always # Overrides the image tag whose default is the chart appVersion. - tag: "v3.9.7" + tag: "v3.9.8" extraEnvVars: [] extraVolumes: [] @@ -198,6 +214,10 @@ dp_manager_service: # hosts: # - dp-manager.local +file_server_service: + type: ClusterIP + port: 8080 + developer_portal_service: type: ClusterIP annotations: {} @@ -356,6 +376,7 @@ dashboard_configuration: # database: # mount_path: "database" # role: "api7ee" + # role_type: "dynamic" # "dynamic" (default) or "static" # tls: # ca_cert: "" # insecure: false @@ -474,6 +495,7 @@ dp_manager_configuration: # database: # mount_path: "database" # role: "api7ee" + # role_type: "dynamic" # "dynamic" (default) or "static" # tls: # ca_cert: "" # insecure: false @@ -552,6 +574,16 @@ developer_portal_configuration: # database: # mount_path: "database" # role: "api7ee" + # role_type: "dynamic" # "dynamic" (default) or "static" # tls: # ca_cert: "" # insecure: false + +file_server_configuration: + file_server: + listen: "0.0.0.0:8080" + log: + level: warn + output: stderr + database: + dsn: "postgres://api7ee:changeme@api7-postgresql:5432/api7ee" diff --git a/charts/gateway/Chart.yaml b/charts/gateway/Chart.yaml index aa30aec..99b55f7 100644 --- a/charts/gateway/Chart.yaml +++ b/charts/gateway/Chart.yaml @@ -14,12 +14,12 @@ type: application # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. # Versions are expected to follow Semantic Versioning (https://semver.org/) -version: 0.2.58 +version: 0.2.59 # This is the version number of the application being deployed. This version number should be # incremented each time you make changes to the application. Versions are not expected to # follow Semantic Versioning. They should reflect the version the application is using. -appVersion: "3.9.7" +appVersion: "3.9.8" maintainers: - name: API7 diff --git a/charts/gateway/README.md b/charts/gateway/README.md index b792dd0..c8028f7 100644 --- a/charts/gateway/README.md +++ b/charts/gateway/README.md @@ -104,7 +104,7 @@ The command removes all the Kubernetes components associated with the chart and | apisix.httpRouter | string | `"radixtree_host_uri"` | Defines how apisix handles routing: - radixtree_uri: match route by uri(base on radixtree) - radixtree_host_uri: match route by host + uri(base on radixtree) - radixtree_uri_with_parameter: match route by uri with parameters | | apisix.image.pullPolicy | string | `"Always"` | API7 Gateway image pull policy | | apisix.image.repository | string | `"api7/api7-ee-3-gateway"` | API7 Gateway image repository | -| apisix.image.tag | string | `"3.9.7"` | API7 Gateway image tag Overrides the image tag whose default is the chart appVersion. | +| apisix.image.tag | string | `"3.9.8"` | API7 Gateway image tag Overrides the image tag whose default is the chart appVersion. | | apisix.kind | string | `"Deployment"` | Use a `DaemonSet` or `Deployment` | | apisix.lru | object | `{"secret":{"count":512,"neg_count":512,"neg_ttl":60,"ttl":300}}` | fine tune the parameters of LRU cache for some features like secret | | apisix.lru.secret.neg_ttl | int | `60` | in seconds | diff --git a/charts/gateway/values.yaml b/charts/gateway/values.yaml index c9055be..3c35eaf 100644 --- a/charts/gateway/values.yaml +++ b/charts/gateway/values.yaml @@ -142,7 +142,7 @@ apisix: pullPolicy: Always # -- API7 Gateway image tag # Overrides the image tag whose default is the chart appVersion. - tag: 3.9.7 + tag: 3.9.8 # -- Use a `DaemonSet` or `Deployment` kind: Deployment