Commit Graph

101 Commits

Author SHA1 Message Date
Andrea Mazzotti fcbb5bc8b5
[fix] Return error on missing k8s version
Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>
2025-09-24 16:49:32 +02:00
Andrea Mazzotti b5d5f5ed5a
Fix conditions formatting
Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>
2025-08-28 13:48:40 +02:00
Parthvi Vala 9206024b77
Add defaulter to RKE2ConfigTemplate webhook; move ignored fields
deletion to webhook function

Co-authored-by: Andrea Mazzotti <andrea.mazzotti@suse.com>
Signed-off-by: Parthvi Vala <parthvi.vala@suse.com>
2025-08-26 15:01:09 +05:30
Parthvi Vala 40b7c21135
Add the correction to RCP and RCPTemplate
Signed-off-by: Parthvi Vala <parthvi.vala@suse.com>
2025-08-21 18:54:22 +05:30
Parthvi Vala 0d2c3754df
Add unit test
Signed-off-by: Parthvi Vala <parthvi.vala@suse.com>
2025-08-21 18:54:12 +05:30
Parthvi Vala beee8a6bfa
Move the cleanup code to webhook
Signed-off-by: Parthvi Vala <parthvi.vala@suse.com>
2025-08-21 18:54:05 +05:30
Parthvi Vala 0abbd4ad0e
Change Secret and Config FileSourceRef to pointer
Signed-off-by: Parthvi Vala <parthvi.vala@suse.com>
2025-07-23 12:27:13 +05:30
Parthvi Vala 53e97f43f5
fix linter failure 2025-07-17 18:51:36 +05:30
Parthvi Vala 1700178b0c
Add conversion functions
Signed-off-by: Parthvi Vala <parthvi.vala@suse.com>
2025-07-16 15:50:33 +05:30
Parthvi Vala d5d4478aa9
Change SecretFileSource and ConfigMapFileSource to single FileSourceRef
Signed-off-by: Parthvi Vala <parthvi.vala@suse.com>
2025-07-16 11:59:28 +05:30
Parthvi Vala b7f3811142
Add ConfigMap support as FileSource 2025-07-11 22:27:52 +05:30
Furkat Gofurov c0179a2c1b
Do not default GzipUserData field to false in the webhook
Signed-off-by: Furkat Gofurov <furkat.gofurov@suse.com>
2025-07-03 11:40:54 +03:00
Furkat Gofurov 9c7e908097
Handle ignition compression for Ignition format
Signed-off-by: Furkat Gofurov <furkat.gofurov@suse.com>
Authored-by: @zioc
2025-07-02 14:43:41 +03:00
Furkat Gofurov 45c55cace3
Drop unnecessary nil check
Signed-off-by: Furkat Gofurov <furkat.gofurov@suse.com>
2025-07-02 14:43:41 +03:00
Furkat Gofurov 25d066d971
Add a new `gzipUserData` boolean API field in `RKE2ConfigSpec`
Signed-off-by: Furkat Gofurov <furkat.gofurov@suse.com>
2025-07-02 14:41:43 +03:00
Matthew Boedicker 701b40f50e
Pass AdditionalUserData.Data to NewJoinControlPlane
The same way it's passed to NewInitControlPlane.

Fixes #677.
2025-06-24 13:18:06 -07:00
Carlos Salas 0abf292041
chore: align code structure to latest linter spec
Signed-off-by: Carlos Salas <carlos.salas@suse.com>
2025-05-27 10:32:40 +02:00
Dirk Müller 6735d99f6b
Simplify service start
systemctl enable + systemctl start can be combined into one. also
move it after the restorecon. This potentially allows dropping the
setenforce disablement

