-
Notifications
You must be signed in to change notification settings - Fork 244
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
Ci self hosted runner #1667
Ci self hosted runner #1667
Conversation
30130a7
to
5d32150
Compare
f692476
to
d6bdf45
Compare
87b309a
to
7755987
Compare
ab8ca8f
to
54819ac
Compare
Rebased on |
54819ac
to
84b5081
Compare
Fixed some stuff, reverted unnecessary changes and enabled macOS tests unconditionally (we only disabled them to save CI time in the past). Will test snapshot and merge if everything works fine. |
Docker is not installed on Ubuntu runner. Snapshots are not possible to build with self-hosted runners. As mentioned before several times already, please make sure actual release workflow actually runs after you make changes. I expected you to do that when you were testing changes related to signatures, apparently you tested it in some other way. |
@nazar-pc i actually didn't finish with this one since i was focusing on getting the other 2 merged first for sdk and pulsar, before finishing changes and testing on here. |
@DaMandal0rian I noticed this in logs:
It looks like a big issue to me. Every run should start in clean environment, but looks like not only it doesn't and clean up happens during startup, it failed to remove some files in this job: https://github.com/subspace/subspace/actions/runs/5931014560/job/16081983179?pr=1667
Generally it seems like no matter how much cleanup code you add, the solution is to start a fresh VM for every run instead (and I believe this is what GitHub's runners do). How feasible is it? |
@nazar-pc That is unnecessary, the problem is related to https://stackoverflow.com/questions/22575662/filename-too-long-in-git-for-windows |
It is necessary, environment should be clean. If we didn't have checkout action at the beginning of the workflow, we could access potentially sensitive files in the directory. Similarly one CI run in any of the repos where these workers are used and they can override system configuration, for instance swap
That is a secondary issue, the primary issue is that files are there in the first place, while they shouldn't. Essentially the whole file system should be read-only and CI should only be able to write in working directory and everything should be wiped clean BEFORE the next workflow starts. |
By default |
But do I understand correctly that if workflow edits something outside of |
@DaMandal0rian is Windows signing in the latest state here and ready to go? |
@nazar-pc Yes, ready to go. Secrets are setup for the repo. |
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.
Both PR CI and snapshot finished successfully, merging
This PR introduces the use of self hosted runners for the repository.
Code contributor checklist: