-
Notifications
You must be signed in to change notification settings - Fork 125
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
addon: seems to be missing 'addon name' field #149
Comments
Hi @natereid72, I would suggest to utilize the external-name annotation in this case. Could you please give a try to something like: - name: cluster-csi-driver
base:
apiVersion: eks.aws.upbound.io/v1beta1
kind: Addon
metadata:
annotations:
crossplane.io/external-name: aws-ebs-csi-driver
spec:
... |
@ulucinar I think this is one of the cases where it should be left as spec field instead of using external name since |
my suggestion is: spec:
forProvider:
addon:
name:
version: |
We had an offline chat with @natereid72, and I will provide more context in this issue discussing some possibilities. |
Hello, I'm experiencing something similar. In my composition the name of the resource should be unique and with the current CRD it is not something I can do. Thanks |
@muvaf any workaround for this issue? Facing similar issue for other resources as well which are currently relying on |
@natereid72 - any plan of getting this issue resolved in upcoming releases? |
@bhavinkotak , you'd have to check with someone else. I don't have any involvement in the project planning. Last I knew, it was a bit of 'painted into a corner' issue. Not implemented in the best way, but implemented. Which will result in a breaking change to the provider as a CRD needs to be modified. |
Hi @bhavinkotak, apiVersion: eks.aws.upbound.io/v1beta1
kind: Addon
metadata:
annotations:
crossplane.io/external-name: vpc-cni
name: addon1
spec:
forProvider:
clusterNameSelector:
matchLabels:
testing.upbound.io/example-name: cluster1
region: us-west-1
---
apiVersion: eks.aws.upbound.io/v1beta1
kind: Addon
metadata:
annotations:
crossplane.io/external-name: vpc-cni
name: addon2
spec:
forProvider:
clusterNameSelector:
matchLabels:
testing.upbound.io/example-name: cluster2
region: us-west-1 So the above two resources have different Could you please give this a try? |
@ulucinar I have a semi-related question about this. I've defined an Addon in my Composition similar to what you provided above: - name: eks-addon-vpc-cni
base:
apiVersion: eks.aws.upbound.io/v1beta1
kind: Addon
metadata:
annotations:
crossplane.io/external-name: vpc-cni
spec:
deletionPolicy: Delete
forProvider:
addonVersion: "v1.12.1-eksbuild.2"
clusterNameSelector:
matchControllerRef: true
resolveConflicts: "OVERWRITE" I can confirm that the Addon was successfully installed on my target cluster but I noticed that the MR eventually registers as
When I describe the MR, I see the following:
Can you help me understand what I might be doing wrong here? |
@adamhouse Seems strange, but can you verify that
Thus you should check with:
|
FWIW, I came across the same (i.e. original) issue with
|
checkout the following reference implementation upbound/platform-ref-aws#97 - thanks for rasing the issue |
What happened?
The addon resource appears to rely on metadata.name to provide the addon name to aws api. This will work if a managed resource is created manually and no other additional instance of the addon needs to exist in the cluster. But if you need to create multiple addons of the same type or are using Composition that wants to make metadata.name unique, this is a blocker.
How can we reproduce it?
Create a addon via composition and see the error.
Message: apply failed: error creating EKS Add-On (nate-demo-again-mksgm-t459x:nate-demo-again-mksgm-k8rtp): InvalidParameterException: Addon specified is not supported
What environment did it happen in?
The text was updated successfully, but these errors were encountered: