renatomattos2912 opened a new issue, #8956:
URL: https://github.com/apache/apisix/issues/8956
### Current Behavior
When applying CRD for ApisixPluginConfig and ApisixRoute using
plugin_config_name field to bound plugins to route, the bound is not being made
after all, so each CRD is applied individually in kubernetes, no errors on
that, but the plugin_config_name field is being ignored on route.
### Expected Behavior
I expect that ApisixRoute bound with ApisixPluginConfig works when
plugin_config_name is correctly added to route.
### Error Logs
No errors logs
### Steps to Reproduce
1. Run APISIX in a kubernete cluster using Helm with values bellow:
`global:
imagePullSecrets: []
apisix:
enabled: true
enableIPv6: true
enableServerTokens: true
setIDFromPodUID: false
customLuaSharedDicts:
[]
luaModuleHook:
enabled: false
luaPath: ""
hookPoint: ""
configMapRef:
name: ""
mounts:
- key: ""
path: ""
httpRouter: radixtree_uri
enableCustomizedConfig: false
customizedConfig: {}
image:
repository: apache/apisix
pullPolicy: IfNotPresent
tag: 3.1.0-debian
kind: Deployment
replicaCount: 1
priorityClassName: ""
podAnnotations: {}
podSecurityContext:
{}
securityContext:
{}
podDisruptionBudget:
enabled: false
minAvailable: 90%
maxUnavailable: 1
resources:
{}
hostNetwork: false
nodeSelector: {}
tolerations: []
affinity: {}
timezone: ""
extraEnvVars: []
nameOverride: ""
fullnameOverride: ""
serviceAccount:
create: false
annotations: {}
name: ""
rbac:
create: false
gateway:
type: LoadBalancer
externalTrafficPolicy: Cluster
annotations:
service.beta.kubernetes.io/aws-load-balancer-type: nlb
externalIPs: []
http:
enabled: true
servicePort: 80
containerPort: 9080
tls:
enabled: true
servicePort: 443
containerPort: 9080
existingCASecret: ""
certCAFilename: ""
http2:
enabled: true
sslProtocols: "TLSv1.2 TLSv1.3"
stream:
enabled: false
only: false
tcp: []
udp: []
ingress:
enabled: false
annotations:
{}
hosts:
- host: apisix.local
paths: []
tls: []
admin:
enabled: true
type: ClusterIP
externalIPs: []
port: 9180
servicePort: 9180
cors: true
credentials:
admin: edd1c9f034335f136f87ad84b625c8f1
viewer: 4054f7cf07e344346cd3f287985e76a2
allow:
ipList:
- 127.0.0.1/24
ingress:
enabled: false
annotations:
{}
hosts:
- host: apisix-admin.local
paths:
- "/apisix"
tls: []
nginx:
workerRlimitNofile: "20480"
workerConnections: "10620"
workerProcesses: auto
enableCPUAffinity: true
envs: []
plugins:
- api-breaker
- authz-keycloak
- basic-auth
- batch-requests
- consumer-restriction
- cors
- echo
- fault-injection
- file-logger
- grpc-transcode
- hmac-auth
- http-logger
- ip-restriction
- ua-restriction
- jwt-auth
- kafka-logger
- key-auth
- limit-conn
- limit-count
- limit-req
- node-status
- openid-connect
- authz-casbin
- prometheus
- proxy-cache
- proxy-mirror
- proxy-rewrite
- redirect
- referer-restriction
- request-id
- request-validation
- response-rewrite
- serverless-post-function
- serverless-pre-function
- sls-logger
- syslog
- tcp-logger
- udp-logger
- uri-blocker
- wolf-rbac
- zipkin
- traffic-split
- gzip
- real-ip
- ext-plugin-pre-req
- ext-plugin-post-req
stream_plugins:
- mqtt-proxy
- ip-restriction
- limit-conn
pluginAttrs: {}
extPlugin:
enabled: false
cmd: ["/path/to/apisix-plugin-runner/runner", "run"]
wasmPlugins:
enabled: false
plugins: []
customPlugins:
enabled: false
luaPath: "/opts/custom_plugins/?.lua"
plugins:
- name: ""
attrs: {}
configMap:
name: ""
mounts:
- key: ""
path: ""
- key: ""
path: ""
updateStrategy:
{}
extraVolumes: []
extraVolumeMounts: []
extraInitContainers: []
discovery:
enabled: false
registry:
{}
logs:
enableAccessLog: true
accessLog: "/dev/stdout"
accessLogFormat: '$remote_addr - $remote_user [$time_local] $http_host
\"$request\" $status $body_bytes_sent $request_time \"$http_referer\"
\"$http_user_agent\" $upstream_addr $upstream_status $upstream_response_time
\"$upstream_scheme://$upstream_host$upstream_uri\"'
accessLogFormatEscape: default
errorLog: "/dev/stderr"
errorLogLevel: "warn"
dns:
resolvers:
- 127.0.0.1
- 172.20.0.10
- 114.114.114.114
- 223.5.5.5
- 1.1.1.1
- 8.8.8.8
validity: 30
timeout: 5
initContainer:
image: busybox
tag: 1.28
autoscaling:
enabled: false
minReplicas: 1
maxReplicas: 100
targetCPUUtilizationPercentage: 80
targetMemoryUtilizationPercentage: 80
configurationSnippet:
main: |
httpStart: |
httpEnd: |
httpSrv: |
httpAdmin: |
stream: |
serviceMonitor:
enabled: false
namespace: ""
name: ""
interval: 15s
path: /apisix/prometheus/metrics
metricPrefix: apisix_
containerPort: 9091
labels:
{}
annotations:
{}
etcd:
enabled: true
host:
- http://etcd.host:2379
prefix: "/apisix"
timeout: 30
auth:
rbac:
create: false
user: ""
password: ""
tls:
enabled: false
existingSecret: ""
certFilename: ""
certKeyFilename: ""
verify: true
sni: ""
service:
port: 2379
replicaCount: 3
ingress-controller:
enabled: true
config:
apisix:
adminAPIVersion: "v3"
serviceNamespace: apisix
vault:
enabled: false
host: ""
timeout: 10
token: ""
prefix: ""
`
2. Apply CRD to create ApisixPluginConfig
`
apiVersion: apisix.apache.org/v2
kind: ApisixPluginConfig
metadata:
name: public-endpoints
namespace: apisix
spec:
plugins:
- name: cors
enable: true
config:
allow_origins: http://localhost:3000
allow_credential: true
allow_methods: "**"
allow_headers: "**"
expose_headers: "**"
`
3. Apply CRD to create ApisixRoute bounded to ApisixPluginConfig
`apiVersion: apisix.apache.org/v2
kind: ApisixRoute
metadata:
name: route-test
namespace: apisix
spec:
http:
- name: rule1
match:
hosts:
- localhost
paths:
- /test
methods:
- OPTIONS
- GET
backends:
- serviceName: httpbin
servicePort: 80
plugin_config_name: plugins-smp-public-apis
`
4. Check if plugins is applied or not.
### Environment
- APISIX version (run `apisix version`): 3.1.0
- Operating system (run `uname -a`): Kubernetes 1.22 in AWS EKS
- etcd version, if relevant (run `curl
http://127.0.0.1:9090/v1/server_info`): 3.5.0
- APISIX Dashboard version, if relevant: 2.15.0
- Apisix Helm Version: apisix-1.1.1 (Ingress controller installed via the
same helm)
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]