uraimo / run-on-arch-action

A Github Action that executes jobs/commands on non-x86 cpu architectures (ARMv6, ARMv7, aarch64, s390x, ppc64le, riscv64) via QEMU
BSD 3-Clause "New" or "Revised" License
687 stars 155 forks source link

Add support for subsequent actions #24

Closed cornfeedhobo closed 3 years ago

cornfeedhobo commented 3 years ago

The way this is written really limits the value of this action to only building artifacts, or so it seems. Is there any way to just prepare the build environment for the next action?

elijahr commented 3 years ago

As far as I am aware, this is not possible due to the way Github Actions work; the actions themselves can only be run on either GitHub's hosted runners, which are all x86 (Windows, Mac, or Linux), or your own self-hosted runners. Self-hosted runners can be any internet-accessible machine running the Github Actions Runner, which at this time officially supports x86 (Windows, Mac, or Linux), with the only alternative architecture being pre-release support for ARM & ARM64 Linux. Other platforms could work out of the box even if not officially supported - and GAR is open source, so one could potentially add or improve support for other platforms.

elijahr commented 3 years ago

If you want Linux ARM in the cloud to run your actions, you could provision an AWS A1 instance and install the Github Actions Runner, and use that as a self-hosted runner for your project. In that case, you wouldn't need run-on-arch-action; all your actions would be running natively on ARM. There might be compatibility issues with some actions. I have not done this myself, and there may be other options than AWS A1. If you do something like this, let us know! It would be interesting.

uraimo commented 3 years ago

Agree with @elijahr , If you mean executing some other action inside the emulated context of container, that is not possible at the moment since it would require having all the GH Actions infrastructure runnable inside the container (with all that entails). If you want to try some other cloud provider, it could make sense to give a try to Scaleway(lots of weird arm vps) or packet/equinix(arm64 servers) too.

cornfeedhobo commented 3 years ago

@uraimo I was worried this was the case.

@elijahr Running outside the GH infrastructure is out of the question in my case.

Thanks for the insights, both of you.