Signed-off-by: Dirk Müller <dmueller@suse.com>
2025-05-23 14:48:03 +02:00
Dirk Müller ec972f0103
drop semanage call on nonexisting service
the rke2 install script installs the service in /etc/systemd/service
and the restorecon call already sets the proper context on it (but since
we start the service beforehand, that doesn't seem to be necessary..).

semanage(1) isn't always preinstalled in the operating system image, and
if this service exists, the relabeling at boot will restore the context.

Signed-off-by: Dirk Müller <dmueller@suse.com>
2025-05-22 14:28:13 +02:00
Dinar Valeev 4ee21dfdc9
Move sshd config into included subdir
By writing into /etc/ssh/sshd_config we override default config which
usually defines include /etc/ssh/sshd_config.d/*.conf. This breaks an
ability to cusomize config further. And disables include any files dropped
into sshd_config.d directory.

This commit moves RKE2 sshd config into subdirectory with 010 index
so it will be loaded first.

Signed-off-by: Dinar Valeev <k0da@opensuse.org>
2025-05-06 12:36:45 +02:00
Dinar Valeev 7fcabf3980
Render rke2-install without semanage for flatcar
Signed-off-by: Dinar Valeev <k0da@opensuse.org>
2025-04-29 15:28:32 +02:00
Dinar Valeev 21f04a095c
Ignition: Don't add /opt fs on flatcar
Signed-off-by: Dinar Valeev <k0da@opensuse.org>
2025-04-24 13:24:45 +02: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
Alexander Demicev d6992a93ef
Merge pull request #595 from rancher/dependabot/go_modules/golang.org/x/net-0.36.0
chore(deps): Bump golang.org/x/net from 0.33.0 to 0.36.0
2025-03-21 11:08:51 +00: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
Max Fedotov 1b561ebe80
use RegistrationAddress for first controlPlane node if it is specified 2025-03-17 22:38:06 +01:00
Andrea Mazzotti ef1a157fe8
MachinePool support
Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>
2025-02-26 15:57:57 +01:00
Furkat Gofurov 481c11ece3
Fix linting issues in the codebase
Signed-off-by: Furkat Gofurov <furkat.gofurov@suse.com>
2025-02-21 13:48:48 +02:00
Alexandr Demicev 7268382f04
Add indentation to generated RKE2 config
Signed-off-by: Alexandr Demicev <alexandr.demicev@suse.com>
2025-01-10 10:59:40 +01:00
Danil-Grigorev 24ca266052
Format additionalUserData maps and lists to ensure correct YAML output
Signed-off-by: Danil-Grigorev <danil.grigorev@suse.com>
2025-01-09 14:59:10 +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
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
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 961690dcb4
Always use CAPI generated certificates for etcd management
- Perform etcd memebership management only when the local certificates
  were created, and skip otherwise.

Signed-off-by: Danil-Grigorev <danil.grigorev@suse.com>
2024-10-02 15:24:18 +02:00
Steven Hardy 63e6500c62
bootstrap: switch to chrony for ignition config
Leap/SLEMicro don't include ntpd so the current approach doesn't work
2024-09-11 17:21:18 +01:00
Furkat Gofurov bc6cb163b1
Merge pull request #402 from hardys/issues/401 2024-08-23 16:51:00 +03:00
Steven Hardy e7be901d32
ignition: mount /opt subvolume
This is not mounted by default, therefore we cannot write the
/opt/rke2-cis-script.sh script.

So add configuration to mount the subvolume, as described in
https://en.opensuse.org/Portal:MicroOS/Ignition#Mounts

Signed-off-by: Steven Hardy <steven.hardy@suse.com>
2024-08-23 11:46:43 +01:00
Steven Hardy 7a87cd46fc
Ignition: move rke2-cis-script.sh to after RKE2 install
Otherwise the script fails, this aligns with how the cloud-init
script works.

Signed-off-by: Steven Hardy <steven.hardy@suse.com>
2024-08-23 11:46:43 +01:00
Steven Hardy 9859c5adb5
Overwrite files with format: ignition
This aligns with the default cloud-init behavior and enables e.g
overwriting distro-default files via RKE2ConfigTemplate using the
spec.template.spec.files API.

Signed-off-by: Steven Hardy <steven.hardy@suse.com>
2024-08-23 11:35:19 +01:00
Simplysoft GmbH 1412bb82cf
fix: use absolute path to rke2's kubectl binary
ensures that cluster-etcd secret can be created if host does not have kubectl installed

fixes #403

Signed-off-by: Simplysoft GmbH <1588210+simplysoft@users.noreply.github.com>
2024-08-13 16:11:29 +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
Alberto Morgante Medina b3e4e9c35f
fix issue with rke2-install
Signed-off-by: Alberto Morgante Medina <alberto.morgante@suse.com>
2024-07-01 16:28:38 +02:00
Danil Grigorev 98db7f6864
Merge pull request #325 from Danil-Grigorev/re-rollout-cp-on-commands-change
🐛 Check MachineConfig spec for full equality with Rke2CPSpec
2024-05-20 18:46:40 +02: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 da42f22baf
Check MachineConfig spec for full equality with Rke2CPSpec
Signed-off-by: Danil Grigorev <danil.grigorev@suse.com>
2024-05-17 10:28:57 +02:00
Danil Grigorev 3b188c99c6
Add airGappedChecksum field to check workload version before rollout
Signed-off-by: Danil Grigorev <danil.grigorev@suse.com>
2024-05-14 11:05:27 +02:00
Danil Grigorev 91e7b0b910
Add AgentConfig version conversion in favor of a new field
Signed-off-by: Danil Grigorev <danil.grigorev@suse.com>
2024-05-02 11:33:50 +02:00