Skip to content
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

How to use termux-docker in GitHub Actions? #64

Open
postmodern opened this issue Apr 6, 2024 · 2 comments
Open

How to use termux-docker in GitHub Actions? #64

postmodern opened this issue Apr 6, 2024 · 2 comments

Comments

@postmodern
Copy link

Hello, I want to test a bash installer script within the termux-docker image using GitHub Actions. While GitHub Actions does support running commands within a custom docker image/container, it does not honor the ENTRYPOINT of the image and insists on running everything as root. Even running the commands explicitly under /entrypoint.sh ... to drop privileges does not seem to work properly, due to permission issues. It also seems that the GitHub Actions actions/checkout module expects node to be installed at /__e/node20/bin/node. I also encountered strange networking issues when executing /entrypoint.sh ... multiple times. Is termux-docker even compatible with GitHub Actions? Maybe this is something that could be documented better?

@sylirre
Copy link
Member

sylirre commented Apr 7, 2024

GitHub Actions issues first reported there: #62

Is termux-docker even compatible with GitHub Actions?

It is not compatible. In fact termux-docker was originally made to run Termux environment locally, on PC.

There is no way to make it support root-only usage. Termux package manager is patched to disable usage as root user, so privilege dropping is mandatory.

Also you need to start a local DNS resolver, which is currently dnsmasq. It sometimes doesn't work properly and hangs with 100% CPU usage. However there currently no better variant.

@agnostic-apollo
Copy link
Member

agnostic-apollo commented Apr 7, 2024

For package manager issue alone, patches could be updated to check some variable like $TERMUX__RUN_AS_USER==current_user before exiting.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants