Skip to content

Commit

Permalink
chore: release new chart for APISIX v3.x (#445)
Browse files Browse the repository at this point in the history
* release new chart for APISIX v3.x
* chore: remove isBeta logic

Signed-off-by: Jintao Zhang <zhangjintao9020@gmail.com>
  • Loading branch information
tao12345666333 authored Jan 10, 2023
1 parent 10ea91d commit 939cbb2
Show file tree
Hide file tree
Showing 7 changed files with 17 additions and 88 deletions.
7 changes: 7 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,3 +26,10 @@ Apache APISIX Helm Charts provide the installation of [Apache APISIX](https://gi
- [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 |
7 changes: 2 additions & 5 deletions charts/apisix/Chart.lock
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,8 @@ dependencies:
- 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"
9 changes: 2 additions & 7 deletions charts/apisix/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -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.
#
Expand All @@ -31,7 +31,7 @@ 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.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
Expand All @@ -45,11 +45,6 @@ dependencies:
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
Expand Down
3 changes: 1 addition & 2 deletions charts/apisix/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,6 @@ The command removes all the Kubernetes components associated with the chart and
| 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"` | |
Expand Down Expand Up @@ -143,7 +142,7 @@ The command removes all the Kubernetes components associated with the chart and
| 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 |
Expand Down
Binary file removed charts/apisix/charts/apisix-dashboard-0.6.1.tgz
Binary file not shown.
72 changes: 1 addition & 71 deletions charts/apisix/templates/configmap.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -89,40 +87,6 @@ data:
# 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)
Expand Down Expand Up @@ -225,38 +189,6 @@ data:
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 }}
Expand Down Expand Up @@ -310,7 +242,6 @@ data:
{{- toYaml .Values.wasmPlugins.plugins | nindent 8 }}
{{- end }}
{{- if $isBeta }}
deployment:
role: traditional
role_traditional:
Expand All @@ -324,7 +255,7 @@ data:
{{- 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"
Expand Down Expand Up @@ -374,5 +305,4 @@ data:
sni: "{{ .Values.etcd.auth.tls.sni }}"
{{- end }}
{{- end }}
{{- end }}
{{- end }}
7 changes: 4 additions & 3 deletions charts/apisix/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -527,11 +527,12 @@ etcd:

replicaCount: 3

dashboard:
enabled: false

# -- Ingress controller configuration
ingress-controller:
enabled: false
config:
apisix:
adminAPIVersion: "v3"

vault:
# -- Enable or disable the vault integration
Expand Down

0 comments on commit 939cbb2

Please sign in to comment.