Skip to content
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

Automatic tests on a small dataset using GitHub actions #45

Open
sjfleming opened this issue Jul 30, 2022 · 3 comments
Open

Automatic tests on a small dataset using GitHub actions #45

sjfleming opened this issue Jul 30, 2022 · 3 comments
Labels
tests Improvements or additions to code testing

Comments

@sjfleming
Copy link
Member

Continuous integration tests that run all WDLs on real data.

This is a longer-term goal for me, as I'm sure it will take some effort to get it to work. But there are examples of repositories that use GitHub actions to set up a Cromwell instance and test WDLs using it. It would require using secrets to use gcloud credentials, and it would require setting up a Cromwell server in a test. I'm sure it will take a little bit of trial and error.

But this would be great to go with the womtool validation #28

@sjfleming sjfleming added the tests Improvements or additions to code testing label Jul 30, 2022
@sjfleming
Copy link
Member Author

I am beginning to think that the right way to do this is to refactor the WDLs so that all the google cloud specific code is in separate tasks, and then we just test the general tasks using a local Cromwell run.
But if we really wanted to do a full-blown test of whether it would actually work on Terra, this stuff about authenticating to google cloud is probably a way to do that. Probably still need to set up a Cromwell instance and run it there (on the GitHub actions test VM).

@sjfleming
Copy link
Member Author

The easiest thing to do is to use secrets to authenticate to Terra, and use a Terra workspace to do the testing. This is probably the way forward. It's also then a great record of tests. Consider alto cumulus for this purpose:
https://altocumulus.readthedocs.io/en/stable/usage.html#terra-commands

(This would also allow future tests to run on all the backends that Terra supports, without having to manage that.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tests Improvements or additions to code testing
Projects
None yet
Development

No branches or pull requests

1 participant