1
0
mirror of https://github.com/siderolabs/talos.git synced 2026-02-05 15:45:37 +01:00
Commit Graph

911 Commits

Author SHA1 Message Date
renovate[bot]
d85a260cfd chore: update dependencies
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-05 10:12:52 +00:00
Noel Georgi
055add7aeb release(v1.13.0-alpha.1): prepare release
This is the official v1.13.0-alpha.1 release.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2026-02-03 19:47:01 +05:30
Orzelius
b1b703dbe2 chore: move sync logging code to go-kubernetes package
so it can be reused in Omni

Signed-off-by: Orzelius <33936483+Orzelius@users.noreply.github.com>
2026-01-27 22:53:17 +09:00
Tim Jones
4b274f7615 feat: support aws cert manager in imager
Add support for using certificates stored in AWS Certificate Manager to
sign secureboot images in imager.

Signed-off-by: Tim Jones <tim.jones@siderolabs.com>
2026-01-21 18:33:59 +01:00
Andrey Smirnov
f7072c050e fix: check if the device is not mounted when wiping
Open the blockdevice in `O_EXCL` mode when wiping to ensure that we
don't wipe a mounted device.

This issue was discovered via #12620, when we wipe a blockdevice which
is still mounted ending up in a wrong state.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2026-01-20 17:07:19 +04:00
Orzelius
c839b38809 feat: expose more SSA options in the upgrade-k8s command
add the following flags to the upgrade-k8s command:
* `--force-conflicts`            overwrite the fields when applying even if the field manager differs
* `--inventory-policy` string    kubernetes SSA inventory policy (one of 'MustMatch', 'AdoptIfNoInventory' or 'AdoptAll') (default "AdoptIfNoInventory")
* `--no-prune`                   whether pruning of previously applied objects should happen after apply
* `--prune-timeout` int          how long to wait for resources to be pruned in secunds (set to zero to disable waiting for resources to be fully deleted) (default 180)
* `--reconcile-timeout` int      how long to wait for resources to be prfully reconciled in secunds (set to zero to disable waiting for resources to be fully reoondiled) (default 180)

Signed-off-by: Orzelius <33936483+Orzelius@users.noreply.github.com>
2026-01-12 21:17:43 +09:00
Orzelius
c4f3f6d3e5 feat: implement kubernetes server-side apply
* add SSA via the new go-kubernetes library implementation to talosctl `upgrade-k8s` command
* add SSA via direct ResourceInterface call into talos (machined) with a manual inventory update
* add an integration test for ssa functionality

Co-authored-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
Signed-off-by: Orzelius <33936483+Orzelius@users.noreply.github.com>
Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-12-26 12:08:16 +04:00
Andrey Smirnov
c76484e587 release(v1.13.0-alpha.0): prepare release
This is the official v1.13.0-alpha.0 release.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-12-25 15:41:06 +04:00
Andrey Smirnov
f09ae1e0d2 fix: probe small images correctly
Fixes #12477

The PR in go-blockdevice: https://github.com/siderolabs/go-blockdevice/pull/142

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-12-24 13:39:16 +04:00
Noel Georgi
8f2b337994 feat: imager support rootless builds
Also changes the bootloader interface.
Disks are formatted/created with pre-populated source directories in Install/Image mode.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2025-12-24 11:02:37 +05:30
Andrey Smirnov
39117d4576 feat: update dependencies
Bump Go modules, Helm charts, other versions.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-12-18 22:59:51 +04:00
Andrey Smirnov
8d6a7a8677 feat: update Kubernetes to 1.35.0
Update to the final version for v1.12.0.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-12-18 16:18:40 +04:00
Mateusz Urbanek
694f45413f feat: external volumes
Add new volume type for managing external volume mounts - Virtiofs volumes

Signed-off-by: Mateusz Urbanek <mateusz.urbanek@siderolabs.com>
2025-12-15 14:35:52 +01:00
Andrey Smirnov
585abe9443 feat: update Kubernetes to v1.35.0-rc.1
See https://github.com/kubernetes/kubernetes/releases/tag/v1.35.0-rc.1

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-12-10 18:37:07 +04:00
Andrey Smirnov
d347ca1af1 fix: update CNI plugins to 1.9.0
See https://github.com/containernetworking/plugins/releases/tag/v1.9.0

This fixes CVE https://github.com/containernetworking/plugins/security/advisories/GHSA-jv3w-x3r3-g6rm

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-12-10 14:31:04 +04:00
Dmitrii Sharshakov
9fa00773ca chore: update go-blockdevice
latest go-blockdevice release

Signed-off-by: Dmitrii Sharshakov <dmitry.sharshakov@siderolabs.com>
2025-12-05 16:22:58 +01:00
Andrey Smirnov
0f9f4c05ff feat: update Kubernetes to 1.35.0-rc.0
Latest 1.35.0 release.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-12-04 14:35:13 +04:00
Andrey Smirnov
18f8ac369b feat: update Kubernetes to 1.35.0-beta.0
Use the latest 1.35.0 version.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-12-01 17:23:49 +04:00
Mateusz Urbanek
83675838f3 feat: extend flags of cache-cert-gen
Add flags to add SAN names to generated certificate

