chore: release new chart for APISIX v3.x (#445)
* release new chart for APISIX v3.x
* chore: remove isBeta logic
Signed-off-by: Jintao Zhang <zhangjintao9020@gmail.com>
diff --git a/README.md b/README.md
index 663bded..6442de4 100644
--- a/README.md
+++ b/README.md
@@ -26,3 +26,10 @@
- [Apache APISIX Ingress Controller Helm Chart](./docs/en/latest/apisix-ingress-controller.md)
Currently, APISIX Ingress Controller automatically manipulates some APISIX resources, which is not very compatible with APISIX Dashboard. In addition, users should not modify resources labeled `managed-by: apisix-ingress-controllers` via APISIX Dashboard.
+
+## Compatibility matrix
+
+| | APISIX | APISIX Ingress | APISIX Dashboard |
+| :--------: | :----: | :------------: | :--------------: |
+| Chart v1.x | v3.x | v1.x | - |
+| Chart v0.x | v2.x | v1.x | v2.x |
diff --git a/charts/apisix/Chart.lock b/charts/apisix/Chart.lock
index 14c7061..fede7ac 100644
--- a/charts/apisix/Chart.lock
+++ b/charts/apisix/Chart.lock
@@ -2,11 +2,8 @@
- name: etcd
repository: https://charts.bitnami.com/bitnami
version: 8.3.4
-- name: apisix-dashboard
- repository: https://charts.apiseven.com
- version: 0.6.1
- name: apisix-ingress-controller
repository: https://charts.apiseven.com
version: 0.11.3
-digest: sha256:c7873b7d21e0f5eaeca649dccdc344de5fceed50c11925c9f71263659671057a
-generated: "2022-12-30T18:30:37.854445324+08:00"
+digest: sha256:ddc42ebc9def715f7555a1302cb088e765b2fc62803efbb603e8270b54e414c4
+generated: "2023-01-09T16:40:24.127724463+08:00"
diff --git a/charts/apisix/Chart.yaml b/charts/apisix/Chart.yaml
index 2be1225..e6183c2 100644
--- a/charts/apisix/Chart.yaml
+++ b/charts/apisix/Chart.yaml
@@ -16,7 +16,7 @@
#
apiVersion: v2
name: apisix
-description: A Helm chart for Apache APISIX
+description: A Helm chart for Apache APISIX v3
icon: https://apache.org/logos/res/apisix/apisix.png
# A chart can be either an 'application' or a 'library' chart.
#
@@ -31,7 +31,7 @@
# 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.12.3
+version: 1.1.0
# 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
@@ -45,11 +45,6 @@
version: 8.3.4
repository: https://charts.bitnami.com/bitnami
condition: etcd.enabled
- - name: apisix-dashboard
- version: 0.6.1
- repository: https://charts.apiseven.com
- condition: dashboard.enabled
- alias: dashboard
- name: apisix-ingress-controller
version: 0.11.3
repository: https://charts.apiseven.com
diff --git a/charts/apisix/README.md b/charts/apisix/README.md
index 9cda1c6..d14d3da 100644
--- a/charts/apisix/README.md
+++ b/charts/apisix/README.md
@@ -99,7 +99,6 @@
| customPlugins.plugins[0].configMap | object | `{"mounts":[{"key":"","path":""},{"key":"","path":""}],"name":""}` | plugin codes can be saved inside configmap object. |
| customPlugins.plugins[0].configMap.mounts | list | `[{"key":"","path":""},{"key":"","path":""}]` | since keys in configmap is flat, mountPath allows to define the mount path, so that plugin codes can be mounted hierarchically. |
| customPlugins.plugins[0].configMap.name | string | `""` | name of configmap. |
-| dashboard.enabled | bool | `false` | |
| discovery.enabled | bool | `false` | Enable or disable Apache APISIX integration service discovery |
| discovery.registry | object | `{}` | Registry is the same to the one in APISIX [config-default.yaml](https://github.com/apache/apisix/blob/master/conf/config-default.yaml#L281), and refer to such file for more setting details. also refer to [this documentation for integration service discovery](https://apisix.apache.org/docs/apisix/discovery) |
| dns.resolvers[0] | string | `"127.0.0.1"` | |
@@ -143,7 +142,7 @@
| gateway.tls.sslProtocols | string | `"TLSv1.2 TLSv1.3"` | TLS protocols allowed to use. |
| gateway.type | string | `"NodePort"` | Apache APISIX service type for user access itself |
| global.imagePullSecrets | list | `[]` | Global Docker registry secret names as an array |
-| ingress-controller.enabled | bool | `false` | |
+| ingress-controller | object | `{"config":{"apisix":{"adminAPIVersion":"v3"}},"enabled":false}` | Ingress controller configuration |
| initContainer.image | string | `"busybox"` | Init container image |
| initContainer.tag | float | `1.28` | Init container tag |
| logs.accessLog | string | `"/dev/stdout"` | Access log path |
diff --git a/charts/apisix/charts/apisix-dashboard-0.6.1.tgz b/charts/apisix/charts/apisix-dashboard-0.6.1.tgz
deleted file mode 100644
index 2090dbd..0000000
--- a/charts/apisix/charts/apisix-dashboard-0.6.1.tgz
+++ /dev/null
Binary files differ
diff --git a/charts/apisix/templates/configmap.yaml b/charts/apisix/templates/configmap.yaml
index ad9bcde..5149e3e 100644
--- a/charts/apisix/templates/configmap.yaml
+++ b/charts/apisix/templates/configmap.yaml
@@ -14,8 +14,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-{{- $isBeta := (semverCompare ">=2.99.0-0" .Values.apisix.image.tag) }}
-
{{- if .Values.apisix.enabled }}
apiVersion: v1
kind: ConfigMap
@@ -89,40 +87,6 @@
# disk_path: "/tmp/disk_cache_two"
# cache_levels: "1:2"
- {{- if not $isBeta }}
- config_center: etcd # etcd: use etcd to store the config value
- # yaml: fetch the config value from local yaml file `/your_path/conf/apisix.yaml`
- allow_admin: # http://nginx.org/en/docs/http/ngx_http_access_module.html#allow
- {{- if .Values.admin.allow.ipList }}
- {{- range $ips := .Values.admin.allow.ipList }}
- - {{ $ips }}
- {{- end }}
- {{- else }}
- - 0.0.0.0/0
- {{- end}}
- {{- if or (index .Values "ingress-controller" "enabled") .Values.dashboard.enabled }}
- - 0.0.0.0/0
- {{- end}}
- # - "::/64"
- {{- if .Values.admin.enabled }}
- port_admin: {{ .Values.admin.port }}
- {{- end }}
-
- # Default token when use API to call for Admin API.
- # *NOTE*: Highly recommended to modify this value to protect APISIX's Admin API.
- # Disabling this configuration item means that the Admin API does not
- # require any authentication.
- admin_key:
- # admin: can everything for configuration data
- - name: "admin"
- key: {{ .Values.admin.credentials.admin }}
- role: admin
- # viewer: only can view configuration data
- - name: "viewer"
- key: {{ .Values.admin.credentials.viewer }}
- role: viewer
- {{- end }}
-
router:
http: {{ .Values.apisix.httpRouter }} # radixtree_uri: match route by uri(base on radixtree)
# radixtree_host_uri: match route by host + uri(base on radixtree)
@@ -225,38 +189,6 @@
stream_configuration_snippet: {{- toYaml .Values.configurationSnippet.stream | indent 6 }}
{{- end }}
- {{- if not $isBeta }}
- etcd:
- {{- if .Values.etcd.enabled }}
- host: # it's possible to define multiple etcd hosts addresses of the same etcd cluster.
- {{- if .Values.etcd.fullnameOverride }}
- - "{{ include "apisix.etcd.auth.scheme" . }}://{{ .Values.etcd.fullnameOverride }}:{{ .Values.etcd.service.port }}"
- {{- else }}
- - "{{ include "apisix.etcd.auth.scheme" . }}://{{ .Release.Name }}-etcd.{{ .Release.Namespace }}.svc.{{ .Values.etcd.clusterDomain }}:{{ .Values.etcd.service.port }}"
- {{- end}}
- {{- else }}
- host: # it's possible to define multiple etcd hosts addresses of the same etcd cluster.
- {{- range $value := .Values.etcd.host }}
- - "{{ $value }}" # multiple etcd address
- {{- end}}
- {{- end }}
- prefix: {{ .Values.etcd.prefix | quote }} # apisix configurations prefix
- timeout: {{ .Values.etcd.timeout }} # 30 seconds
- {{- if .Values.etcd.auth.rbac.create }}
- user: {{ .Values.etcd.auth.rbac.user | quote }}
- password: {{ .Values.etcd.auth.rbac.password | quote }}
- {{- end }}
- {{- if .Values.etcd.auth.tls.enabled }}
- tls:
- cert: "/etcd-ssl/{{ .Values.etcd.auth.tls.certFilename }}"
- key: "/etcd-ssl/{{ .Values.etcd.auth.tls.certKeyFilename }}"
- verify: {{ .Values.etcd.auth.tls.verify }}
- {{- if .Values.etcd.auth.tls.sni }}
- sni: "{{ .Values.etcd.auth.tls.sni }}"
- {{- end }}
- {{- end }}
- {{- end }}
-
{{- if .Values.discovery.enabled }}
discovery:
{{- range $key, $value := .Values.discovery.registry }}
@@ -310,7 +242,6 @@
{{- toYaml .Values.wasmPlugins.plugins | nindent 8 }}
{{- end }}
- {{- if $isBeta }}
deployment:
role: traditional
role_traditional:
@@ -324,7 +255,7 @@
{{- else }}
- 0.0.0.0/0
{{- end}}
- {{- if or (index .Values "ingress-controller" "enabled") .Values.dashboard.enabled }}
+ {{- if (index .Values "ingress-controller" "enabled") }}
- 0.0.0.0/0
{{- end}}
# - "::/64"
@@ -374,5 +305,4 @@
sni: "{{ .Values.etcd.auth.tls.sni }}"
{{- end }}
{{- end }}
- {{- end }}
{{- end }}
diff --git a/charts/apisix/values.yaml b/charts/apisix/values.yaml
index df11f77..bbbf3d0 100644
--- a/charts/apisix/values.yaml
+++ b/charts/apisix/values.yaml
@@ -527,11 +527,12 @@
replicaCount: 3
-dashboard:
- enabled: false
-
+# -- Ingress controller configuration
ingress-controller:
enabled: false
+ config:
+ apisix:
+ adminAPIVersion: "v3"
vault:
# -- Enable or disable the vault integration