-
Notifications
You must be signed in to change notification settings - Fork 19
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
persistent worker: exit after a worker ran a single task #809
Comments
Will isolation feature work for you? It supports https://github.com/cirruslabs/vetu too. How do you orchestrate those VMs/containers? |
Thanks! I've spent the past few days having a look at vetu and set up an example infrastructure with it. While the CI runs and works, I'm missing a few features from
From the
I think, in our case, we'd want to have this control over the VMs and provide these options to the VMs our self.
After having tried a few options, our current plan would be to have a few, fixed size (CPU, memory, disk space) QEMU/cloud-hypervisor/firecracker VMs on a single host. These can then share cache directories. Inside each VM, we'd run a persistent worker. With something like I'm happy to work on an implementation of |
Thank you for the details. We use veru for Linux part of Cirrus Runners and it's been working great! But yeah, folder mounts not yet supported. Seems this functionality can be under |
To avoid keeping (possibly malicious) state after a task has finished, we'd like to stop and remove an ephemeral container/VM we use to run
cirrus worker run --token <token>
. This could be done by exiting the process after a task finishes and the results are reported back to Cirrus. Having an option along the lines ofcirrus worker runonce
orcirrus worker run --one-task
would be good. We'd make sure to spin up a new container/VM with a worker that registers for another single run after that.I don't think this is currently supported, or am I missing something. Do you see any problems with this approach (e.g. churn on your persistent runner registration interface)?
The text was updated successfully, but these errors were encountered: