Commit Graph

292 Commits

Author SHA1 Message Date
Derek Nola
9865ab1f6e Replace e2e.ParseNodes function with general ParseNodes and NodesReady test functions
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-02-28 08:46:10 -08:00
Derek Nola
f2f3c93ea7 Add E2E AllNodes helper function
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-02-28 08:46:10 -08:00
Brad Davidson
20133ad151 Increase e2e log verbosity and collect logs on failure
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2025-02-27 11:19:26 -08:00
Brad Davidson
f710d4900c e2e: wait for deployments before getting logs
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2025-02-20 16:46:58 -08:00
Brad Davidson
67cbe75c84 e2e: Fix curl test timeouts
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2025-02-20 16:46:58 -08:00
Rafael
badc2920f1 [master] Update to v1.32.2-k3s1 and Go 1.23.6 (#11789)
* Update to v1.32.2

Signed-off-by: Rafael Breno <32229014+rafaelbreno@users.noreply.github.com>

* Increase test timeout

Signed-off-by: Rafael Breno <32229014+rafaelbreno@users.noreply.github.com>

---------

Signed-off-by: Rafael Breno <32229014+rafaelbreno@users.noreply.github.com>
2025-02-16 16:57:09 -03:00
Derek Nola
2f787dda91 Migrate E2E SecretsEncryption to Docker test
Remove secrets encryption E2E from Drone

Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-02-12 14:27:26 -08:00
Derek Nola
d0a1e94392 Migrate E2E autoimport to Docker test
Simplify DockerNode structs
Remove autoimport from E2E
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-02-12 14:27:26 -08:00
Derek Nola
8d9322d22b Fix skew test on v1.31 and older
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-02-12 14:27:26 -08:00
Derek Nola
abeb981afc Remove unused docker tests
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-02-12 14:27:26 -08:00
Derek Nola
793d216d02 Migrate hardened docker test
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-02-12 14:27:26 -08:00
Derek Nola
2724f08be8 Fix various E2E test function names and descriptions
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-02-12 14:27:26 -08:00
Derek Nola
538131b685 Migrate E2E Token test into a Docker Token test
Remove E2E token test

Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-02-12 14:27:26 -08:00
Derek Nola
1d86e39780 Align docker and e2e variable spelling
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-02-12 14:27:26 -08:00
Brad Davidson
45dbc43bd4 Fix e2e ingress IP helper
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2025-02-10 10:44:48 -08:00
Brad Davidson
04ed6c0996 Fix wasm ingress test
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2025-02-07 07:47:32 -08:00
Derek Nola
34ae4da57e Convert docker conformance test to go test framework (#11643)
* Migrate conformance docker test

Switch to hydrophone from sonobuoy
Support serial conformance

* Replace docker tests with go version on arm32 Drone pipeline
* Support multiple DB, push hydrophone logs to test output
* Replace  etcd and sqlite conformance tests with golang versions
* Retry on flaky btrfs section
* Fix db cleanup for sqlite, be explicit on the dbtype

Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-02-06 13:39:50 -08:00
Derek Nola
bb79c2b350 Consolidate test utility functions into top level package (#11711)
* [e2e] Convert RunCmdOnNode to method
* Consolidate e2e variables into TestConfig struct
* Consolidate docker and integration test helper functions
* E2E: Directly count daemonsets, not their pods
* Add missing Context levels for E2E tests
* Migrate e2e.ParsePods to new tests client package
* Run the go test compile test on their respective architectures

Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-02-04 17:23:18 -08:00
Derek Nola
1666b5cfff Run Docker test on Github Actions arm64 runners (#11705)
* Build and Run Arm64 Docker Tests
* Compile go tests for both amd64 and arm64
* Use version.sh to determine channel, not git
* Consolidate docker tests into 2D matrix
* Remove old Docker test from Drone and Github Actions

Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-02-04 08:29:47 -08:00
Derek Nola
3fcbac8d26 assign GOCOVERDIR in docker tests
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-01-27 11:30:42 -08:00
Derek Nola
031c11d369 Convert snapshotrestore from E2E to Docker test
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-01-27 11:30:42 -08:00
Derek Nola
57361c9ae3 DRY Docker test configuration strucutres - Reduce TestConfig fields, rename secret -> token - remove unused ENV control vars - Consolidate DeployWorkload function similar to E2E function
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-01-27 11:30:42 -08:00
Derek Nola
7392806b7f Make (Docker) RunOnNode a method
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-01-27 11:30:42 -08:00
Derek Nola
669c11a686 Replace docker go test SERVER_ARGS env with config.yaml injection
Signed-off-by: Derek Nola <derek.nola@suse.com>

x

Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-01-27 11:30:42 -08:00
Derek Nola
ca165cacbc Add support for restarting k3s docker nodes
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-01-27 11:30:42 -08:00
Vitor Savian
7e18c69254 Add auto import images for containerd image store
* Add auto import images

Signed-off-by: Vitor Savian <vitor.savian@suse.com>

* Fix EOF error log when importing tarball files

Signed-off-by: Vitor Savian <vitor.savian@suse.com>

* Delaying queue

Signed-off-by: Vitor Savian <vitor.savian@suse.com>

* Add parse for images

Signed-off-by: Vitor Savian <vitor.savian@suse.com>
2025-01-09 13:15:27 -03:00
Brad Davidson
f345697c0a Add tests for supervisor request handlers
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2025-01-09 00:51:19 -08:00
Brad Davidson
e6327652f0 Replace *core.Factory with CoreFactory interface
Make this field an interface instead of pointer to allow mocking. Not sure why wrangler has a type that returns an interface instead of just making it an interface itself. Wrangler in general is hard to mock for testing.

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2025-01-09 00:51:19 -08:00
Brad Davidson
c20c06373a Move additional core/v1 mocks into tests package
Convert nodepassword tests to use shared mocks

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2025-01-09 00:51:19 -08:00
Brad Davidson
8f8cfb56b5 Move core/v1 mock into tests package for reuse
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2025-01-09 00:51:19 -08:00
Brad Davidson
f8271d8506 Add test for join existing cluster
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2025-01-09 00:51:19 -08:00
Derek Nola
67ffd2ab1e Fix skew semver for release-XX branches (#11531)
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-01-07 12:25:42 -08:00
Derek Nola
c3460fce73 Add "k3s certificate check" clause for better test coverage (#11485)
* Add "k3s certificate check" clause for better test coverage

Signed-off-by: Derek Nola <derek.nola@suse.com>

* Add table support to cert check

Signed-off-by: Derek Nola <derek.nola@suse.com>

---------

Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-01-07 10:19:23 -08:00
Derek Nola
2f432a1cde Upload E2E logs on failure as GHA artifacts (#11514)
* Upload E2E journald logs as artifacts in GHA

Signed-off-by: Derek Nola <derek.nola@suse.com>

* Improve fork information for parent extraction

Signed-off-by: Derek Nola <derek.nola@suse.com>

---------

Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-01-07 09:50:39 -08:00
Brad Davidson
68fbd1a6b5 Fix snapshot flake
Avoid "snapshot save already in progress" flake when snapshot reconcile from previous save is still in progress.

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2024-12-20 14:41:40 -08:00
Brad Davidson
f83cce95cf Add test for kubelet config-dir
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2024-12-20 14:41:40 -08:00
Brad Davidson
93e548326a Improve error handling of CheckDeployments test helper
Expose actual error, so that we can tell if the deployment is not found or not ready/available

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2024-12-20 14:41:40 -08:00
Hussein Galal
763188d642 V1.32.0+k3s1 (#11478)
* Update libraries and codegen for k8s 1.32

Signed-off-by: galal-hussein <hussein.galal.ahmed.11@gmail.com>
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>

* Fixes for 1.32

Signed-off-by: galal-hussein <hussein.galal.ahmed.11@gmail.com>
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>

* Disable tests with down-rev agents

These are broken by AuthorizeNodeWithSelectors being on by default. All
agents must be upgraded to v1.32 or newer to work properly, until we
backport RBAC changes to older branches.

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>

---------

Signed-off-by: galal-hussein <hussein.galal.ahmed.11@gmail.com>
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
Co-authored-by: Brad Davidson <brad.davidson@rancher.com>
2024-12-20 23:17:14 +02:00
Brad Davidson
e143e0fa12 Add hidden flag/var for supervisor/apiserver listen config
Add flags supervisor and apiserver ports and bind address so that we can add an e2e to cover supervisor and apiserver on separate ports, as used by rke2

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2024-12-10 09:31:18 -08:00
Brad Davidson
e9cf3a7ab5 Tail journald logs into report on suite failure
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2024-12-06 11:45:34 -08:00
Brad Davidson
45195e2654 Fix integration test failure message
The error message should be printf style, not just concatenated. The
current message is garbled if the command or result contains things that
look like formatting directives:

`Internal error occurred: error sending request: Post "https://10.10.10.102:10250/exec/default/volume-test/volume-test?command=sh&command=-c&command=echo+local-path-test+%!!(MISSING)E(MISSING)+%!!(MISSING)F(MISSING)data%!!(MISSING)F(MISSING)test&error=1&output=1": proxy error from 127.0.0.1:6443 while dialing 10.10.10.102:10250, code 502: 502 Bad Gateway`

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2024-12-06 11:45:34 -08:00
Brad Davidson
81dda9d626 Add command output to test failure message
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2024-12-06 11:45:34 -08:00
Derek Nola
183f0c8d09 Fix secrets-encrypt reencrypt timeout error (#11385)
* Add missing default OS for split server test

Signed-off-by: Derek Nola <derek.nola@suse.com>

* Launch go routine and return for k3s secrets-encrypt reencrypt

Signed-off-by: Derek Nola <derek.nola@suse.com>

---------

Signed-off-by: Derek Nola <derek.nola@suse.com>
2024-12-05 09:11:22 -08:00
Derek Nola
7296fa8863 Fix leap install test (#11379)
Signed-off-by: Derek Nola <derek.nola@suse.com>
2024-12-03 17:19:21 -08:00
Brad Davidson
5bb3d82e27 Add rewrite test to privateregistry e2e
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2024-12-03 11:58:51 -08:00
manuelbuil
4ec261733e If no etcd was deployed, fail etcd-snapshot with a useful error
Signed-off-by: manuelbuil <mbuil@suse.com>
2024-11-28 09:40:42 +01:00
Derek Nola
c669600c8f Fix Branch Name logic for Dependabot and UpdateCLI pushes to k3s-io (#11376)
* Improve node checking for etcd docker test
* Fix branch name for dependabot and updatecli PRs

Signed-off-by: Derek Nola <derek.nola@suse.com>
2024-11-27 09:50:14 -08:00
Derek Nola
b5e2fa77a6 Convert legacy docker tests from bash to golang (#11357)
* Convert the following Docker test from Bash to Go
    - basics
    - bootstraptoken
    - cacerts
    - compat -> skew
    - etcd
    - lazypull
    - upgrade

Signed-off-by: Derek Nola <derek.nola@suse.com>

* Add Docker go tests to GHA
* Prebuild K3s Go Tests
* Strip go test binaries to reduce size
* Handle complex branch options

Signed-off-by: Derek Nola <derek.nola@suse.com>

* Implement basic golang tests on arm and arm64 pipelines

Signed-off-by: Derek Nola <derek.nola@suse.com>
2024-11-26 12:30:52 -08:00
Vitor Savian
9bd48b1a3f Add ubuntu 24.04 apt command for e2e test
Signed-off-by: Vitor Savian <vitor.savian@suse.com>
2024-11-26 11:45:04 -03:00
Emmanuel Ferdman
59707dab3d Update localstorage_int_test.go reference (#11339)
Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
2024-11-19 10:35:31 -08:00