-
Notifications
You must be signed in to change notification settings - Fork 34
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
cicd: add github configuration to run continuous integration #396
Conversation
I forgot to say that Travis will still be used for submitting Coverity analysis. It is possible to use github actions also for that task, but I will do the porting sometime in the (hopefully near) future. |
One thing just came to mind. Since this is open source, would it make sense to run this pipeline on github cloud instead of on bob? I read that github advises not using self-hosted runners for public repos to protect against pull requests from forks running potentially damaging code. Beyond that, isn't it free to use github cloud on an open source project? If bitpit is in the cloud, that's more resources for the other projects. |
I completely agree |
Here there are some suggestions on how to safely enable self-hosted runners for public repositories. These are the two proposed solutions:
The first solution seems the fine for us. |
Is there a reason why we shouldn't use github's cloud though? From what they say here it's free for open source projects. Is there a reason why it's better to use bob for bitpit rather than the cloud? |
f27eae3
to
ce7ab32
Compare
name: Continuous integration | ||
|
||
on: | ||
workflow_dispatch: |
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.
Would the workflow_dispatch be available to anyone on the internet since this is open source? It would probably be a bad idea to allow anyone in the world to run a job on bob.
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.
We can remove it, however I think that running a github action requires some kind of permission on the repository.
Continuous integration is now handled by github actions and runs on non-cloud machines (Ubuntu 20.4).
CI works in the same way as before, there are just some differences in the tests being run (we don't test anymore the compilation using older gcc versions).
The results of the tests are available at the follwing link: "https://github.com/optimad/bitpit/actions/workflows/continuous_integration.yml". Here an example of how the test results look like: