29 Commits

Author SHA1 Message Date
Utku Ozdemir
26798512e8
chore: bump deps, rekres, Talos 1.12.6, Kubernetes 1.35.3
Bump all dependencies. Update default Talos version to 1.12.6 and default Kubernetes version to 1.35.3.

Signed-off-by: Utku Ozdemir <utku.ozdemir@siderolabs.com>
2026-03-24 10:33:53 +01:00
Artem Chernyshev
ada0360837
feat: add a way to sync Kubernetes manifests in Omni
Manifests support two modes:
- `FULL` - Omni will keep the manifest in sync always.
- `ONE_TIME` - Omni will apply the manifest only if it doesn't exist. If the manifest is removed by hand and then changed in Omni it will be applied too.

Manifests are applied using service side apply, Omni now has three inventories: `omni-internal-inventory`, `omni-user-inventory` and `omny-sync-one-time`:

- User inventory will be used for user managed manifests.
- Internal one will be used for the manifests which are created by Omni controllers (workloadproxy, advanced healtcheck service).
- One time inventory is used with NoPrune enabled. If the manifest is
  applied it's just removed from the list of applied manifests: that
  ensures that manifests changes are not going happen.

Manifests also support setting namespace to all namespaced resources. It might be useful for the huge manifest files which are supplied without the namespace (similar to `kubectl apply -n namespace -f manifest.yaml`).

Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2026-03-23 15:29:49 +03:00
Edward Sammut Alessi
433fe435db
chore: bump default talos version
Bump default talos version to 1.12.5

Signed-off-by: Edward Sammut Alessi <edward.sammutalessi@siderolabs.com>
2026-03-10 15:25:18 +01:00
Oguz Kilcan
1abd7ce6e9
chore: bump default talos version
Bump default talos version to 1.12.4

Signed-off-by: Oguz Kilcan <oguz.kilcan@siderolabs.com>
2026-02-19 14:28:32 +01:00
Utku Ozdemir
d1c869a9d8
chore: bump deps, rekres
Bump all dependencies.

Signed-off-by: Utku Ozdemir <utku.ozdemir@siderolabs.com>
2026-02-12 20:43:45 +01:00
Edward Sammut Alessi
d3ae77c0cc
chore: bump copyright to 2026
Bump copyright for conformance to 2026

Signed-off-by: Edward Sammut Alessi <edward.sammutalessi@siderolabs.com>
2026-01-21 15:30:49 +01:00
Oguz Kilcan
ef2d931aac
chore: rekres and bump deps
* Rekres
* Bump deps
* Update default versions for talos and kubernetes

Signed-off-by: Oguz Kilcan <oguz.kilcan@siderolabs.com>
2026-01-09 11:34:03 +01:00
Artem Chernyshev
728000c74a
refactor: extract ClusterMachineConfigStatusController into a module
Rewrite the tests, split the code to blocks. Clean up the core logic of
the controller to improve readability.

This is preparation work for adding graceful rollout code to the
controller.

Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2025-12-11 22:24:35 +03:00
Oguz Kilcan
bc2a5a9986
chore: prepare omni with talos v1.12.0-beta.1
Prepare omni for upcoming talos version 1.12.0-beta.1.

Signed-off-by: Oguz Kilcan <oguz.kilcan@siderolabs.com>
2025-12-06 16:55:35 +01:00
Utku Ozdemir
db97e09291
chore: bump Kubernetes version to 1.34.2
Updated the default Kubernetes version to 1.34.2 and adjusted related
version constants in the integration script and Go files.

Signed-off-by: Utku Ozdemir <utku.ozdemir@siderolabs.com>
2025-11-14 16:57:00 +01:00
Utku Ozdemir
7468e6ea02
chore: rekres, make linters happy, bump Go, deps and Talos versions
Bump Go to 1.25.4, default Talos version to 1.11.5.
Bump all Go dependencies.

Signed-off-by: Utku Ozdemir <utku.ozdemir@siderolabs.com>
2025-11-10 23:51:22 +01:00
Utku Ozdemir
d0c8b1666b
chore: bump Talos to 1.11.3, reorder CI workflow jobs
Make unit tests and lint run before the integration tests.

Signed-off-by: Utku Ozdemir <utku.ozdemir@siderolabs.com>
2025-10-17 13:30:35 +02:00
Oguz Kilcan
0d58ade7bf
feat: implement cluster import
Allow importing existing talos cluster to Omni using `omnictl cluster import`

Closes: #1315

Signed-off-by: Oguz Kilcan <oguz.kilcan@siderolabs.com>
2025-10-14 17:01:07 +02:00
Utku Ozdemir
c88503dcba
chore: bump default Talos version, deps, rekres, re-generate
Bump everything to appropriate versions. Remove some unused imports.

Signed-off-by: Utku Ozdemir <utku.ozdemir@siderolabs.com>
2025-10-13 11:23:45 +02:00
Utku Ozdemir
f1a0ce7218
chore: bump min Talos version
Some checks failed
default / default (push) Has been cancelled
default / e2e-backups (push) Has been cancelled
default / e2e-cluster-import (push) Has been cancelled
default / e2e-forced-removal (push) Has been cancelled
default / e2e-omni-upgrade (push) Has been cancelled
default / e2e-scaling (push) Has been cancelled
default / e2e-short (push) Has been cancelled
default / e2e-short-secureboot (push) Has been cancelled
default / e2e-templates (push) Has been cancelled
default / e2e-upgrades (push) Has been cancelled
default / e2e-workload-proxy (push) Has been cancelled
default / integration-test (push) Has been cancelled
default / lint (push) Has been cancelled
default / unit-tests (push) Has been cancelled
Bump min supported Talos version to be `1.6.0`. Enforce it on cluster creation and cluster Talos version updates.

Signed-off-by: Utku Ozdemir <utku.ozdemir@siderolabs.com>
2025-09-30 00:10:43 +02:00
Oguz Kilcan
9b5e552353
chore: rekres and bump deps
* Rekres
* Bump deps
* Update default versions for talos and kubernetes

Signed-off-by: Oguz Kilcan <oguz.kilcan@siderolabs.com>
2025-09-15 11:31:14 +02:00
Oguz Kilcan
c3b4f021a3
chore: rekres, bump talos and k8s versions
Some checks are pending
default / default (push) Waiting to run
default / e2e-backups (push) Blocked by required conditions
default / e2e-cluster-import (push) Blocked by required conditions
default / e2e-forced-removal (push) Blocked by required conditions
default / e2e-omni-upgrade (push) Blocked by required conditions
default / e2e-scaling (push) Blocked by required conditions
default / e2e-short (push) Blocked by required conditions
default / e2e-short-secureboot (push) Blocked by required conditions
default / e2e-templates (push) Blocked by required conditions
default / e2e-upgrades (push) Blocked by required conditions
default / e2e-workload-proxy (push) Blocked by required conditions
- Rekres, which brings slack notifications for failed CI pipelines on main and scheduled jobs.
- Bump default Talos and Kubernetes versions to their latest.

Signed-off-by: Oguz Kilcan <oguz.kilcan@siderolabs.com>
2025-08-05 14:25:57 +02:00
Utku Ozdemir
0e76483bab
chore: rekres, bump deps, Go, Talos and k8s versions, satisfy linters
Some checks failed
default / default (push) Has been cancelled
default / e2e-backups (push) Has been cancelled
default / e2e-forced-removal (push) Has been cancelled
default / e2e-omni-upgrade (push) Has been cancelled
default / e2e-scaling (push) Has been cancelled
default / e2e-short (push) Has been cancelled
default / e2e-short-secureboot (push) Has been cancelled
default / e2e-templates (push) Has been cancelled
default / e2e-upgrades (push) Has been cancelled
default / e2e-workload-proxy (push) Has been cancelled
- Bump some deps, namely cosi-runtime and Talos machinery.
- Update `auditState` to implement the new methods in COSI's `state.State`.
- Bump default Talos and Kubernetes versions to their latest.
- Rekres, which brings Go 1.24.5. Also update it in go.mod files.
- Fix linter errors coming from new linters.

Signed-off-by: Utku Ozdemir <utku.ozdemir@siderolabs.com>
2025-07-11 18:23:48 +02:00
Utku Ozdemir
7c17ed6cf8
fix: use the correct schematic IP for maintenance upgrades
Some checks are pending
default / default (push) Waiting to run
default / e2e-backups (push) Blocked by required conditions
default / e2e-forced-removal (push) Blocked by required conditions
default / e2e-scaling (push) Blocked by required conditions
default / e2e-short (push) Blocked by required conditions
default / e2e-short-secureboot (push) Blocked by required conditions
default / e2e-templates (push) Blocked by required conditions
default / e2e-upgrades (push) Blocked by required conditions
default / e2e-workload-proxy (push) Blocked by required conditions
Maintenance upgrades triggered from the UI were using the wrong schematic ID, causing the machines which use UKI to lose siderolink kernel args and disconnect.

Since we have a complex logic to build the correct install image including the schematic, move it to a central place.

Add a new management endpoint for the maintenance upgrades. UI now calls this endpoint instead of calling the Talos API directly.
The new endpoint builds the install image correctly using the common logic and issues the upgrade.

Signed-off-by: Utku Ozdemir <utku.ozdemir@siderolabs.com>
2025-05-22 20:10:37 +02:00
Utku Ozdemir
dc753f4e75
test: bump Talos version used in integration tests to v1.10
Some checks are pending
default / default (push) Waiting to run
default / e2e-backups (push) Blocked by required conditions
default / e2e-forced-removal (push) Blocked by required conditions
default / e2e-scaling (push) Blocked by required conditions
default / e2e-short (push) Blocked by required conditions
default / e2e-short-secureboot (push) Blocked by required conditions
default / e2e-templates (push) Blocked by required conditions
default / e2e-upgrades (push) Blocked by required conditions
default / e2e-workload-proxy (push) Blocked by required conditions
Test 1.10 before release.

Signed-off-by: Utku Ozdemir <utku.ozdemir@siderolabs.com>
2025-05-14 20:58:46 +03:00
Artem Chernyshev
e7ece8280d
fix: disable Talos >= 1.10 for now as Omni isn't ready for it yet
Some checks are pending
default / default (push) Waiting to run
default / e2e-backups (push) Blocked by required conditions
default / e2e-forced-removal (push) Blocked by required conditions
default / e2e-scaling (push) Blocked by required conditions
default / e2e-short (push) Blocked by required conditions
default / e2e-short-secureboot (push) Blocked by required conditions
default / e2e-templates (push) Blocked by required conditions
default / e2e-upgrades (push) Blocked by required conditions
default / e2e-workload-proxy (push) Blocked by required conditions
Kernel args were constant in Talos before UKI support, so Omni drops
them by default when generating/rebuilding schematics.
So if the Machines are upgraded to 1.10 and switch to UKI, they will be
disconnected from Omni.

Do not allow using Talos 1.10, until we introduce proper support for
the UKI non-secureboot machines.

Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2025-04-29 14:57:24 +03:00
Utku Ozdemir
b6563c2d21
chore: bump default Talos version to 1.9.5, Kubernetes version to 1.32.3
Bump to latest versions.

Signed-off-by: Utku Ozdemir <utku.ozdemir@siderolabs.com>
2025-03-20 11:22:46 +01:00
Artem Chernyshev
ed946b30a6
feat: display OMNI_ENDPOINT in the service account creation UI
Fixes: https://github.com/siderolabs/omni/issues/858

Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2025-01-29 15:27:36 +03:00
Artem Chernyshev
2a2c648141
feat: bump default Talos version to 1.9.1, Kubernetes to 1.32.0
Some checks are pending
default / default (push) Waiting to run
default / e2e-backups (push) Blocked by required conditions
default / e2e-forced-removal (push) Blocked by required conditions
default / e2e-scaling (push) Blocked by required conditions
default / e2e-short (push) Blocked by required conditions
default / e2e-short-secureboot (push) Blocked by required conditions
default / e2e-templates (push) Blocked by required conditions
default / e2e-upgrades (push) Blocked by required conditions
default / e2e-workload-proxy (push) Blocked by required conditions
Also bump Talos machinery version to 1.9.1.

Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2025-01-16 20:45:53 +03:00
Artem Chernyshev
7fd2817d05
chore: deprecate Talos 1.4
Some checks failed
default / default (push) Has been cancelled
default / e2e-backups (push) Has been cancelled
default / e2e-forced-removal (push) Has been cancelled
default / e2e-scaling (push) Has been cancelled
default / e2e-short (push) Has been cancelled
default / e2e-short-secureboot (push) Has been cancelled
default / e2e-templates (push) Has been cancelled
default / e2e-upgrades (push) Has been cancelled
default / e2e-workload-proxy (push) Has been cancelled
Now the minimum supported version of Talos is 1.5 (as per our support
policy).
Running existing clusters on 1.4 will be still possible.

Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2024-11-15 19:51:31 +03:00
Utku Ozdemir
423f729400
chore: bump default versions: Talos 1.7.6, Kubernetes 1.30.5
Bump them to the latest and greatest versions.

Signed-off-by: Utku Ozdemir <utku.ozdemir@siderolabs.com>
2024-09-16 12:01:07 +02:00
Artem Chernyshev
6759925337
chore: deprecate Talos 1.3
Fixes: https://github.com/siderolabs/omni/issues/434
Still pull this version from the list.
Updates from 1.3.x to 1.3.y should still work.

Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2024-07-25 20:12:25 +03:00
Artem Chernyshev
0aa16dbd83
chore: update Talos to 1.7.2 in the tests
Bump machinery to 1.7.2.
Enable partial machine config tests.

Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2024-05-22 12:15:20 +03:00
Andrey Smirnov
dfcbaae7d0
chore: initial commit
Omni is source-available under BUSL.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
Co-Authored-By: Artem Chernyshev <artem.chernyshev@talos-systems.com>
Co-Authored-By: Utku Ozdemir <utku.ozdemir@siderolabs.com>
Co-Authored-By: Dmitriy Matrenichev <dmitry.matrenichev@siderolabs.com>
Co-Authored-By: Philipp Sauter <philipp.sauter@siderolabs.com>
Co-Authored-By: Noel Georgi <git@frezbo.dev>
Co-Authored-By: evgeniybryzh <evgeniybryzh@gmail.com>
Co-Authored-By: Tim Jones <tim.jones@siderolabs.com>
Co-Authored-By: Andrew Rynhard <andrew@rynhard.io>
Co-Authored-By: Spencer Smith <spencer.smith@talos-systems.com>
Co-Authored-By: Christian Rolland <christian.rolland@siderolabs.com>
Co-Authored-By: Gerard de Leeuw <gdeleeuw@leeuwit.nl>
Co-Authored-By: Steve Francis <67986293+steverfrancis@users.noreply.github.com>
Co-Authored-By: Volodymyr Mazurets <volodymyrmazureets@gmail.com>
2024-02-29 17:19:57 +04:00