Commit Graph

59 Commits

Author SHA1 Message Date
Furkat Gofurov 839c75f722
Fix nil point dereference in `updateStatus` method
Signed-off-by: Furkat Gofurov <furkat.gofurov@suse.com>
2025-04-30 18:37:38 +03:00
Furkat Gofurov 2479d29ffc
Merge pull request #624 from andybavier/concurrency
Enable concurrency in controllers
2025-04-23 09:13:12 +00:00
Andy Bavier ee0a8295b2
Enable concurrency in controllers 2025-04-22 08:08:53 -07:00
Furkat Gofurov 149e533a93
In-place propagation support for RKE2ControlPlane
Signed-off-by: Furkat Gofurov <furkat.gofurov@suse.com>
2025-04-18 19:50:31 +03:00
Andrea Mazzotti 3ad0b591ae
Bump golangci-lint to v2
Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>
2025-04-08 09:06:01 +02:00
Alexandr Demicev 5baa17c801
Fix all linter warnings
Signed-off-by: Alexandr Demicev <alexandr.demicev@suse.com>
2025-03-20 12:52:07 +01:00
Alexandr Demicev 694ecd1429
Fix linter warning and import order
Signed-off-by: Alexandr Demicev <alexandr.demicev@suse.com>
2025-01-08 17:15:08 +01:00
Tim Treptow 3325dd0b82
Rotate kubeconfig before it expires 2025-01-08 17:14:26 +01:00
Danil-Grigorev 40fb968264
Migrate to cluster cache from deprecated remote.ClusterCacheTracker
Signed-off-by: Danil-Grigorev <danil.grigorev@suse.com>
2024-12-20 12:59:40 +01:00
Alexandr Demicev 4058bb4aa4
Set control plane version in status
Signed-off-by: Alexandr Demicev <alexandr.demicev@suse.com>
2024-11-27 14:44:05 +01:00
Furkat Gofurov 4ff91e622c
Pass clusterCacheTrackerClientQPS/clusterCacheTrackerClientBurst to manager
Signed-off-by: Furkat Gofurov <furkat.gofurov@suse.com>
2024-11-12 14:19:24 +02:00
Furkat Gofurov 8219e8de82
Bump CAPI to v1.8.5
Signed-off-by: Furkat Gofurov <furkat.gofurov@suse.com>
2024-11-12 14:19:22 +02:00
Danil-Grigorev 08354a09c6
Fix: remove pre-terminate drain hook for legacy CP
Signed-off-by: Danil-Grigorev <danil.grigorev@suse.com>
2024-10-08 19:27:11 +02:00
Danil-Grigorev 8591e588c6
Skip etcd membership management for legacy annotated clusters
Signed-off-by: Danil-Grigorev <danil.grigorev@suse.com>
2024-10-07 13:03:26 +02:00
Danil-Grigorev f669e0c74a
Allow to distingish legacy CP without etcd management via annotation
Signed-off-by: Danil-Grigorev <danil.grigorev@suse.com>
2024-10-04 09:05:43 +02:00
Danil-Grigorev 623c87e8d0
Ensure draining is done last
RKE2 uses kubelet local mode

Signed-off-by: Danil-Grigorev <danil.grigorev@suse.com>
2024-09-19 13:56:05 +02:00
Danil-Grigorev fc6f21d813
Ensure running machines always contain hook annoation
Signed-off-by: Danil-Grigorev <danil.grigorev@suse.com>
2024-09-16 11:07:20 +02:00
Danil-Grigorev ed7e46764f
Ensure last machine removed does not wait for hook
When the last machine is in a deleting state, this means that cluster is
removed also. In such scenario, waiting for draining is not feasible,
because it is performes only when node deletion is allowed. Which is
not, due to cluster removal. Cluster API prevents draining with the
"cluster is being deleted" error.

Signed-off-by: Danil-Grigorev <danil.grigorev@suse.com>
2024-09-16 11:02:51 +02:00
Danil-Grigorev 931e7cc55a
Propagate PreTerminateHookCleanupAnnotation on old machines
- Lint fixes

