You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Given the following XRD, a ReservedIPBlock will fail to reconcile with errors about quantity conflicting with vrf_id even when no quantity is set and vrf_id is supplied through patching.
XRD ("MetalNetwork" creates a VRF + VLAN + Gateway (associated with the VLAN, with IP reservations from the VRF)
$ kubectl describe metalnetworkclaims.equinix.xrds.crossplane.io metal-network-instance Name: metal-network-instanceNamespace: defaultLabels: <none>Annotations: <none>API Version: equinix.xrds.crossplane.io/v1alpha1Kind: MetalNetworkClaimMetadata: Creation Timestamp: 2024-07-11T14:19:53Z Finalizers: finalizer.apiextensions.crossplane.io Generation: 8 Resource Version: 16031 UID: c441b433-525e-4fcb-a508-c2835dc79677Spec: Composite Delete Policy: Background Composition Ref: Name: metalnetworkcomposition Composition Revision Ref: Name: metalnetworkcomposition-e870161 Composition Update Policy: Automatic Description: vrf created using crossplane composition Ip Prefixes: 192.168.100.0/24 Metro: da Project ID: 24822e74-bf8c-4637-bcb9-71ef8fd88eed Resource Ref: API Version: equinix.xrds.crossplane.io/v1alpha1 Kind: MetalNetwork Name: metal-network-instance-p24bt Vrf Name: vrf-via-crossplane-xrd Vxlan: 1000Status: Conditions: Last Transition Time: 2024-07-11T14:19:53Z Reason: ReconcileSuccess Status: True Type: Synced Last Transition Time: 2024-07-11T14:19:53Z Message: Claim is waiting for composite resource to become Ready Reason: Waiting Status: False Type: Ready Vlan ID: e0a787ac-fa37-47cf-ac0e-02657fad2cf9 Vrf ID: 40025fe3-2138-4e25-a963-4cca23e136bcEvents: Type Reason Age From Message ---- ------ ---- ---- ------- Normal BindCompositeResource 33m offered/compositeresourcedefinition.apiextensions.crossplane.io Successfully bound composite resource Normal BindCompositeResource 8m16s (x17 over 33m) offered/compositeresourcedefinition.apiextensions.crossplane.io Composite resource is not yet ready
$ kubectl describe reservedipblocks.metal.equinix.jet.crossplane.io ...Spec: Deletion Policy: Delete For Provider: Cidr: 24 Custom Data: {} Description: vrf created using crossplane composition Metro: da Network: 192.168.100.0 Project Id: *redacted* Quantity: 256 Type: vrf Vrf Id: 40025fe3-2138-4e25-a963-4cca23e136bc Wait For State: created Provider Config Ref: Name: defaultStatus: At Provider: Conditions: Last Transition Time: 2024-07-11T14:54:36Z Message: observe failed: cannot run refresh: refresh failed: Invalid combination of arguments: "vrf_id": only one of `quantity,vrf_id` can be specified, but `quantity,vrf_id` were specified.Invalid combination of arguments: "quantity": only one of `quantity,vrf_id` can be specified, but `quantity,vrf_id` were specified.
Quantity above is shown as 256 but that is not defined anywhere in the XRD or claim. I tried setting quantity: null in the XRD, but that didn't help either.
The IP reservation is being successfully created. The problem seems to be at refresh, related to the quantity being set to 256 as a computed field despite the field conflicting with the other fields (cidr, vrf_id).
What happened?
Given the following XRD, a ReservedIPBlock will fail to reconcile with errors about quantity conflicting with vrf_id even when no quantity is set and vrf_id is supplied through patching.
XRD ("MetalNetwork" creates a VRF + VLAN + Gateway (associated with the VLAN, with IP reservations from the VRF)
Claim:
Quantity above is shown as 256 but that is not defined anywhere in the XRD or claim. I tried setting
quantity: null
in the XRD, but that didn't help either.How can we reproduce it?
What environment did it happen in?
Crossplane version: v1.16.0
Provider version: v0.6.1
The text was updated successfully, but these errors were encountered: