zimbres commented on issue #9931: URL: https://github.com/apache/apisix/issues/9931#issuecomment-1683178984
No problem. Its Helm managed by Flux: ``` apiVersion: source.toolkit.fluxcd.io/v1beta2 kind: HelmRepository metadata: name: apisix namespace: apisix spec: interval: 1m0s url: https://charts.bitnami.com/bitnami ``` ``` --- apiVersion: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: name: apisix namespace: apisix spec: chart: spec: chart: apisix reconcileStrategy: ChartVersion sourceRef: kind: HelmRepository name: apisix version: 2.0.3 interval: 1m0s values: controlPlane: defaultConfig: | plugin_attr: redirect: https_port: 443 {{- if .Values.controlPlane.metrics.enabled }} plugin_attr: prometheus: export_uri: /apisix/prometheus/metrics metric_prefix: apisix_ enable_export_server: true export_addr: ip: 0.0.0.0 port: {{ .Values.controlPlane.containerPorts.metrics }} {{- end }} nginx_config: error_log: /dev/stderr stream: access_log: /dev/stdout http: access_log: /dev/stdout http_configuration_snippet: | proxy_buffering off; apisix: control: ip: 0.0.0.0 port: {{ .Values.controlPlane.containerPorts.control }} deployment: role: control_plane role_control_plane: config_provider: etcd conf_server: listen: 0.0.0.0:{{ .Values.controlPlane.containerPorts.configServer }} cert: /bitnami/certs/{{ .Values.controlPlane.tls.certFilename }} cert_key: /bitnami/certs/{{ .Values.controlPlane.tls.certKeyFilename }} etcd: host: {{- if .Values.etcd.enabled }} {{- $replicas := $.Values.etcd.replicaCount | int }} {{- range $i, $_e := until $replicas }} - {{ printf "%s://%s-%d.%s:%v" (ternary "https" "http" $.Values.etcd.auth.client.secureTransport) (include "apisix.etcd.fullname" $ ) $i (include "apisix.etcd.headlessServiceName" $) ( include "apisix.etcd.port" $ ) }} {{- end }} {{- else }} {{- range $node := .Values.externalEtcd.servers }} - {{ ternary "https" "http" $.Values.externalEtcd.secureTransport }}://{{ printf "%s:%v" $node (include "apisix.etcd.port" $) }} {{- end }} {{- end }} prefix: /apisix timeout: 30 use_grpc: false startup_retry: 60 {{- if (include "apisix.etcd.authEnabled" .) }} user: "{{ print "{{APISIX_ETCD_USER}}" }}" password: "{{ print "{{APISIX_ETCD_PASSWORD}}" }}" {{- end }} {{- if .Values.controlPlane.tls.enabled }} certs: {{- if .Values.controlPlane.tls.enabled }} cert: /bitnami/certs/{{ .Values.controlPlane.tls.certFilename }} cert_key: /bitnami/certs/{{ .Values.controlPlane.tls.certKeyFilename }} {{- if .Values.controlPlane.tls.certCAFilename }} client_ca_cert: /bitnami/certs/{{ .Values.controlPlane.tls.certCAFilename }} {{- end }} {{- end }} {{- end }} admin: {{- if .Values.controlPlane.tls.enabled }} https_admin: true admin_api_mtls: admin_ssl_cert: /bitnami/certs/{{ .Values.controlPlane.tls.certFilename }} admin_ssl_cert_key: /bitnami/certs/{{ .Values.controlPlane.tls.certKeyFilename }} {{- end }} allow_admin: - 0.0.0.0/0 admin_key: - name: admin key: "{{ print "{{APISIX_ADMIN_API_TOKEN}}" }}" role: admin - name: viewer key: "{{ print "{{APISIX_VIEWER_API_TOKEN}}" }}" role: viewer admin_listen: port: {{ .Values.controlPlane.containerPorts.adminAPI }} enable_admin_cors: true # Admin API support CORS response headers. discovery: kubernetes: service: schema: https #default https # apiserver host, options [ipv4, ipv6, domain, environment variable] host: ${KUBERNETES_SERVICE_HOST} # apiserver port, options [port number, environment variable] port: ${KUBERNETES_SERVICE_PORT} client: # serviceaccount token or token_file token_file: /var/run/secrets/kubernetes.io/serviceaccount/token default_weight: 50 # weight assigned to each discovered endpoint. default 50, minimum 0 dataPlane: metrics: enabled: true defaultConfig: | {{- if .Values.dataPlane.metrics.enabled }} plugin_attr: redirect: https_port: 443 prometheus: export_uri: /apisix/prometheus/metrics metric_prefix: apisix_ enable_export_server: true export_addr: ip: 0.0.0.0 port: {{ .Values.dataPlane.containerPorts.metrics }} {{- else }} plugin_attr: redirect: https_port: 443 {{- end }} apisix: node_listen: {{ .Values.dataPlane.containerPorts.http }} enable_admin: false {{- if .Values.dataPlane.tls.enabled }} ssl: enable: true listen: - port: {{ .Values.dataPlane.containerPorts.https }} enable_http2: true ssl_trusted_certificate: /bitnami/certs/{{ .Values.dataPlane.tls.certCAFilename }} {{- end }} control: ip: 0.0.0.0 port: {{ .Values.dataPlane.containerPorts.control }} nginx_config: error_log: /dev/stderr stream: access_log: /dev/stdout http: access_log: /dev/stdout http_configuration_snippet: | proxy_buffering off; deployment: role: data_plane role_data_plane: config_provider: control_plane {{- if .Values.controlPlane.enabled }} control_plane: host: - {{ ternary "https" "http" .Values.controlPlane.tls.enabled }}://{{ include "apisix.control-plane.fullname" . }}:{{ .Values.controlPlane.service.ports.configServer }} prefix: /apisix timeout: 30 {{- end }} {{- if .Values.dataPlane.tls.enabled }} certs: {{- if .Values.dataPlane.tls.enabled }} cert: /bitnami/certs/{{ .Values.dataPlane.tls.certFilename }} cert_key: /bitnami/certs/{{ .Values.dataPlane.tls.certKeyFilename }} {{- if .Values.dataPlane.tls.certCAFilename }} client_ca_cert: /bitnami/certs/{{ .Values.dataPlane.tls.certCAFilename }} {{- end }} {{- end }} {{- end }} discovery: kubernetes: service: # apiserver schema, options [http, https] schema: https #default https # apiserver host, options [ipv4, ipv6, domain, environment variable] host: ${KUBERNETES_SERVICE_HOST} #default ${KUBERNETES_SERVICE_HOST} # apiserver port, options [port number, environment variable] port: ${KUBERNETES_SERVICE_PORT} #default ${KUBERNETES_SERVICE_PORT} client: # serviceaccount token or token_file token_file: /var/run/secrets/kubernetes.io/serviceaccount/token default_weight: 50 # weight assigned to each discovered endpoint. default 50, minimum 0 service: externalTrafficPolicy: Local dashboard: service: type: ClusterIP ports: http: 80 enable: true username: admin password: "Admin123" defaultConfig: | conf: listen: host: 0.0.0.0 port: {{ .Values.dashboard.containerPorts.http }} {{- if .Values.dashboard.tls.enabled }} ssl: host: 0.0.0.0 port: {{ .Values.dashboard.containerPorts.https }} cert: /bitnami/certs/{{ .Values.dashboard.tls.certFilename }} key: /bitnami/certs/{{ .Values.dashboard.tls.certKeyFilename }} {{- end }} etcd: prefix: "/apisix" endpoints: {{- if .Values.etcd.enabled }} {{- $replicas := $.Values.etcd.replicaCount | int }} {{- range $i, $_e := until $replicas }} - {{ printf "%s://%s-%d.%s:%v" (ternary "https" "http" $.Values.etcd.auth.client.secureTransport) (include "apisix.etcd.fullname" $ ) $i (include "apisix.etcd.headlessServiceName" $) ( include "apisix.etcd.port" $ ) }} {{- end }} {{- else }} {{- range $node :=.Values.externalEtcd.servers }} - {{ printf "%s:%v" $node (include "apisix.etcd.port" $) }} {{- end }} {{- end }} {{- if (include "apisix.etcd.authEnabled" .) }} username: "{{ print "{{ APISIX_ETCD_USER }}" }}" password: "{{ print "{{ APISIX_ETCD_PASSWORD }}" }}" {{- end }} log: error_log: level: warn file_path: /dev/stderr access_log: file_path: /dev/stdout authentication: secret: secret expire_time: 3600 users: - username: "{{ print "{{ APISIX_DASHBOARD_USER }}" }}" password: "{{ print "{{ APISIX_DASHBOARD_PASSWORD }}" }}" plugins: - api-breaker - authz-casbin - authz-casdoor - authz-keycloak - aws-lambda - azure-functions - basic-auth - batch-requests - clickhouse-logger - client-control - consumer-restriction - cors - csrf - datadog # - dubbo-proxy - echo - error-log-logger - ext-plugin-post-req - ext-plugin-post-resp - ext-plugin-pre-req - fault-injection - file-logger - forward-auth - google-cloud-logging - grpc-transcode - grpc-web - gzip - hmac-auth - http-logger - ip-restriction - jwt-auth - kafka-logger - kafka-proxy - key-auth - ldap-auth - limit-conn - limit-count - limit-req - loggly - log-rotate - mocking - node-status - opa - openid-connect - opentelemetry - openwhisk - prometheus - proxy-cache - proxy-control - proxy-mirror - proxy-rewrite - public-api - real-ip - redirect - referer-restriction - request-id - request-validation - response-rewrite - rocketmq-logger - server-info - serverless-post-function - serverless-pre-function - skywalking - skywalking-logger - sls-logger - splunk-hec-logging - syslog - tcp-logger - traffic-split - ua-restriction - udp-logger - uri-blocker - wolf-rbac - zipkin - elasticsearch-logge - openfunction - tencent-cloud-cls - ai - cas-auth ingressController: enabled: true externalEtcd: servers: - etcd.etcd.svc.cluster.local port: 2379 etcd: enabled: false ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@apisix.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org