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

Automated testing using tox and continuous integration #180

Closed
MassimoCimmino opened this issue Dec 14, 2021 · 5 comments · Fixed by #188 or #190
Closed

Automated testing using tox and continuous integration #180

MassimoCimmino opened this issue Dec 14, 2021 · 5 comments · Fixed by #188 or #190
Labels

Comments

@MassimoCimmino
Copy link
Owner

MassimoCimmino commented Dec 14, 2021

This issue is to configure tox to automate the execution of tests into fresh Python environments, and to configure github actions for continuous integration re-configure continuous integration.

This issue follows #179.

@j-c-cook
Copy link
Contributor

My only hesitation here is that Github is going to give you a set amount of included minutes, and after that it will be turned off. The goal is for Github to incentivize users to give them money. On private repositories I set up runners and the testing is done on my own machines. For a repository that is open source, someone could place a bug on your machine by opening a pull request. I've considered setting up a virtual environment (possibly cross platform) so that on a rare occasion that some hacker does create a PR that it only corrupts the virtual environment.

@MassimoCimmino
Copy link
Owner Author

This is a very good point. GitHub actions seemed like a good idea but really any tool could do the job.

The Travis ci for pygfunction is currently inactive and that is what really needs to be fixed. I'll update the issue. Thanks.

@MassimoCimmino MassimoCimmino changed the title Automated testing using tox and github actions Automated testing using tox and continuous integration Dec 17, 2021
@j-c-cook
Copy link
Contributor

j-c-cook commented Dec 23, 2021

I do like using GitHub actions because the tests are integrated into the pull request confirmation. I am only familiar with using runners (Github and Gitlab), and not familiar with Travis. Following public release of ghedt (currently expected early next year) I plan on setting up a hypervisor (specifically the open source VirtualBox) on my PC. With VirtualBox I will be able to allocate resources to virtual machines running Windows, Linux and possibly Mac OS. I plan for these virtual machines to have CI/CD runners installed as servers to perform tests on ghedt pull requests. Github only limits computing time if it is done on their machines, not if it is done locally with runners.

Given that I can make what is described above work, I wouldn't mind also hosting the tests for pygfunction on those virtual machines. I believe I have adequate computing resources to handle tests for both ghedt and pygfunction. We'd need to coordinate some things as that got closer, if you'd be interested in the option described here.

@MassimoCimmino
Copy link
Owner Author

It seems simple enough to configure github-actions that I am willing to try it out.

We can see how far 3000 min/month goes and reconsider later. With the current pace of development, pygfunction might not need much.

This was referenced Jan 10, 2022
@MassimoCimmino
Copy link
Owner Author

MassimoCimmino commented Jan 13, 2022

I am re-opening this issue as I realized that Github Actions is free for public repositories.

I initially only included tests on ubuntu on PR events to the master branch, but we can extend to also test on windows.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants