diff --git a/config/v1/0000_10_config-operator_01_infrastructure.crd.yaml b/config/v1/0000_10_config-operator_01_infrastructure.crd.yaml index 03e59e5ea62..680af9694a6 100644 --- a/config/v1/0000_10_config-operator_01_infrastructure.crd.yaml +++ b/config/v1/0000_10_config-operator_01_infrastructure.crd.yaml @@ -123,6 +123,15 @@ spec: points to. It is the IP for a self-hosted load balancer in front of the API servers. type: string + cacheURL: + description: cacheURL is the location where images have been + previously downloaded and available for faster image downloads + within the cluster. + type: string + dhcpRange: + description: dhcpRange is the IP address range on the provisioning + subnet from which baremetal hosts can be assigned an IP address. + type: string ingressIP: description: ingressIP is an external IP which routes to the default ingress controller. The IP is a suitable target of @@ -137,6 +146,26 @@ spec: a DNS service is hosted as a static pod to serve those hostnames to the nodes in the cluster. type: string + provisioningIP: + description: provisioningIP is the IP address assigned to the + provisioningInterface for provisioning the baremetal node. + This IP address should be within the provisioning subnet, + and outside of the DHCP range. + type: string + provisioningInterface: + description: provisioningInterface is the name of the network + interface on a Baremetal server connected to the provisioning + network. + type: string + provisioningNetworkCIDR: + description: provisioningNetworkCIDR is the network on which + the baremetal nodes are provisioned. The provisioningIP and + the IPs in the dhcpRange all come from within this network. + type: string + rhcosImageURL: + description: rhcosImageURL is the URL for RHCOS Image for deploying + new nodes in the cluster. + type: string gcp: description: GCP contains settings specific to the Google Cloud Platform infrastructure provider. diff --git a/config/v1/types_infrastructure.go b/config/v1/types_infrastructure.go index ac1e5048ee1..6b4800a1967 100644 --- a/config/v1/types_infrastructure.go +++ b/config/v1/types_infrastructure.go @@ -182,6 +182,30 @@ type BareMetalPlatformStatus struct { // datacenter DNS, a DNS service is hosted as a static pod to serve those hostnames // to the nodes in the cluster. NodeDNSIP string `json:"nodeDNSIP,omitempty"` + + // provisioningInterface is the name of the network interface on a Baremetal server connected + // to the provisioning network. + ProvisioningInterface string `json:"provisioningInterface"` + + // provisioningIP is the IP address assigned to the provisioningInterface for provisioning + // the baremetal node. This IP address should be within the provisioning subnet, and + // outside of the DHCP range. + ProvisioningIP string `json:"provisioningIP"` + + // provisioningNetworkCIDR is the network on which the baremetal nodes are provisioned. + // The provisioningIP and the IPs in the dhcpRange all come from within this network. + ProvisioningNetworkCIDR string `json:"provisioningNetworkCIDR"` + + // dhcpRange is the IP address range on the provisioning subnet from which baremetal hosts + // can be assigned an IP address. + DHCPRange string `json:"dhcpRange"` + + // cacheURL is the location where images have been previously downloaded and available + // for faster image downloads within the cluster. + CacheURL string `json:"cacheURL,omitempty"` + + // rhcosImageURL is the URL for RHCOS Image for deploying new nodes in the cluster. + RHCOSImageURL string `json:"rhcosImageURL"` } // OpenStackPlatformStatus holds the current status of the OpenStack infrastructure provider. diff --git a/config/v1/zz_generated.swagger_doc_generated.go b/config/v1/zz_generated.swagger_doc_generated.go index 5652b5a51cb..34eb9bc0839 100644 --- a/config/v1/zz_generated.swagger_doc_generated.go +++ b/config/v1/zz_generated.swagger_doc_generated.go @@ -696,10 +696,16 @@ func (AzurePlatformStatus) SwaggerDoc() map[string]string { } var map_BareMetalPlatformStatus = map[string]string{ - "": "BareMetalPlatformStatus holds the current status of the BareMetal infrastructure provider. For more information about the network architecture used with the BareMetal platform type, see: https://github.com/openshift/installer/blob/master/docs/design/baremetal/networking-infrastructure.md", - "apiServerInternalIP": "apiServerInternalIP is an IP address to contact the Kubernetes API server that can be used by components inside the cluster, like kubelets using the infrastructure rather than Kubernetes networking. It is the IP that the Infrastructure.status.apiServerInternalURI points to. It is the IP for a self-hosted load balancer in front of the API servers.", - "ingressIP": "ingressIP is an external IP which routes to the default ingress controller. The IP is a suitable target of a wildcard DNS record used to resolve default route host names.", - "nodeDNSIP": "nodeDNSIP is the IP address for the internal DNS used by the nodes. Unlike the one managed by the DNS operator, `NodeDNSIP` provides name resolution for the nodes themselves. There is no DNS-as-a-service for BareMetal deployments. In order to minimize necessary changes to the datacenter DNS, a DNS service is hosted as a static pod to serve those hostnames to the nodes in the cluster.", + "": "BareMetalPlatformStatus holds the current status of the BareMetal infrastructure provider. For more information about the network architecture used with the BareMetal platform type, see: https://github.com/openshift/installer/blob/master/docs/design/baremetal/networking-infrastructure.md", + "apiServerInternalIP": "apiServerInternalIP is an IP address to contact the Kubernetes API server that can be used by components inside the cluster, like kubelets using the infrastructure rather than Kubernetes networking. It is the IP that the Infrastructure.status.apiServerInternalURI points to. It is the IP for a self-hosted load balancer in front of the API servers.", + "ingressIP": "ingressIP is an external IP which routes to the default ingress controller. The IP is a suitable target of a wildcard DNS record used to resolve default route host names.", + "nodeDNSIP": "nodeDNSIP is the IP address for the internal DNS used by the nodes. Unlike the one managed by the DNS operator, `NodeDNSIP` provides name resolution for the nodes themselves. There is no DNS-as-a-service for BareMetal deployments. In order to minimize necessary changes to the datacenter DNS, a DNS service is hosted as a static pod to serve those hostnames to the nodes in the cluster.", + "provisioningInterface": "provisioningInterface is the name of the network interface on a Baremetal server connected to the provisioning network.", + "provisioningIP": "provisioningIP is the IP address assigned to the provisioningInterface for provisioning the baremetal node. This IP address should be within the provisioning subnet, and outside of the DHCP range.", + "provisioningNetworkCIDR": "provisioningNetworkCIDR is the network on which the baremetal nodes are provisioned. The provisioningIP and the IPs in the dhcpRange all come from within this network.", + "dhcpRange": "dhcpRange is the IP address range on the provisioning subnet from which baremetal hosts can be assigned an IP address.", + "cacheURL": "cacheURL is the location where images have been previously downloaded and available for faster image downloads within the cluster.", + "rhcosImageURL": "rhcosImageURL is the URL for RHCOS Image for deploying new nodes in the cluster.", } func (BareMetalPlatformStatus) SwaggerDoc() map[string]string {