| Age | Commit message (Collapse) | Author |
|
The Secure Boot test always disabled Secure Boot in the UEFI and enrolled a
Machine Owner Key. That only applies to images signed with a custom
certificate - an image signed by the VyOS CA is already trusted and must boot
without any firmware changes.
If the custom signing key pair is present in the build tree, the MOK workflow
is used as before. Otherwise the image boots with Secure Boot enabled from the
start, and the Kernel signature is verified against the VyOS CA issuer and
signer via "show secure-boot detail", which requires a matching vyos-1x.
The make target is renamed from testsb to test-secure-boot.
|
|
Add scripts/check-oci-container, a container adapted counterpart to
check-qemu-install. It imports the OCI tarball produced by scripts/iso-to-oci,
verifies the containerlab healthcheck survives the import, boots the image with
systemd as PID 1 and then drives the VyOS CLI to run basic operational and
configuration mode tests plus assertions on the rootfs modifications done by
iso-to-oci (locale, banner, /config symlink, removed podman runtime and removed
container CLI nodes).
Wire it up as "make test-oci", which picks up the newest tarball matching the
host architecture.
The boot wait polls for the vyos user in addition to vyos-router, as the unit
reports itself active before the default configuration has been committed.
|
|
|
|
Can be compresed with up to 75% ratio.
|
|
Add test-suite, which runs test-interfaces, test-no-interfaces-no-vpp, testc,
testraid, and testifname as separate $(MAKE) invocations so it aborts on the
first failing testcase instead of running all of them regardless of earlier
failures.
|
|
Test targets had inconsistent --cpu (2/4) and --memory (7/8) values
hardcoded inline. Standardize on TEST_CPUS and TEST_MEM variables:
TEST_CPUS is min(nproc, 4) so hosts with fewer than 4 CPUs don't
request more vCPUs than exist; TEST_MEM is 8GB when the host has at
least 10GB of RAM, otherwise 4GB.
|
|
check-qemu-install now requires --uefi on arm64/aarch64. Add a
UEFI_FLAG variable derived from ARCH so test targets that didn't
already hardcode --uefi pick it up on arm64 while staying unchanged
on amd64.
|
|
Testcase removes NIC definition entirely and on a second NIC drops only
the hw-id node. Testcase is there to verify proper ordering which simulates
a NIC replacement.
|
|
Test targets forward extra CLI arguments to their scripts via
$(filter-out $@,$(MAKECMDGOALS)) (e.g. make test -- --match interfaces_bond)
Those extra words are also goals as far as make is concerned, so after the test
recipe succeeded, make went on to "build" --match and interfaces_bond too,
falling through to the generic `%:` flavor rule and running
build-vyos-image --match
which errored and masked the fact that the smoketest itself had already passed.
Declare the trailing goals as phony no-ops when the primary target is one of
the test targets, so they no longer reach the `%:` rule.
The existing MATCH=<value> form is unaffected.
|
|
+ VRF)
Extend check-qemu-install with --test-image-update: build a nested installer
ISO as a second CD-ROM, serve the inner image over HTTP, and exercise add/delete
system image in the default routing context and in a named VRF.
Add make test-image-update and ignore/clean nested_installer_payload.iso artefacts.
|
|
Sometimes I do call scripts/check-qemu-install directly without the Makefile
wrapper, thus it should be ensured that the ISO image exists also from within
the test-case launcher, too.
|
|
There is no need in keeping the old --configd option when starting the
smoketests. VyOS heavily relies on vyos-configd and derivates, so there is no
need anymore to disable it for our smoketests.
|
|
This reverts commit bdd7024da3a71854c6ce15c312581900e9b817c8.
|
|
This reverts commit 4ef1924d9a5328aaab11a4e409c8116f99cbc140.
|
|
|
|
Apply quoting to the passed variable.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
|
|
Add make_sbom target to Makefile.
|
|
|
|
|
|
Makefile: T8294: autodetect CPU architecture for smoketests
|
|
We currently have hardcoded values for amd64 in our Makefile.
When calling the smoketests helpers like:
* make testc
* make qemu-live
* make test-interfaces
All expect an amd64 ISO file - if building and arm64 ISO image on an arm64
system, all those helpers do not work as it is hardcoded to amd64.
|
|
Extend the vyos-build repo to include Ansible install PHONY
Add the ability to install Ansible and VyOS compatible modules.
It could be used for the further "topology tests". It also could be
helpful with environment questions where a bug was reproduced.
Use virtual environment to install Ansible + VyOS modules
New options:
- make ansible-install
- make ansible-check
- make ansible-clean
|
|
|
|
Commit 6fa36ec9 ("Testsuite: T8111: make --iso and --disk optional arguments")
made the "--iso" option optional, but it was missed in the testraid, testsb
and testtpm testcase calls.
|
|
Add support to dynamically assemble cloud-init NoCloud ISO image and attach
it to an existing qcow2 image file.
The config data injected via NoCloud is later validated if it has been properly
configured on the OS level.
|
|
It is now possible to pass in an already existing qcow2 disk image to the
Testsuite. This is necessary if we would like to boot wxisting flavor images
like KVM or PROXMOX.
|
|
The target is calling tests for VPP, which require huge page support, thus always making the target fail.
|
|
|
|
We have a separate PHONY for VPP tests
|
|
|
|
Exclude VPP tests from the general tests
Add the PHONY no-interfaces-no-vpp
Add the PHONE testcvpp (load VPP config only)
|
|
|
|
Decrease system resources for configload tests
|
|
Add `--cpu` and `--memory` args to target `test`, fixing smoketest runs due to VPP requiring additional resources
|
|
|
|
Some smoketests requires more memory to pass all tests
For example VPP tests
|
|
|
|
Add PHONY to make smoketests for VPP.
sudo make test-vpp
|
|
We can not run the interface related tests, and non interface related
testcases in parallel to speedup the entire build process.
|
|
This adds support for UEFI Secure Boot. It adds the missing pieces to the Linux
Kernel and enforces module signing. This results in an additional security
layer where untrusted (unsigned) Kernel modules can no longer be loaded into
the live system.
NOTE: This commit will not work unless signing keys are present. Arbitrary
keys can be generated using instructions found in:
data/live-build-config/includes.chroot/var/lib/shim-signed/mok/README.md
|
|
In the past the CLI based smoketest was always executed under an else branch in
the testcase if-statement. Instead of using negative logic move all testcases
to positive logic adding an empty "catch all" else path.
|
|
To use VNC you could run "make test -- --vnc"
|
|
Fix typo added in commit 499e8e1cbb ("Makefile: T2640: add helper to convert
ISO to OCI image to start a co…ntainer") should be PHONY over PHONE
|
|
We can now pass any arbitrary option to the check-qemu-install script by
calling: make test -- --bar-option or make testc -- --foo-option
please note the -- which is not a typo but rather signals the end of options
and disables further option processing and passes the options down to the next
script.
|
|
|
|
|
|
instead of setting an environment variable
|
|
|
|
to avoid permission problems
|
|
|