Skip to content

Testing of all providers and distros #1605

@AverageMarcus

Description

@AverageMarcus

Is your feature request related to a problem? Please describe.

We've had a few instances now where changes introduced issues into existing targets, e.g.

and most recently #1596 caused an issue for all OS's that made use of init data that wasn't caught during manual testing due to focussing on Flatcar.

Describe the solution you'd like

Where possible we should have automated tests in place to ensure that all currently supported providers and operating systems can build successfully with default values (this might be tricky in situations where there are required values).

This issue is aimed at tracking the progress of this effort and should be updated as progress is made.

Ideally, we should implement provider-specific tests that then build all OSs for that provider (e.g. using the make build-raw-all that should trigger all supported OSs).

Progress

Provider Implemented Comments
ami I think the CAPA project had something that they (used to?) use for testing image builds. We should reach out to them and see if its something we can adopt.
azure Partial We currently have two Prow jobs for Azure - pull-azure-vhds & pull-azure-sigs. These make use of ci-azure-e2e.sh but uses a pre-defined list of target (azure_targets.sh). Ideally we should try to update this to dynamically load all targets we support.
digitalocean
gce Partial We currently have the Prow job pull-image-builder-gcp-all that uses ci-gce.sh but this is currently configured as an optional test and not automatically run on any PRs. We should update this to at least trigger when changes to GCE files are made, similar to the Azure ones. (see #1601)
hcloud
nutanix
oci
openstack
outscale
ova partial We currently have the Prow job pull-ova-all that uses ci-ova.sh which currently has a static list of targets defined. We should update this to at least match our currently supported OSs
powervs
proxmox
qemu Theoretically, this should be possible to test in our current infrastructure as its emulated. The problem might be the time it takes to run the tests though.
raw Theoretically, this should be possible to test in our current infrastructure as its emulated. The problem might be the time it takes to run the tests though.
scaleway
vultr

Describe alternatives you've considered

Manual testing but this, as we have seen, isn't enough to catch all the issues.

Additional context

Many of the providers will require actual cloud infrastructure to be able to run the build process. This is likely to be difficult to get unless the respective cloud providers are willing to donate resources for this purpose. (Please reach out to us if you are able to provide these resources)


/kind feature
/lifecycle frozen
/help
/priority important-longterm
/triage accepted

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedDenotes an issue that needs help from a contributor. Must meet "help wanted" guidelines.kind/featureCategorizes issue or PR as related to a new feature.lifecycle/frozenIndicates that an issue or PR should not be auto-closed due to staleness.priority/important-longtermImportant over the long term, but may not be staffed and/or may need multiple releases to complete.triage/acceptedIndicates an issue or PR is ready to be actively worked on.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions