Peter Rifel
c98fb47eb8
Merge conditional boolean assignments
2025-08-22 20:56:53 -05:00
justinsb
3f25b1eee1
metal: split host creation from enrollment
...
This is needeed for bootstrapping the control plane,
because it's a CRD so can't be registered until the control plane is running.
It's also quite nice because we might want to review the contents of the
host CRD, e.g. to verify the key out-of-band.
2025-07-26 20:01:12 -04:00
justinsb
05f8618306
metal: simple IPAM for IPv6
2025-07-26 20:01:12 -04:00
justinsb
138e14b1ad
Create flag override-api-endpoint which allows for custom DNS setups
...
Issue #17262
2025-06-28 17:39:56 -04:00
Arnaud Meukam
3ee34d37d9
toolbox: ensure SSH keys are loaded
...
Ensure `kops toolbox enroll` verify if SSH keys are loaded before
authenticate to the host.
Signed-off-by: Arnaud Meukam <ameukam@gmail.com>
2025-04-07 22:15:06 +02:00
justinsb
beb5cc5ac5
metal: copy control plane config to nodes
...
This avoids the needs for these nodes to have access to the state store.
* We no longer need S3/GCS credentials on the node.
* We don't depend on S3/GCS being reachable from the control
plane - at least here!
2025-02-20 12:23:16 -05:00
justinsb
859a9fd9f1
chore: refactor factory to accept a cluster
...
This should allow us to build our own rest config in future,
rather than relying on the kubeconfig being configured correctly.
To do this, we need to stop sharing the factory between the channels
and kops commands.
2024-12-27 15:36:37 -05:00
justinsb
49de7d6648
refactor: build assets for kubernetes and nodeup explicitly
...
Also remove the (potentially) confusing FileAssets type.
2024-11-24 18:29:42 -05:00
justinsb
0963d73cc5
metal: initial support for adding hosts
...
The bulk of this work is implementing a clientset for use in kops-controller.
2024-09-18 09:03:43 -04:00
justinsb
4946176e4e
Refactor: make bootstrap-data building more reusable
...
Export from the current package (we can always move it later), and
move it to an on-demand processing model to enable use in more
scenarios.
2024-09-16 12:10:02 -04:00
justinsb
623ae0672c
metal: copy static manifests to the control plane
...
Used by the kube-apiserver healthcheck.
2024-09-14 13:09:45 -04:00
justinsb
a65bb16a38
metal: support `kops toolbox enroll` on a control-plane machine
...
In particular, we want to build the full cluster and instance group.
The control plane does not yet start, because etcd is not configured correctly.
2024-08-31 07:14:47 -04:00
justinsb
6e036b39c2
refactor: move more nodeup script logic to NodeUpScript
...
This enables simpler reuse.
2024-08-30 09:14:49 -04:00
justinsb
3646a610b1
refactor: Move GetCloudProvider to cluster
...
This lets us use labels (or annotations), meaning we can experiment
with different clouds without changing the API.
We also add initial (experimental/undocumented) support for exposing a "Metal" provider.
2024-08-26 08:20:37 -04:00
justinsb
192b880434
chore: refactor MirroredAsset into assets
...
This seems logically coherent, and is part of the work to start using
compiled-in hashes for most well-known assets.
2024-03-30 10:34:27 -04:00
justinsb
5afc86d1a8
Refactor: Move nodeUpConfigBuilder to nodemodel
...
Another big chunk of node code out of cloudup!
2024-03-28 09:11:38 -04:00
justinsb
e5d5175e08
refactor: isolate asset construction out of cloudup
...
Continuing the node/infra splitting.
2024-03-28 08:04:46 -04:00
justinsb
50776a7e92
Refactor ForAPIServer
...
We instead return a list of the services we are supporting.
We can in future split out internal and external apiserver services.
2024-01-12 15:53:41 -05:00
justinsb
d5e55e4f8e
feat: kops toolbox enroll command
...
Implement the enroll command, to add a node to an existing cluster.
This is intended to be used with (experimental) metal support.
2023-12-02 17:48:34 -05:00