Skip to content

Commit

Permalink
[release-1.7] 🌱 Add Tinkerbell to the providers list (#10516)
Browse files Browse the repository at this point in the history
* Add Tinkerbell to the providers list

* Add Tinkerbell docs

* Update TinkerbellProviderName to conform with new naming scheme

---------

Co-authored-by: Oprin Marius <marius@oprin.ro>
  • Loading branch information
k8s-infra-cherrypick-robot and oprinmarius committed Apr 26, 2024
1 parent 2ddaa26 commit 42259d1
Show file tree
Hide file tree
Showing 7 changed files with 28 additions and 1 deletion.
6 changes: 6 additions & 0 deletions cmd/clusterctl/client/config/providers_client.go
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ const (
OCIProviderName = "oci"
OpenStackProviderName = "openstack"
PacketProviderName = "packet"
TinkerbellProviderName = "tinkerbell-tinkerbell"
SideroProviderName = "sidero"
VCloudDirectorProviderName = "vcd"
VSphereProviderName = "vsphere"
Expand Down Expand Up @@ -191,6 +192,11 @@ func (p *providersClient) defaults() []Provider {
url: "https://github.com/kubernetes-sigs/cluster-api-provider-packet/releases/latest/infrastructure-components.yaml",
providerType: clusterctlv1.InfrastructureProviderType,
},
&provider{
name: TinkerbellProviderName,
url: "https://github.com/tinkerbell/cluster-api-provider-tinkerbell/releases/latest/infrastructure-components.yaml",
providerType: clusterctlv1.InfrastructureProviderType,
},
&provider{
name: Metal3ProviderName,
url: "https://github.com/metal3-io/cluster-api-provider-metal3/releases/latest/infrastructure-components.yaml",
Expand Down
2 changes: 2 additions & 0 deletions cmd/clusterctl/client/config_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,7 @@ func Test_clusterctlClient_GetProvidersConfig(t *testing.T) {
config.PacketProviderName,
config.ProxmoxProviderName,
config.SideroProviderName,
config.TinkerbellProviderName,
config.VCloudDirectorProviderName,
config.VclusterProviderName,
config.VirtinkProviderName,
Expand Down Expand Up @@ -159,6 +160,7 @@ func Test_clusterctlClient_GetProvidersConfig(t *testing.T) {
config.PacketProviderName,
config.ProxmoxProviderName,
config.SideroProviderName,
config.TinkerbellProviderName,
config.VCloudDirectorProviderName,
config.VclusterProviderName,
config.VirtinkProviderName,
Expand Down
5 changes: 5 additions & 0 deletions cmd/clusterctl/cmd/config_repositories_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,7 @@ outscale InfrastructureProvider https://github.com/outscale/clu
packet InfrastructureProvider https://github.com/kubernetes-sigs/cluster-api-provider-packet/releases/latest/ infrastructure-components.yaml
proxmox InfrastructureProvider https://github.com/ionos-cloud/cluster-api-provider-proxmox/releases/latest/ infrastructure-components.yaml
sidero InfrastructureProvider https://github.com/siderolabs/sidero/releases/latest/ infrastructure-components.yaml
tinkerbell-tinkerbell InfrastructureProvider https://github.com/tinkerbell/cluster-api-provider-tinkerbell/releases/latest/ infrastructure-components.yaml
vcd InfrastructureProvider https://github.com/vmware/cluster-api-provider-cloud-director/releases/latest/ infrastructure-components.yaml
vcluster InfrastructureProvider https://github.com/loft-sh/cluster-api-provider-vcluster/releases/latest/ infrastructure-components.yaml
virtink InfrastructureProvider https://github.com/smartxworks/cluster-api-provider-virtink/releases/latest/ infrastructure-components.yaml
Expand Down Expand Up @@ -336,6 +337,10 @@ var expectedOutputYaml = `- File: core_components.yaml
Name: sidero
ProviderType: InfrastructureProvider
URL: https://github.com/siderolabs/sidero/releases/latest/
- File: infrastructure-components.yaml
Name: tinkerbell-tinkerbell
ProviderType: InfrastructureProvider
URL: https://github.com/tinkerbell/cluster-api-provider-tinkerbell/releases/latest/
- File: infrastructure-components.yaml
Name: vcd
ProviderType: InfrastructureProvider
Expand Down
1 change: 1 addition & 0 deletions docs/book/src/clusterctl/provider-contract.md
Original file line number Diff line number Diff line change
Expand Up @@ -330,6 +330,7 @@ providers.
| CAPO | cluster.x-k8s.io/provider=infrastructure-openstack |
| CAPOCI | cluster.x-k8s.io/provider=infrastructure-oci |
| CAPP | cluster.x-k8s.io/provider=infrastructure-packet |
| CAPT | cluster.x-k8s.io/provider=infrastructure-tinkerbell |
| CAPV | cluster.x-k8s.io/provider=infrastructure-vsphere |
| CAPVC | cluster.x-k8s.io/provider=infrastructure-vcluster |
| CAPVCD | cluster.x-k8s.io/provider=infrastructure-vcd |
Expand Down
3 changes: 3 additions & 0 deletions docs/book/src/reference/glossary.md
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,9 @@ Cluster API Provider Outscale
### CAPOCI
Cluster API Provider Oracle Cloud Infrastructure (OCI)

### CAPT
Cluster API Provider Tinkerbell

### CAPV
Cluster API Provider vSphere

Expand Down
11 changes: 10 additions & 1 deletion docs/book/src/user/quick-start.md
Original file line number Diff line number Diff line change
Expand Up @@ -861,7 +861,7 @@ before configuring a cluster with Cluster API. Instructions are provided for com
Otherwise, you can look at the `clusterctl generate cluster` [command][clusterctl generate cluster] documentation for details about how to
discover the list of variables required by a cluster templates.
{{#tabs name:"tab-configuration-infrastructure" tabs:"Akamai (Linode),AWS,Azure,CloudStack,DigitalOcean,Docker,Equinix Metal,GCP,IBM Cloud,K0smotron,KubeKey,KubeVirt,Metal3,Nutanix,OpenStack,Outscale,Proxmox,VCD,vcluster,Virtink,vSphere"}}
{{#tabs name:"tab-configuration-infrastructure" tabs:"Akamai (Linode),AWS,Azure,CloudStack,DigitalOcean,Docker,Equinix Metal,GCP,IBM Cloud,K0smotron,KubeKey,KubeVirt,Metal3,Nutanix,OpenStack,Outscale,Proxmox,Tinkerbell,VCD,vcluster,Virtink,vSphere"}}
{{#tab Akamai (Linode)}}
```bash
Expand Down Expand Up @@ -1241,6 +1241,14 @@ export ALLOWED_NODES="[pve1,pve2,pve3]"
For more information about prerequisites and advanced setups for Proxmox, see the [Proxmox getting started guide].
{{#/tab }}
{{#tab Tinkerbell}}
```bash
export TINKERBELL_IP=<hegel ip>
```
For more information please visit [Tinkerbell getting started guide].
{{#/tab }}
{{#tab VCD}}
Expand Down Expand Up @@ -1763,3 +1771,4 @@ kind delete cluster
[workload cluster]: ../reference/glossary.md#workload-cluster
[CAPI Operator quickstart]: ./quick-start-operator.md
[Proxmox getting started guide]: https://github.com/ionos-cloud/cluster-api-provider-proxmox/blob/main/docs/Usage.md
[Tinkerbell getting started guide]: https://github.com/tinkerbell/cluster-api-provider-tinkerbell/blob/main/docs/QUICK-START.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ var (
"kubernetes-sigs/cluster-api-provider-openstack",
"kubernetes-sigs/cluster-api-operator",
"kubernetes-sigs/cluster-api-provider-packet",
"tinkerbell/cluster-api-provider-tinkerbell",
"kubernetes-sigs/cluster-api-provider-vsphere",
"metal3-io/cluster-api-provider-metal3",
}
Expand Down

0 comments on commit 42259d1

Please sign in to comment.