termux / termux/termux-docker

Poor Github Actions support

Open
#62 2 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

github_actions
Dominant language
Shell
Stars
731
Forks
109
PR merge metrics
No merged PRs in 30d

Description

It would be nice if termux-docker supported Github Actions better. Hopefully, people will add Termux to their CI.

I made a test repository to showcase it: guijan/termux-on-gha

The issue is that right now there's no documentation on how to get it working, and the straightforward way is broken. Here's the current state of things:
https://github.com/guijan/termux-on-gha/blob/a9a2cf26be0299c1643be12acfa301b0465ad2c1/.github/workflows/build-and-test.yml
The file is short and commented, hopefully it's easy to follow.

Users need to prefix pkg and pip with the /entrypoint.sh script because otherwise they run as the root user and error. This happens because github overrides the entrypoint, as can be seen here: https://github.com/orgs/community/discussions/26465

If you fix the issue above, you will run into further breakage. The widely used checkout and upload-artifact actions don't currently work with Termux. The checkout action errors because of the same problem as this issue I found out there (no /etc/os-release file, and possibly more): https://github.com/prometheus/prometheus/issues/12656
Someone has suggested adding an /etc/os-release to Termux before: https://github.com/termux/termux-app/issues/2620

I haven't investigated why the upload-artifact action fails.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the linked .github/workflows/build-and-test.yml in the test repository and inspect /entrypoint.sh to reproduce the entrypoint behavior. Investigate the checkout and upload-artifact failures separately, then document the required setup and make the workflow work with Termux, including those actions if supported.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, github-actions, shell
Domain
ci-cd, devops, documentation
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.