Signed-off-by: Mateusz Urbanek <mateusz.urbanek@siderolabs.com>
2025-11-20 21:40:55 +01:00
Andrey Smirnov
e62384ba34 fix: re-creating STATE after partition drop
Pulls in https://github.com/siderolabs/go-blockdevice/pull/139.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-11-14 14:49:48 +04:00
Andrey Smirnov
6063fbf912 feat: update dependencies
Many small changes, linting fixes, migration to moby/moby client
package.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-11-14 14:49:44 +04:00
Andrey Smirnov
fafab391b4 feat: update Kubernetes to 1.35.0-alpha.3
See https://github.com/kubernetes/kubernetes/releases/tag/v1.35.0-alpha.3

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-11-07 17:58:11 +04:00
Andrey Smirnov
021bbfefbe feat: update Go 1.25.4, containerd 2.1.5
See https://github.com/containerd/containerd/releases/tag/v2.1.5

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-11-06 17:04:43 +04:00
Andrey Smirnov
92eeaa4826 fix: update YAML library
Update COSI, and stop using a fork of `gopkg.in/yaml.v3`, now we use new
supported for of this library.

Drop `MarshalYAMLBytes` for the machine config, as we actually marshal
config as a string, and we don't need this at all.

Make `talosctl` stop doing hacks on machine config for newer Talos, keep
hacks for backwards compatibility.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-11-04 15:21:57 +04:00
Andrey Smirnov
d69305a670 fix: userspace wireguard handling
This is a fix for the wrong fix in #11204, which was wrong in two ways:

* the ldflags -X override had a wrong variable name, so it had no effect
* but the above even if it worked, only covered "mamangement" part of
  things, while `wgctrl-go` which configures things still has a
  hardcoded location of `/var/run/`.

So the fix is two ways:

* replace the location where the socket is created properly
* use updated forked wgctrl-go which looks in both locations

This keeps all fixes of #11204 - `talosctl cluster create` siderolink
agent works properly with `wg` on the host, and Talos uses proper
location.

Before the fix the location was actually `/var/run` and it randomly
failed depending on the race condition of Talos booting up and managing
`/var`.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-10-30 14:12:38 +04:00
Noel Georgi
fed948b8ae release(v1.12.0-alpha.2): prepare release
This is the official v1.12.0-alpha.2 release.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2025-10-28 20:32:01 +05:30
Andrey Smirnov
704b5f99e6 feat: update Kubernetes to 1.35.0-alpha.2
Start getting on K8s 1.35 for Talos 1.12.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-10-27 12:49:48 +04:00
Andrey Smirnov
39eeae9631 feat: update dependencies
CoreDNS 1.13.0
Linux 6.17.4

Other go.mod dependencies, tools, Helm charts used in tests, etc.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-10-23 19:10:48 +04:00
Mateusz Urbanek
c0772b8eda feat: add airgapped mode to QEMU backed talos
Add new `--airgapped` flag to talos cluster create (qemu)
to disable NAT in the VMs to effectively become airgapped.

Signed-off-by: Mateusz Urbanek <mateusz.urbanek@siderolabs.com>
2025-10-22 18:10:27 +02:00
Andrey Smirnov
6c98f4cdb0 feat: implement new DHCP network configuration
Fixes #11661

Fixes #10958

This also implement proper client identifier handling.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-10-21 20:51:58 +04:00
Orzelius
eccb21dd3b feat: add presets to the 'cluster create qemu' command
* add 'iso', 'pxe', 'disk-image', 'maintenance' and 'secureboot' presets
* swith the image-factory e2e test to use the create qemu command with presets
* add a '--omni-api-endpoint' to simplify connecting machines to omni

Signed-off-by: Orzelius <33936483+Orzelius@users.noreply.github.com>
2025-10-18 14:02:32 +09:00
Andrey Smirnov
825622d90a fix: resource proto definitions
There was a mismatch between how Talos encodes resource specs to
protobuf on the wire, and `.proto` files generated by `structprotogen`
for the same specs.

This only affected `LinkStatus`/`LinkSpec` resources, and it doesn't
affect Talos/Omni as they go via `protoenc`, bypassing `.proto` files.

Also if default proto library is used, it also works correctly.

The only place where it fails is a strict `vtprotobuf` encoding.

Also imports `protoenc` 0.2.4 skipping encoding of zero fields, which
should make COSI responses smaller for resources with lots of zero
fields.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-10-06 22:28:18 +04:00
Andrey Smirnov
ec3bd878f9 refactor: remove the go-blockdevice v1 completely
This is driven by a bug in `nocloud`, but it was long overdue to nuke
the old version of the library completely and rely on new code.

This refactors all four platforms which do load something from a mounted
disk into one implementation.

Fixes #11948

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-10-03 19:00:35 +04:00
Andrey Smirnov
3165a2b84c release(v1.12.0-alpha.1): prepare release
This is the official v1.12.0-alpha.1 release.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-10-01 14:34:15 +04:00
Noel Georgi
e455c7ea9c chore: use testing/synctest in tests
Use Go's new `testing/synctest` in tests.

Ref: https://go.dev/blog/testing-time

Signed-off-by: Noel Georgi <git@frezbo.dev>
2025-10-01 06:49:55 +05:30
Andrey Smirnov
7f048e962e feat: update dependencies
Bump PKGS (Linux 6.16.9), tools, other go.mod dependencies.

Fix the linting issues.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-09-30 20:55:29 +04:00
Andrey Smirnov
d57882b183 feat: update Kubernetes to 1.34.1
See https://github.com/kubernetes/kubernetes/releases/v1.34.1

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-09-11 17:49:14 +04:00
Andrey Smirnov
ced7186e2a refactor: update COSI to 1.11.0
See https://github.com/siderolabs/talos/issues/11723

Talos doesn't use QTransform controllers, but other COSI fixes might
benefit Talos controllers as well.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-09-03 21:17:22 +04:00
Andrey Smirnov
b9fb09dcdb release(v1.12.0-alpha.0): prepare release
This is the official v1.12.0-alpha.0 release.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-09-02 17:33:21 +04:00
Andrey Smirnov
6a389cad35 chore: update dependencies
Update Go modules, some test dependencies, bump tools, etc.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-09-02 14:14:53 +04:00
Andrey Smirnov
8aa7b3933d fix: bring back linux/armv7 build and update xz
Update xz to v0.5.15 which has a fix for 32-bit build.

This reverts commit cfef3ad454.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-08-29 17:43:23 +04:00
Andrey Smirnov
9cae7ba6b9 feat: update CoreDNS to 1.12.3
Also update host DNS base coredns module to 1.12.3+.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-08-29 15:14:00 +04:00
Andrey Smirnov
42ea2ac505 fix: update xz module (security)
See https://github.com/ulikunitz/xz/security/advisories/GHSA-jc7w-c686-c4v9

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-08-29 12:17:00 +04:00
Andrey Smirnov
527791f097 feat: update Kubernetes to 1.34.0
See https://github.com/kubernetes/kubernetes/releases/tag/v1.34.0

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-08-28 16:27:01 +04:00
Dmitrii Sharshakov
a1c0e237d6 feat: update Linux to 6.15.11, Go to 1.25
Via pkgs and tools. Also bump go-debug for Go 1.25 support.

Signed-off-by: Dmitrii Sharshakov <dmitry.sharshakov@siderolabs.com>
2025-08-28 12:59:17 +02:00
Olivier Doucet
7368a994df feat: add SOCKS5 proxy support to dynamic proxy dialer
This commit adds SOCKS5 proxy support to the DynamicProxyDialer function.
The implementation includes:
- Detection of socks5:// scheme in proxy URLs
- Authentication support for SOCKS5 proxies (username/password)
- Proper error handling and connection establishment
- Unit tests to verify SOCKS5 proxy functionality
- Fixed import path for dialer package in tests

The change allows Talos clients to connect through SOCKS5 proxies by
setting the HTTPS_PROXY environment variable with a socks5:// URL.

Signed-off-by: Olivier Doucet <odoucet@oxeva.fr>
Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-08-27 18:58:16 +04:00
Andrey Smirnov
0879efa690 feat: update Kubernetes default to v1.34.0-rc.2
Getting ready for v1.11.0 release!

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-08-21 17:34:32 +04:00
Oguz Kilcan
b08b20a100 feat: use key provider with fallback option for auth type SideroV1
Use key provider with fallback option for auth type SideroV1:
- Attempt to use $HOME/.talos/keys directory to read/remove existing PGP file if it exists or write new PGP file if directory is writable.
- Otherwise fallback to using $XDG_DATA_HOME/talos/keys directory.
- Add new talosctl flag --siderov1-key-dir (also configurable via SIDEROV1_KEYS_DIR env var) to allow customizing the directory to use for PGP keys

Update documentation to remove reference for $XDG_CONFIG_HOME for storing talosctl configuration, as it's not used anymore.

Signed-off-by: Oguz Kilcan <oguz.kilcan@siderolabs.com>
2025-08-15 13:16:25 +02:00
Andrey Smirnov
c079119337 chore: refactor how tools are being installed
Move stuff into `tools/go.mod`.

Also fix linting issues on the way (updating golangci-lint).

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-08-14 17:45:39 +04:00
Andrey Smirnov
b66b995d34 feat: update default Kubernetes to v1.34.0-rc.1
See https://github.com/kubernetes/kubernetes/releases/tag/v1.34.0-rc.1

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2025-08-11 19:26:48 +04:00