Test suite for recipes? #514
Labels
No Label
abra
abra-gandi
awaiting-feedback
backups
bug
build
ci/cd
community organising
contributing
coopcloud.tech
democracy
design
documentation
duplicate
enhancement
finance
funding
good first issue
help wanted
installer
kadabra
performance
proposal
question
recipes.coopcloud.tech
security
test
wontfix
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: coop-cloud/organising#514
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What we have today:
Problems with this is 1) it's up to maintainers to test their own new versions 2) it's unclear if the Drone CI is a reliable test suite for a new version (e.g. it tests a deploy but it doesn't test an upgrade from the previous version 3) versions are published automatically regardless of any of these questions.
I think it would be nice if we could try to think about how we can get some test suite to check some things for us before a version is published. One great example of this is how YunoHost does it https://ci-apps.yunohost.org/ci/job/19464 👀
I think the with work to make the
abra
test suite with https://bats-core.readthedocs.io, the way is clear to have a Bash-based test suite for recipes which actually usesabra
itself. I think it will be important to keep it as close to Bash as possible, because between recipe versions, we have breaking changes, so we'll need a way to programmatically apply patches which migrate recipe configurations like an operator would do it.I could imagine a test suite would start with...
And so on... YunoHost has their own set of questions and for each "YES", the app gets a better "score". Which is a clear indicator that the app is a reliable choice. We could use this in combination with the recipe metadata questions ("Email: no, SSO: yes") to generate a "score"?
I'm not sure how this would fit into our current workflow. And whether we need a web front-end.
Any thoughts? Anyone want to work on this?
I really like this idea.
I'm working on an integration smoke test suite using
playwright
. With this I want to test if all the changes and customization we made inside the recipes are still working after an upgrade or a new deployment.Things I want to test:
....
I'm not sure if it's a good idea to integrate it in this test process as well.
@moritz oh shit, that could be seriously cool. I think with the Bash-based stuff we could work on really doing the operator & maintainer actions in a programmatic way. But this
playwright
approach could be an extra layer to really test stuff once things are up. Also very important. I'd be curious to see how difficult it is to set up and to integrate.Related: coop-cloud/matrix-synapse#42