53 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
Andrey Smirnov
10f2539f23
chore: disable cloud-images cron workflow
Otherwise it uploads an AMI every night, and eventually we run out of
AMI limit.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-30 16:40:54 +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
Andrey Smirnov
be35f380cc
chore: update pkgs/tools/extras
This brings in Go 1.22.5 and new Flannel CNI plugin.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-07-03 20:38:55 +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
Andrey Smirnov
4621e9bb77
chore: add stale and lock issue workflows
Mark as stale and close issues (to keep ourselves focused, and ensure
that the issue is still relevant today).

Lock old issues to force new issue being created, even if the problem
looks similar.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-06-04 14:55:40 +04: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
Andrew Rynhard
a10acd592a chore: address random CI nits
This PR does the following:

- updates the conform config
- cleans up conform scopes
- moves slash commands to the talos-bot
- adds a check list to the pull request template
- disables codecov comments
- uses `BOT_TOKEN` so all actions are performed as the talos-bot user
- adds a `make conformance` target to make it easy for contributors to
check their commit before creating a PR
- bumps golangci-lint to v1.24.0

Signed-off-by: Andrew Rynhard <andrew@andrewrynhard.com>
2020-04-13 13:01:14 -07:00