I'm creating some HUB resources as such:
apiVersion: hub.traefik.io/v1alpha1
kind: API
metadata:
name: httpbin
namespace: httpbin
spec:
openApiSpec:
url: https://raw.githubusercontent.com/Kong/swagger-ui-kong-theme/refs/heads/main/demo/public/specs/httpbin.yaml
Now the first time this creates this and I see it in the Hub UI, but if I want to make changes at all, I get a 409
$ k apply -f api.yaml
Error from server: error when creating "api.yaml": admission webhook "hub-agent.traefik.hub-agent.traefik.api" denied the request: creating API: creating: failed https://api.traefik.io/agent/apis with code 409: a resource with this name already exists
I also cant delete using the resources because for some reason the resources just keep getting recreated (Im assuming this is the UI being seen as the "source of truth" or something)
This also goes for trying to edit them.
What were you expecting?
I would like to be able to manage my resources via Kubernetes CRD's and expect these to be the Source of Truth
What version are you using?
I have tried this with:
-
v3.18.3
-
v3.19.0-rc.2
What is your environment & configuration?
apiVersion: hub.traefik.io/v1alpha1
kind: API
metadata:
name: httpbin
namespace: httpbin
spec:
openApiSpec:
url: https://raw.githubusercontent.com/Kong/swagger-ui-kong-theme/refs/heads/main/demo/public/specs/httpbin.yaml
---
apiVersion: hub.traefik.io/v1alpha1
kind: APIPlan
metadata:
name: standard-plan
namespace: httpbin
spec:
title: "Standard Plan"
description: "Standard rate limits and quotas"
rateLimit:
limit: 10
period: 1s
quota:
limit: 1000
period: 72h # Approximately 30 days
---
apiVersion: hub.traefik.io/v1alpha1
kind: APICatalogItem
metadata:
name: api-catalog
namespace: httpbin
spec:
everyone: true
apis:
- name: httpbin
apiPlan:
name: standard-plan
---
apiVersion: hub.traefik.io/v1alpha1
kind: APIPortal
metadata:
name: test
namespace: httpbin
spec:
title: "My Portal"
description: "API documentation"
trustedUrls:
- "https://docs.XXXXX.nl"