Skip to content
Merged
19 changes: 6 additions & 13 deletions api/v1alpha1/metalstackcluster_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,8 @@ const (

ClusterControlPlaneEndpointDefaultPort = 443

ClusterNodeNetworkEnsured clusterv1.ConditionType = "ClusterNodeNetworkEnsured"
ClusterControlPlaneEndpointEnsured clusterv1.ConditionType = "ClusterControlPlaneEndpointEnsured"
ClusterNodeNetworkEnsured clusterv1.ConditionType = "ClusterNodeNetworkEnsured"
ClusterControlPlaneIPEnsured clusterv1.ConditionType = "ClusterControlPlaneIPEnsured"
)

var (
Expand All @@ -52,14 +52,13 @@ type MetalStackClusterSpec struct {
ProjectID string `json:"projectID"`

// NodeNetworkID is the network ID in metal-stack in which the worker nodes and the firewall of the cluster are placed.
// If not provided this will automatically be acquired during reconcile. Note that this field is not patched after auto-acquisition.
// The ID of the auto-acquired network can be looked up in the status resource instead.
// If not provided this will automatically be acquired during reconcile.
// +optional
NodeNetworkID *string `json:"nodeNetworkID,omitempty"`

// ControlPlaneIP is the ip address in metal-stack on which the control plane will be exposed.
// If this ip and the control plane endpoint are not provided this will automatically be acquired during reconcile. Note that this field is not patched after auto-acquisition.
// The address of the auto-acquired ip can be looked up in the control plane endpoint.
// If this ip and the control plane endpoint are not provided, an ephemeral ip will automatically be acquired during reconcile.
// Static ip addresses will not be deleted.
// +optional
ControlPlaneIP *string `json:"controlPlaneIP,omitempty"`

Expand All @@ -79,6 +78,7 @@ type APIEndpoint struct {
// MetalStackClusterStatus defines the observed state of MetalStackCluster.
type MetalStackClusterStatus struct {
// Ready denotes that the cluster is ready.
// +kubebuilder:default=false
Ready bool `json:"ready"`

// FailureReason indicates that there is a fatal problem reconciling the
Expand All @@ -95,13 +95,6 @@ type MetalStackClusterStatus struct {
// Conditions defines current service state of the MetalStackCluster.
// +optional
Conditions clusterv1.Conditions `json:"conditions,omitempty"`

// NodeCIDR is set as soon as the node network was created.
// +optional
NodeCIDR *string `json:"nodeCIDR,omitempty"`
// NodeNetworkID is set as soon as the node network was created.
// +optional
NodeNetworkID *string `json:"nodeNetworkID,omitempty"`
}

// +kubebuilder:object:root=true
Expand Down
1 change: 1 addition & 0 deletions api/v1alpha1/metalstackmachine_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ type MetalStackMachineSpec struct {
// MetalStackMachineStatus defines the observed state of MetalStackMachine.
type MetalStackMachineStatus struct {
// Ready denotes that the machine is ready.
// +kubebuilder:default=false
Ready bool `json:"ready"`

// FailureReason indicates that there is a fatal problem reconciling the
Expand Down
10 changes: 0 additions & 10 deletions api/v1alpha1/zz_generated.deepcopy.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -88,14 +88,13 @@ spec:
controlPlaneIP:
description: |-
ControlPlaneIP is the ip address in metal-stack on which the control plane will be exposed.
If this ip and the control plane endpoint are not provided this will automatically be acquired during reconcile. Note that this field is not patched after auto-acquisition.
The address of the auto-acquired ip can be looked up in the control plane endpoint.
If this ip and the control plane endpoint are not provided, an ephemeral ip will automatically be acquired during reconcile.
Static ip addresses will not be deleted.
type: string
nodeNetworkID:
description: |-
NodeNetworkID is the network ID in metal-stack in which the worker nodes and the firewall of the cluster are placed.
If not provided this will automatically be acquired during reconcile. Note that this field is not patched after auto-acquisition.
The ID of the auto-acquired network can be looked up in the status resource instead.
If not provided this will automatically be acquired during reconcile.
type: string
partition:
description: Partition is the data center partition in which the resources
Expand Down Expand Up @@ -168,14 +167,8 @@ spec:
state, and will be set to a token value suitable for
programmatic interpretation.
type: string
nodeCIDR:
description: NodeCIDR is set as soon as the node network was created.
type: string
nodeNetworkID:
description: NodeNetworkID is set as soon as the node network was
created.
type: string
ready:
default: false
description: Ready denotes that the cluster is ready.
type: boolean
required:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -160,6 +160,7 @@ spec:
programmatic interpretation.
type: string
ready:
default: false
description: Ready denotes that the machine is ready.
type: boolean
required:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -175,6 +175,7 @@ spec:
programmatic interpretation.
type: string
ready:
default: false
description: Ready denotes that the machine is ready.
type: boolean
required:
Expand Down
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ require (
github.com/onsi/gomega v1.36.0
github.com/stretchr/testify v1.9.0
go.uber.org/zap v1.27.0
golang.org/x/sync v0.10.0
k8s.io/api v0.31.3
k8s.io/apimachinery v0.31.3
k8s.io/client-go v0.31.3
Expand Down Expand Up @@ -107,6 +106,7 @@ require (
golang.org/x/exp v0.0.0-20241009180824-f66d83c29e7c // indirect
golang.org/x/net v0.33.0 // indirect
golang.org/x/oauth2 v0.24.0 // indirect
golang.org/x/sync v0.10.0 // indirect
golang.org/x/sys v0.28.0 // indirect
golang.org/x/term v0.27.0 // indirect
golang.org/x/text v0.21.0 // indirect
Expand Down
Loading
Loading