# Issues with plugin ordering on Kong3 Open Source in K8s

**URL:** <https://discuss.konghq.com/t/issues-with-plugin-ordering-on-kong3-open-source-in-k8s/10859>\
**Category:** Questions\
**Tags:** kubernetes\
**Created:** [November 8, 2022, 8:26am UTC](https://discuss.konghq.com/t/issues-with-plugin-ordering-on-kong3-open-source-in-k8s/10859 "2022-11-08T08:26:06Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![cableguy](https://avatars.discourse-cdn.com/v4/letter/c/8edcca/32.png) [@cableguy](https://discuss.konghq.com/u/cableguy)\
**Post date:** [November 8, 2022, 8:26am UTC](https://discuss.konghq.com/t/issues-with-plugin-ordering-on-kong3-open-source-in-k8s/10859/1 "2022-11-08T08:26:07Z")

</div>

Good day,  
Me and my team are trying the possibilities with the open source version of Kong running in Kubernetes.  
We have been working with Kong2.7, and have made quite some progress.  
The release notes of Kong3.0 show that a new feature is plugin ordering, which seems like a great additional feature!  
We set up a small test environment with Kong3 running, and are able to configure it (yay!)  
Also we are using the official Kong dockerfile to build the kong image (found [here](https://github.com/Kong/docker-kong/blob/5a2610d900717a4a6c8ee98bc421d0d4599b126f/alpine/Dockerfile) )

When following the ‘[getting started with plugin ordering](https://docs.konghq.com/gateway/3.0.x/kong-enterprise/plugin-ordering/get-started/)’ tutorial we run into an error, namely:

```auto
[user]$ curl -i -X POST http://<my-kong-IP>:30006/plugins --data name=rate-limiting --data config.minute=5 --data config.policy=local --data config.limit_by=ip --data ordering.before.access=key-auth
HTTP/1.1 400 Bad Request
Date: Tue, 08 Nov 2022 08:17:07 GMT
Content-Type: application/json; charset=utf-8
Connection: keep-alive
Access-Control-Allow-Origin: *
Content-Length: 129
X-Kong-Admin-Latency: 6
Server: kong/3.0.0
Proxy-Connection: keep-alive

{"code":2,"message":"schema violation (ordering: unknown field)","fields":{"ordering":"unknown field"},"name":"schema violation"}

```

When we try do do the same with the basic auth plugin we get a similar error:

```auto
[user]$ curl -i -X POST http://<my-kong-IP>:30006/plugins --data name=basic-auth --data ordering.after=request-transformer
HTTP/1.1 400 Bad Request
Date: Tue, 08 Nov 2022 08:21:48 GMT
Content-Type: application/json; charset=utf-8
Connection: keep-alive
Access-Control-Allow-Origin: *
Content-Length: 129
X-Kong-Admin-Latency: 5
Server: kong/3.0.0
Proxy-Connection: keep-alive

{"code":2,"message":"schema violation (ordering: unknown field)","fields":{"ordering":"unknown field"},"name":"schema violation"}

```

We get the error that the field “ordering” does not exist.  
When trying this with another plugin we get the same issue.

My colleague also built a Kong3 open source docker image, and tried do do the tutorial and got the same error.  
Can anybody tell us why plugin ordering does not work?

An observant reader will have noted that we use the Rate Limiting plugin, and not the Rate Limiting Advanced plugin. So we suspect that the issue can have 2 causes:

1. Plugin ordering is not supported in the Kong 3 open source edition.
2. Plugin ordering is an attribute which is only available in the Rate Limiting Advanced plugin.  
Note 2: This would be strange since the ordering attribute is also not available to the basic-auth plugin.

We are wondering what the issue could be here.  
Thanks in advance and have a nice day!

Kind Regards,  
cableguy

---

<div class="post-metadata">

**Author:** ![cableguy](https://avatars.discourse-cdn.com/v4/letter/c/8edcca/32.png) [@cableguy](https://discuss.konghq.com/u/cableguy)\
**Post date:** [November 8, 2022, 9:52am UTC](https://discuss.konghq.com/t/issues-with-plugin-ordering-on-kong3-open-source-in-k8s/10859/2 "2022-11-08T09:52:20Z")

</div>

Answered in here

> <https://github.com/Kong/kong/issues/9723>
>
> \### Is there an existing issue for this?
> 
> \- \[X\] I have searched the existing iss…ues
> 
> \### Kong version (\`$ kong version\`)
> 
> Kong 3.0.0-alpine
> 
> \### Current Behavior
> 
> Good day,
> Me and my team are trying the possibilities with the open source version of Kong running in Kubernetes.
> We have been working with Kong2.7, and have made quite some progress.
> The release notes of Kong3.0 show that a new feature is plugin ordering, which seems like a great additional feature!
> We set up a small test environment with Kong3 running, and are able to configure it (yay!)
> Also we are using the official Kong dockerfile to build the kong image (found \[here\](https://github.com/Kong/docker-kong/blob/5a2610d900717a4a6c8ee98bc421d0d4599b126f/alpine/Dockerfile) )
> 
> When following the '\[getting started with plugin ordering\](https://docs.konghq.com/gateway/3.0.x/kong-enterprise/plugin-ordering/get-started/ )' tutorial we run into an error, namely:
> 
> \`\`\`
> \[user\]$ curl -i -X POST http://\<my-kong-IP\>:30006/plugins --data name=rate-limiting --data config.minute=5 --data config.policy=local --data config.limit\_by=ip --data ordering.before.access=key-auth
> HTTP/1.1 400 Bad Request
> Date: Tue, 08 Nov 2022 08:17:07 GMT
> Content-Type: application/json; charset=utf-8
> Connection: keep-alive
> Access-Control-Allow-Origin: \*
> Content-Length: 129
> X-Kong-Admin-Latency: 6
> Server: kong/3.0.0
> Proxy-Connection: keep-alive
> 
> {"code":2,"message":"schema violation (ordering: unknown field)","fields":{"ordering":"unknown field"},"name":"schema violation"}
> \`\`\`
> When we try do do the same with the basic auth plugin we get a similar error:
> 
> \`\`\`
> \[user\]$ curl -i -X POST http://\<my-kong-IP\>:30006/plugins --data name=basic-auth --data ordering.after=request-transformer
> HTTP/1.1 400 Bad Request
> Date: Tue, 08 Nov 2022 08:21:48 GMT
> Content-Type: application/json; charset=utf-8
> Connection: keep-alive
> Access-Control-Allow-Origin: \*
> Content-Length: 129
> X-Kong-Admin-Latency: 5
> Server: kong/3.0.0
> Proxy-Connection: keep-alive
> 
> {"code":2,"message":"schema violation (ordering: unknown field)","fields":{"ordering":"unknown field"},"name":"schema violation"}
> \`\`\`
> 
> We get the error that the field "ordering" does not exist.
> When trying this with another plugin we get the same issue.
> 
> My colleague also built a Kong3 open source docker image, and tried do do the tutorial and got the same error.
> Can anybody tell us why plugin ordering does not work?
> 
> An observant reader will have noted that we use the Rate Limiting plugin, and not the Rate Limiting Advanced plugin. So we suspect that the issue can have 2 causes:
> 
> 1. Plugin ordering is not supported in the Kong 3 open source edition.
> 2. Plugin ordering is an attribute which is only available in the Rate Limiting Advanced plugin.
> Note 2: This would be strange since the ordering attribute is also not available to the basic-auth plugin.
> 
> We are wondering what the issue could be here. 
> Thanks in advance and have a nice day!
> 
> Kind Regards,
> cableguy00000
> 
> \### Expected Behavior
> 
> When I create a plugin I expect a response saying "plugin created successfully"
> 
> \### Steps To Reproduce
> 
> \`\`\`markdown
> See 'current behaviour'
> \`\`\`
> 
> 
> \### Anything else?
> 
> \_No response\_
