-
Notifications
You must be signed in to change notification settings - Fork 926
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
Looking for information on how to run tests for workflows locally #4504
Comments
Hi @thawn you can indeed run them locally but I would not recommend it. Here is how you can run them against an existing galaxy server, if you like: https://planemo.readthedocs.io/en/latest/running.html#workflow-execution-against-an-external-galaxy but in general our plan is that the GTN will run the tests for you, so you don't have to configure it. |
My user experience with the GTN and the auto generated tests was suboptimal so far:
|
I don't want to run the workflow itself, I want to run the linter and the automatic tests for the workflow. |
Hi @thawn I'm sorry you're having a sub-optimal experience.
This is due to GitHub's policies, something we have no control over -- new contributors have to have their tests approved.
The linting (specifically) generally run in <1m30s which all considered is pretty good, considering that we have to clone the GTN (~1GB). The 'accessibility' linting of course takes longer since we need to pull in a lot more which is unfortunate.
This can be, yes, we'll look into that. I've seen PRs with all four variants of file extensions contributed by planemo users, I don't know how we got 4 variants of the file extension but we decided to only accept one to make some of our tooling simpler.
ah that wasn't clear! I think I was mislead by linking to the galaxy workflow testing. You can of course just look in
but do note that those linters run for every file, as they run very quickly, and we use review-dog's capabiliities to filter the reports by what was touched in a PR. |
@hexylena thanks a lot for the thorough explanation! I will try the local testing and get back to you. Just one small additional comment:
1m30s would be totally fine. However, this is only the actual run time. It takes many hours until the run is even started. For example, in pull request #4493 It took ~ 20 hours between the commit and running the linting. You can see the time difference in the details of each CI step (linked below):
|
Ahh this is again due to GitHub, someone has to see and press the button which indeed happens on the scale of hours :( that's a really unpleasant contribution flow, agreed! I'll try and think about what workarounds we can find there. Once you've had one PR merged, the tests will run automatically every time you push to the repository. |
ah ok that makes sense. Thanks for the explanation :-) |
I followed the tutorial on how to add tests for workflows now, before committing the tests, I would like to run them locally on my machine. However, I don't know how.
Is there already documentation for that?
If yes, it would be great to link to that documentation in the tutorial mentioned above
If not, it would be great to add that information.
The text was updated successfully, but these errors were encountered: