46 Commits

Author SHA1 Message Date
Noel Georgi
e79c9e1277
chore(ci): drop equinix metal e2e-test
Drop Equinix Metal e2e tests, due to EM machines mostly not booting
properly over PXE, drop the test as it adds no value.

Fixes: #10034

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-12-26 22:41:01 +05:30
Andrey Smirnov
b72bda0a42
fix: talosctl support and race tests
1. Don't set max cgroups limit if race mode is enabled (only in test
   mode). When e.g. apid/trustd are built with race detector on, they
   consume 10x the memory.
2. Fix a data race in `talosctl support` when showing UI progress.
3. Fix an issue pulling `kubeconfig` in `talosctl support` - pull from
   endpoints (controlplanes) without setting any nodes.

Fixes #10036

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-12-25 21:05:27 +04:00
Andrey Smirnov
82ea44a6b2
fix: reduce installer image
This still allows running install on 1 GiB hardware.

Fixes #10024

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-12-24 19:03:42 +04:00
Noel Georgi
a5660ed778
feat: pcirebind controller
Add a controller to support rebinding drivers for PCI devices.

Fixes: https://github.com/siderolabs/extensions/pull/488

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-12-20 17:35:37 +05:30
Andrey Smirnov
7d39b9ec2b
feat: remove cgroupsv1 in non-container mode
Following up on deprecation in Talos 1.9, remove it completely for Talos
1.10.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-12-18 18:48:11 +04:00
Andrey Smirnov
d45e8d1d1d
feat: update Kubernetes to 1.32.0
Final Kubernetes release for Talos 1.9.0.

Also update COSI to pull in a fix for watch restarts:
https://github.com/cosi-project/runtime/pull/512

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-12-12 22:51:33 +04:00
Andrey Smirnov
61b1489a0f
fix: order volume config by the requested size
This fixes an issue like that:

* the system disk is say 10GiB
* STATE is fixed 100 MiB always
* EPHEMERAL is configured to be min 6 GiB, max 100 GiB

As the EPHEMERAL/STATE provisioning order was not defined, EPHEMERAL
might be created first, occupying whole disk and leaving no space left
for STATE.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-12-11 18:35:11 +04:00
Dmitriy Matrenichev
c4724fc975
chore: add integration tests for image-cache
Provide separate `integration/image-cache` tag.

Closes #9860

Signed-off-by: Dmitriy Matrenichev <dmitry.matrenichev@siderolabs.com>
2024-12-06 20:28:34 +03:00
Andrey Smirnov
7d6507189f
feat: implement new address sorting algorithm
Fixes #9725

See #9749

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-12-05 14:38:46 +04:00
Andrey Smirnov
77e9db4abf
test: use two workers in qemu tests by default
Fixes #9870

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-12-04 16:34:42 +04:00
Noel Georgi
347b758465
chore: support saving cluster logs on destroy
Support saving cluster logs on destroy

Fixes: #9808

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-11-29 14:39:15 +05:30
Noel Georgi
2001167058
chore(ci): save support zip always after tests
Save `support.zip` always, also use a different folder for saving logs,
so we can save artifacts of multi cluster tests.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-11-08 19:18:06 +05:30
Noel Georgi
942962bf00
docs: add docs on usernamespace support in k8s
Add docs and test for usernamespaces support in Kubernetes.

Fixes: #8554

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-11-07 22:09:02 +05:30
Nebula
4b10c5328b
chore: add Windows ARM64 build for talosctl
Add Windows ARM64 build for talosctl.

Signed-off-by: Nebula <40148908+nebula-it@users.noreply.github.com>
Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-11-04 13:34:34 +05:30
Andrey Smirnov
d39393879a
fix: rework the 'metal-iso' config acquisition
Fixes #9538

Re-do the implementation by using the volume management primitives, so
that we can avoid/skip old code. This should fix all issues related to
the partition/whole disk.

Fix issues in the volume management (exposed, as we haven't used it this
way before).

Build a test case in `talosctl cluster create` to inject machine config
via `metal-iso`.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-10-24 16:18:50 +04:00
Andrey Smirnov
c14b446229
feat: update Kubernetes to v1.32.0-alpha.1
Talos 1.9 is going to be shipped with Kubernetes v1.32 by default.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-10-18 20:28:14 +04:00
Andrey Smirnov
bc4c21f41a
test: add json logs test environment
Add an option to `talosctl cluster create` to start a JSON log receiver,
and enabled it optionally.

Enable in `integration-qemu`.

See #9510

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-10-17 16:23:26 +04:00
Noel Georgi
dec653bfe1
chore: better lvm2 tests
Use LVM2 tests that relies on module loading by lvm.

Fixes: #9300

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-10-01 16:08:44 +04:00
Noel Georgi
d8ab4981b6
feat: support lvm auto activation
Support lvm auto-activation as per
https://man7.org/linux/man-pages/man7/lvmautoactivation.7.html.

This changes from how Talos previously used to unconditionally tried to
activate all volume groups to based on udev events.

Fixes: #9300

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-09-20 14:42:56 +05:30
Andrey Smirnov
8d6884a8e2
test: add a test for inline machine config trusted roots
Run SideroLink API server via TLS with self-signed certificate, inject
that certificate into Talos via `talos.config.inline=`.

Fix a couple of place where our special TLS root CA provider supporting
reloading on the fly was not used.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-12 21:44:36 +04:00
Andrey Smirnov
c1ed2984b8
docs: add what's new for Talos 1.8
Also backport from release-1.8 a GHA fix to run promoted pipelines from
a release PR.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-10 17:17:22 +04:00
Noel Georgi
d64ce44e46
chore(ci): e2e gcp
Add e2e-gcp.

Also drop other CAPI stuff.

Fixes: #8842

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-09-06 19:07:20 +05:30
Andrey Smirnov
3038ccfa88
feat: add configuration for EPHEMERAL volume
Fixes #9261

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-06 14:11:35 +04:00
Andrey Smirnov
db6ef1ee93
test: update Talos versions in Image Factory tests
Add Talos 1.7, remove Talos 1.3, as Omni minimum supported version right
now is 1.4.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-03 18:20:12 +04:00
Noel Georgi
19a44c2b0b
chore: drop console ttyS0 argument
Drop `console=ttyS0` argument for metal images/installer.

`console=ttyS0` causes lot of issues with bare metal hardware when
trying to use a physical serial port.

Ref:

* https://bugzilla.redhat.com/show_bug.cgi?id=1839923
* https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=763601;msg=17
* https://www.kernel.org/doc/html/latest/admin-guide/serial-console.html
* https://github.com/coreos/fedora-coreos-tracker/issues/567

Fixes: #8695
Fixes: #8657
Fixes: #8127

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-08-27 22:24:59 +05:30
Noel Georgi
2d3bc94bf1
fix(ci): fix broken tests
Fix the extensions test broken by #9135.
Also fix the cs-longhorn cron test.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-08-27 18:35:29 +05:30
Noel Georgi
8fe39eacba
chore: move csi tests as go test
Move rook-ceph CSI tests as go tests.
This allows us to add more CSI tests in the future.

Fixes: #9135

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-08-26 18:18:09 +05:30
Noel Georgi
36f83eea9f
chore: make qemu check flag consistent with code
Restructure code as per changes from #9198.

This makes the flag name to be in sync with what it actually does.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-08-20 20:33:56 +05:30
Noel Georgi
872599c9a9
chore: drop image assets from release
Drop non-standard image assets from release.

Fixes: #8843

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-08-14 22:47:16 +05:30
Noel Georgi
4d7d7a5895
chore(ci): update nvidia integration tests
Update nvidia integration tests to reflect new support matrix.

Part of: #9086.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-08-09 17:45:12 +05:30
Noel Georgi
50e5f37efb
chore: add test for apparmor
Add a test that verifies pods can be scheduled with `RuntimeDefault`
apparmor profile.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-07-30 20:24:57 +05:30
Noel Georgi
f132d3f403
chore(ci): remove artifacts directory prefix for checksums
Fixes: #8988
Fixes: #8691
Fixes: #8512

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-07-23 18:42:09 +05:30
Andrey Smirnov
31af6b3f8c
chore: fix the release step to include CNI bundle
It was missing.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-07-08 16:59:01 +04:00
Andrey Smirnov
d7cd46643d
chore: fix the push/tag steps
Add both platforms.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-07-08 16:17:06 +04:00
Andrey Smirnov
c9aeeca3d4
chore: fix the Makefile
Fix the error when not on a release.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-07-08 15:55:35 +04:00
Andrey Smirnov
48cdbe0de7
release(v1.8.0-alpha.1): prepare release
This is the official v1.8.0-alpha.1 release.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-07-08 14:48:13 +04:00
Noel Georgi
4701498a1b
chore(ci): run e2e-aws-nvidia with zfs extension enabled
Run e2e-aws-nvidia-oss with zfs extension enabled.

Also fix the iscsi tests to get transport info using the new disks api.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-06-24 15:12:34 +05:30
Noel Georgi
8e15621e83
chore(ci): add conformance pipelines
This was missed when moving to GHA.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-06-12 10:47:43 +07:00
Noel Georgi
8ee0872683
chore(ci): drop crashdump, save logs as artifacts
Drop `--crashdump` and save talos cluster logs as artifacts.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-06-07 10:52:05 +08:00
Noel Georgi
7b37e5b63d
chore(ci): fix integration extensions
Now that extensions run the `extensions-validator` we need to fetch proper tags.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-05-27 17:16:03 +05:30
Noel Georgi
de7553d77f
fix(ci): cron jobs
Crons needing extensions need the `generate` step as a dependency for
the `talos-metadata` file.

TrustedBoot needs the `secureboot-installer`.
Equinix needs arm64 since we boot an arm64 box as part of integration.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-05-26 17:10:42 +05:30
Noel Georgi
31b24ea3d7
chore(ci): split integration misc
Split integration misc into three.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-05-24 20:32:18 +05:30
Noel Georgi
5aea424278
fix(ci): fix crons by setting up buildx always
Fix crons by setting up buildx always, also make sure `images-essential`
has `uki-certs` as dependency.

Also use platform as `linux/amd64` in CI integration tests and cron
jobs, since we don't run tests with arm64 binaries.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-05-24 15:19:27 +05:30
Noel Georgi
23c1c4560e
fix(ci): fix crons fby rekres
Fix cron jobs by pulling in new kres changes.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-05-23 15:51:48 +05:30
Noel Georgi
a12e4bb24e
chore(ci): fix github action crons
Fix GitHub action cron jobs.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-05-22 18:39:37 +05:30
Noel Georgi
9c3ebad9fd
chore(ci): kresify gh actions
Kresify, only handle gh workflows.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-05-22 00:17:09 +05:30