Signed-off-by: Danil-Grigorev <danil.grigorev@suse.com>
2024-09-16 11:02:51 +02:00
Danil-Grigorev 679d205149
Implement etcd member management in pre-terminate hook
Signed-off-by: Danil-Grigorev <danil.grigorev@suse.com>
2024-09-16 11:02:51 +02:00
Furkat Gofurov ece3d2467a
Rename CAPRKE2 org references in the codebase
Signed-off-by: Furkat Gofurov <furkat.gofurov@suse.com>
2024-07-11 13:14:48 +03:00
Danil Grigorev c66e9b990c
Review and update incorrectly returned results
Signed-off-by: Danil Grigorev <danil.grigorev@suse.com>
2024-05-17 15:12:56 +02:00
Danil Grigorev 45a54b8d92
Merge pull request #313 from Danil-Grigorev/convert-agent-version-to-cp-version
🐛 Add old AgentConfig version conversion in favor of a new field
2024-05-13 10:57:40 +02:00
Michele Bologna 7f2096e5b7
Merge pull request #302 from anmazzotti/set_control_plane_initialized
Check rke2-serving secret to determine controlPlane.Status.Initialized
2024-05-06 12:03:43 +02:00
Danil Grigorev 86025754c0
Remove kubebuilder defaults to make API GitOps friendly
Signed-off-by: Danil Grigorev <danil.grigorev@suse.com>
2024-05-02 11:35:27 +02:00
Alexandr Demicev 5d61aceaa7
Use spec.Version field as primarily source
Signed-off-by: Alexandr Demicev <alexandr.demicev@suse.com>
2024-04-26 15:00:24 +02:00
Andrea Mazzotti 8b643b3f4b
Check rke2-serving secret to determine controlPlane.Status.Initialized
Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>
2024-04-19 16:52:25 +02:00
Danil Grigorev 9025c940c4
Update licences and fix lint errors
Signed-off-by: Danil Grigorev <danil.grigorev@suse.com>
2024-04-12 12:30:48 +02:00
Danil Grigorev dc58a8b3e7
Add etcd certificate generation
Signed-off-by: Danil Grigorev <danil.grigorev@suse.com>
2024-04-09 08:30:14 +02:00
Danil Grigorev 6fc88d9288
Fix linter errors
Signed-off-by: Danil Grigorev <danil.grigorev@suse.com>
2024-04-08 21:35:56 +02:00
Danil Grigorev 287254ad85
Add tests for etcd management
Signed-off-by: Danil Grigorev <danil.grigorev@suse.com>
2024-04-08 21:35:56 +02:00
Danil Grigorev 759d835f62
Fetch external certificate from child cluster
Signed-off-by: Danil Grigorev <danil.grigorev@suse.com>
2024-04-08 21:35:55 +02:00
Danil Grigorev f5d65f1eb9
Add etcd membeship change logic for etcd scale down scenarios
Signed-off-by: Danil Grigorev <danil.grigorev@suse.com>
2024-04-08 21:35:53 +02:00
Furkat Gofurov 0402c6eeea
Fix lint issues in the codebase
Signed-off-by: Furkat Gofurov <furkat.gofurov@suse.com>
2024-03-19 17:24:46 +02:00
Furkat Gofurov 400e4d9f8b
Improve patch helper error handling
Signed-off-by: Furkat Gofurov <furkat.gofurov@suse.com>
2024-03-19 14:54:30 +02:00
Richard Case 0f98d5f775
feat: added control plane endpoint registration method
This adds a new registration method that will use the **host** from the
control plane endpoint set on the **Cluster**.

Signed-off-by: Richard Case <richard.case@suse.com>
2024-03-18 11:41:34 +00:00
Carlos Salas 0b62188aaa
feat: add support for cluster class
Signed-off-by: Carlos Salas <carlos.salas@suse.com>
2024-02-23 18:12:52 +01:00
Danil Grigorev dc7c307123
Rename v1alpha2 to v1beta1
Signed-off-by: Danil Grigorev <danil.grigorev@suse.com>
2024-01-08 13:18:49 +01:00
Danil Grigorev c8762be772
Introduce v1alpha2 api version
Signed-off-by: Danil Grigorev <danil.grigorev@suse.com>
2024-01-08 13:03:26 +01:00
Richard Case 37320aebff
chore: comment changes from review
Signed-off-by: Richard Case <richard.case@outlook.com>
2023-11-16 21:06:45 +01:00
Richard Case b2904bd585
fix: change to ensure maxsurge=0 and 1 after testing
Signed-off-by: Richard Case <richard.case@outlook.com>
2023-11-16 17:31:37 +01:00
Alexandr Demicev aff415beaa
Add maxsurge option for control plane upgrade
Signed-off-by: Alexandr Demicev <alexandr.demicev@suse.com>
2023-11-16 13:25:48 +01:00
Danil Grigorev db08f5556f
Implement metadata propagation on the workload cluster nodes
Signed-off-by: Danil Grigorev <danil.grigorev@suse.com>
2023-10-30 16:49:53 +01:00
Alexandr Demicev 85372d9be5
Fix breaking changes after updating dependecies
Signed-off-by: Alexandr Demicev <alexandr.demicev@suse.com>
2023-10-11 12:16:58 +02:00
Richard Case 6c07719274
feat: support different registration methods
This adds support for different ways to register new nodes into the
cluster.

Signed-off-by: Richard Case <richard.case@outlook.com>
2023-06-15 15:33:45 +01:00
Luis Rascão 1d27bb4c2c
Improve e2e tests (#133)
* e2e: add low number of file descriptors helper tip

Signed-off-by: Luis Rascao <luis.rascao@gmail.com>

* controplane: don't fail status update when no machines available/ready

Failing prevents requeing leading to high bootstrap times of the
controlplane, in most cases the machine is ready and with IP addresses
but the controller is waiting for a full sync.

Signed-off-by: Luis Rascao <luis.rascao@gmail.com>

---------

Signed-off-by: Luis Rascao <luis.rascao@gmail.com>
2023-05-16 15:34:17 +02:00
Mohamed Belgaied Hassine 90e5619a1f
Implemented possibility to use Multus CNI, fixes #103 (#132)
improved some logging

fixed small issue related to the change in the way CNI field is handled

Fixing comments for validate func in webhook

Cleaning up multus RKE2-on-CAPD manifests

updated godoc comment on API field for rke2controlplane

Removed unnecessary comment in external AWS templates

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>
2023-05-16 15:32:54 +02:00
Mohamed Belgaied Hassine 6808c7580b
Fixing issue with disableComponents fields in RKE2ControlPlane, fixes #128 (#130)
Fix linting

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>
2023-05-09 12:15:48 +02:00
Mohamed Belgaied Hassine fc445b63b8
fixed linting issues (first pass)
Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>

make generate afte minor fixes to API descriptions

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>

fixed some regressions from refactoring

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>

changed timeout value for golanci-lint GH action, because it was failing

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>
2023-03-10 12:58:16 +00:00
Mohamed Belgaied Hassine 09add13e83
moved cloud-init package to bootstrap/internal and did some cleanup
Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>

Revert "code cleanup, removing unnecessary takeovers. removing some references to Kubeadm provider code"

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>

change verbosity level

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>

updated matching RKE2Config of the machine with new ControlPlane

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>

implemented registries.yaml files for workers, cp might be problematic in this impl

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>

Fixing issues around registries.yaml for control plane nodes

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>

implemented manifests feature, still to be tested!

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>

small fixes and adding AWS sample

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>

small fixes and adding AWS sample

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>

testing aws -- not working providerID

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>

testing aws -- not working providerID

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>

Fixing some AWS testing using templates

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>

Fixed several issues when deploying with AWS external cloud provider

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>

implemented NTP configuration

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>

implemented review comments

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>

Fixed typo on registry rewrites and endpoints

Signed-off-by: Mohamed Belgaied Hassine <belgaied2@hotmail.com>
2023-02-15 17:11:44 +00:00