12 Commits

Author SHA1 Message Date
Andrey Smirnov
01981eb1c6
feat: update Talos to 1.6.0
Also update CAPI to 1.6.0.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2023-12-15 17:59:33 +04:00
Andrey Smirnov
baaece89a6
feat: update for Talos 1.5.0
Bump CAPI, controller-runtime, Talos dependencies, Kubernetes.

Fix some compatibility issues, but should be no functional changes.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2023-08-22 15:20:43 +04:00
Andrey Smirnov
9121a3b7d5
chore: bump dependencies
CAPI, controller-runtime, Talos, etc.

Fix linting issues.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2023-04-05 16:27:41 +04:00
Andrey Smirnov
fbcd02a45d
feat: update for Talos 1.3.0
Rename to siderolabs, bump dependencies, controller-runtime, get rid of
netaddr, new SideroLink API, etc.

Use bootstrap cluster with a control plane + worker to avoid nasty
restarts when host-mode SideroLink IP pops up.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-12-16 16:35:30 +04:00
Andrey Smirnov
7c7a377857
feat: add extended hardware information to Server and ServerClass CRDs
This is final part of #735, previous part in #823.

This imports all remaining changes with some fixups minus the webhook
changes.

This change adds detailed hardware information to the Server CRD.
Hardware info is extracted by the agent from SMBIOS.
The ServerClass CRD is also updated so more precise qualifiers can be used.

Co-authored-by: Gerard de Leeuw <gdeleeuw@leeuwit.nl>
Signed-off-by: Gerard de Leeuw <gdeleeuw@leeuwit.nl>
Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-15 20:43:07 +03:00
Andrey Smirnov
061ee8e57d
refactor: remove pre-ServerBinding leftovers, use remote cached clients
This PR has two major changes:

* retire the code which supported seamless migration from
pre-ServerBinding era to ServerBindings: creating `ServerBinding` on the
fly from the `MetalMachine` and `Server`; as there's no migration path
from pre-ServerBinding Sidero to the new version, it's time to drop it
* instead of creating workload cluster Kubernetes client each time, use
CAPI standard class to cache the client; the problem with "leaking"
clients is that HTTP/2 clients are almost never gc'ed, so they stay in
memory keeping an open connection with keepalives going both ways, so
caching lowers the load both on the controller and the control plane
endpoint

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-12 22:35:46 +03:00
Gerard de Leeuw
15f67308f0
chore: use consistent naming for imports
Imports should be consistently named so future changes are more readable and easier to understand.

Signed-off-by: Gerard de Leeuw <gdeleeuw@leeuwit.nl>
Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-31 17:14:17 +03:00
Artem Chernyshev
fe41335457
feat: introduce new conditions in the metalmachine
- `TalosConfigLoaded` is set to false when the config load has failed.
- `TalosConfigValidated` is set to false when the config validation
fails on the node.
- `TalosInstalled` is set to true/false when talos installer finishes.

All conditions are set by the adapter on the `ServerBinding`, then
copied to the `MetalMachine`.

Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2021-12-29 15:42:08 +03:00
Artem Chernyshev
6454dee29c
feat: populate addresses and hostname in ServerBindings
Get addresses from the events coming into events sink container.

Add v1beta1 support.
Update `metalmachine_controller` to set providerID earlier and add
ProviderSet condition to be set after the cluster nodes actually get
patched with the provider ID as well.

The condition is required to trigger reconcile on CAPI `machines`,
otherwise it never picks `Node` ready condition.

Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2021-12-27 14:55:18 +03:00
Gerard de Leeuw
bb52e71861
feat: support CAPI v1alpha4
This PR will add all of the changes necessary for supporting CAPI v1alpha4 resources.

Signed-off-by: Gerard de Leeuw <gdeleeuw@leeuwit.nl>
Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2021-10-08 23:09:26 +03:00
Andrey Smirnov
90e7804640 chore: bump dependencies in go.mod
This also bumps cluster-api version to the latest 0.3 release.

Closes #476 #484 #486 #487 #490 #491 #492 #493

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-07-06 13:51:10 -07:00
Spencer Smith
6821dd2c0a feat: update paths of apps
This PR updates the naming of the two apps that make up sidero for
consistency. It also updates things like the Makefile, Dockerfile, and
kustomize to make sure image names are the same as these app names.

Signed-off-by: Spencer Smith <robertspencersmith@gmail.com>
2021-05-26 10:36:02 -07:00