-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
Add support for --no-container
to run windows/macos
#97
Comments
All steps for act run in a docker container...not sure how to accomplish that with MacOS runner. Would you want it to NOT use a container and just run the commands directly on the mac that act is running on? |
Kinda related: Sometime I think you really don't want to run stuff in containers, for example when act is invoked in a container itself which contains the required software already. Not sure if this is in scope, but it would be kind of nice if it had a How feasible would this be? |
--no-container
to run windows/macos
I like the idea @fwilhe - would like to see a flag |
This comment has been minimized.
This comment has been minimized.
@albertofem - this looks really promising! What do you think about also supporting |
This comment has been minimized.
This comment has been minimized.
In my experience it is a viable workaround for failing setup actions to build a docker image that has everything your build needs. Provides you the same experience locally and in actions if you run your workflow in the image. |
@fwilhe I did wonder about doing that. It's good to hear that it works well in practice! Since you can optionally specify an image to use with Codespaces, this could be a good opportunity to sync-up build and development environments. 🤔 |
@cplee Yes, I think the flag makes more sense for the general case rather than assuming non-supported hosts. I'm gonna rework my brach and come back as soon as I have something ready for review. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
The issue is not closed so... |
macOS on QEMU on KVM is against Apple EULA (End User License Agreement), FYI. This at least mean that support will be limited, and bug will be expected. Not sure about Windows; perhaps they allow you to run Windows VM without a license? |
You're allowed to virtualize macOS on Apple hardware. |
How about https://github.com/penberg/go-osxhv? Direct cgo binding of Hypervisor Framework (i.e. the backend of xhyve). |
It's not up to this project to figure out licensing anyway. It's up to the individual user of it to ensure they don't run Windows and macOS against Microsoft/Apple ToS. |
I guess when I said qemu I meant qemu-kvm which should provide near native speeds. I can't say much about it breaking easily though as I've always used it through frontends. |
You would need to reimplement a hypervisor, basically what Xhyve and QEMU are already doing. Probably a huge amount of work. |
Just to throw it out there: If ⬇️ ever gets done then that might be another way to support Windows runners? |
Perhaps a point others have considered. But why would running locally be the default for |
Because you can just use |
I'm fairly certain the request is because this won't run windows or macosx regardless of them being in a vm, but okay. Thanks for quick response. |
Maybe this can help ? https://github.com/sickcodes/Docker-OSX
This project is built on top of upstream project: https://github.com/kholia/OSX-KVM |
Please read before posting. I already mentioned it and it doesn't solve the issue as it runs Docker inside Linux VM inside macOS VM as Docker container. |
Sorry, but this thread is so long, and your answer was under spoiler. You can check that on this screen: |
Just to let you know, on macOS, we're experimenting with a custom shim for bash that lets us employ local "runners" (setup from the pool of dedicated macOS users) over ssh. We did not get it to perfection atm, but you get the idea. |
I finally created a PR of my non docker execution environment: #1293, based on my initial work #97 (comment) This just runs commands on your host device, without any virtualization technology. If you want to exec commands on a VM, just download act to it and run it there. Docker actions are not supported. Maybe you can help finding bugs, because it has limited test cases for non linux platforms. |
As for Windows, we could go the route of Docker Desktop or the even cooler route of "forcing" docker to run inside a WSL 2 container so we then can have windows running WSL 2 which then has a docker instance to then run windows VMs. |
what about https://hub.docker.com/_/microsoft-windows-base-os-images windows based images to have a "real" runner? |
This comment was marked as spam.
This comment was marked as spam.
I also need to run tests in macos. I want to build software that I hope can support. |
TLDR; For anybody looking at this in the future and wants to run their actions that require macOS like building and iOS app. |
I think this should be stated in the readme directly, you are linking this issue while the flag in the title does not exist |
Is Windows support added too.. as like MacOS? |
There are a lot more possibilities to use that experimental mode. Just to name a few
You must be running act on that operating system or it is logically wrong. The Problems with
Never heard from freebsd-latest? It's a possible platform like solaris, netbsd, plan9 and more in github-act-runner a self-hosted runner for GitHub Actions using their protocol for accepting jobs This is experimental, almost no tests run in CI for macos and windows in that mode. I wouldn't use the word supported in this context The ci checks of this experimental mode are not required, that means if dependablebot opens a PR whichs breaks the mode it will be merged without waiting for any maintainer |
Thanks for creating this wonderful tool. It would be nice to have MacOS also supported as well.
The text was updated successfully, but these errors were encountered: