-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add integration tests using the spread framework #15
Conversation
This PR depends on the following PRs being merged in spread upstream:
And depends on this PR in nemos-images: #16 |
Example test result:
|
e79f604
to
581cb12
Compare
Really cool stuff and I like it. At EB the testing team seems to use the robot framework through qemu, thus a similar approach but with different tools. It might be valuable to communicate the way you (Canonical) drives the tests to the EB QA team in the next meeting. What do you think ? I really like the combination of spread and github workflows, this is cool stuff |
Yes sounds good, would be great to do a deep dive on this topic together. I'll add it as a topic to next week's technical call. Spread was mostly developed for snapd - if you're curious you can see it in action with a massive matrix of tests that are carried out for each PR: https://github.com/snapcore/snapd/actions/workflows/test.yaml |
581cb12
to
0434174
Compare
3f9ec37
to
988e7da
Compare
…emove bash Bash is needed for the spread automated testing suite, and we do not have a hard requirement to remove it in the everything-enabled reference image, so we can leave it installed. Signed-off-by: Isaac True <isaac.true@canonical.com>
Quote the YAML values and specify DEBIAN_FRONTEND=noninteractive to ensure that apt does not freeze waiting on user input that will never come. Signed-off-by: Isaac True <isaac.true@canonical.com>
2bf61bf
to
290213d
Compare
498c460
to
9d262ec
Compare
This adds the required files for running tests inside generated VM images using the spread framework (https://github.com/snapcore/spread). Spread tests can be run by running the following commands (the build directory refers to the location where the Kiwi images were built): ``` mkdir -p ~/.spread/adhoc cp build/nemos-image-minimal-lunar.x86_64-1.0.1.qcow2 \ ~/.spread/adhoc/nemos-image-minimal-lunar.qcow2 cp build/nemos-image-reference-lunar.x86_64-1.0.1.qcow2 \ ~/.spread/adhoc/nemos-image-reference-lunar.qcow2 spread -v adhoc: ``` Signed-off-by: Isaac True <isaac.true@canonical.com>
@schaefi this is ready for review now |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fantastic 👍 I really like it. Thanks for the effort
This changeset adds the required files for running tests inside generated VM images using the spread framework (https://github.com/snapcore/spread).
Spread tests can be run by running the following commands (the build directory refers to the location where the Kiwi images were built):
These tests can be used to automatically verify that features are present and enabled in the generated images.