Skip to content

Fix Android CI#7546

Merged
sylvestre merged 3 commits intouutils:mainfrom
drinkcat:fix-android-ci
Mar 23, 2025
Merged

Fix Android CI#7546
sylvestre merged 3 commits intouutils:mainfrom
drinkcat:fix-android-ci

Conversation

@drinkcat
Copy link
Collaborator

@drinkcat drinkcat commented Mar 23, 2025

Still no clue what changed, but I think this should fix some tests (last 2 commits are good fixes IMHO), and disable the others (still no idea what exactly is going on here...)


test_*: Disable tests that require setting rlimit on Android

See #7542, it's not totally clear where the problem comes from,
but blanking LD_PRELOAD set by termux seems to fix the problem
(but introduces other issues.

Let's just disable these tests for now.

test_env: Try to execute an empty file instead of .

For some unclear reason, Android now sometimes returns an
IsADirectory error, instead of PermissionDenied, when trying
to execute ..

Since this test really wants to test PermissionDenied, we try
to execute a file in the fixture instead, that doesn't have
exec permission.

Also, limit this test to Unix.

Fixes part of #7542.

tests/common/util: Make sure test_altering_umask is run in correct shell

On Android CI, sh would point at a different flavor of shell
shipped with termux (dash).

The current umask test expects that /system/bin/sh is used though,
so create a new function TestScenario:cmd_shell that runs a command
in the default shell (that could be used in more tests).

Fixes one part of #7542.

@github-actions
Copy link

GNU testsuite comparison:

Skip an intermittent issue tests/timeout/timeout (fails in this run but passes in the 'main' branch)

On Android CI, `sh` would point at a different flavor of shell
shipped with termux (dash).

The current umask test expects that `/system/bin/sh` is used though,
so create a new function TestScenario:cmd_shell that runs a command
in the default shell (that could be used in more tests).

Fixes one part of uutils#7542.
For some unclear reason, Android _now_ sometimes returns an
IsADirectory error, instead of PermissionDenied, when trying
to execute `.`.

Since this test really wants to test PermissionDenied, we try
to execute a file in the fixture instead, that doesn't have
exec permission.

Also, limit this test to Unix.

Fixes part of uutils#7542.
See uutils#7542, it's not totally clear where the problem comes from,
but blanking LD_PRELOAD set by termux seems to fix the problem
(but introduces other issues.

Let's just disable these tests for now.
@drinkcat drinkcat marked this pull request as ready for review March 23, 2025 19:45
@github-actions
Copy link

GNU testsuite comparison:

Skip an intermittent issue tests/timeout/timeout (fails in this run but passes in the 'main' branch)

@sylvestre
Copy link
Contributor

kudos :)
is it ok to merge?

@drinkcat
Copy link
Collaborator Author

Yeah, seems worth it to have a green CI... we can always modify again later.

@sylvestre sylvestre merged commit c610262 into uutils:main Mar 23, 2025
68 checks passed
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

Successfully merging this pull request may close these issues.

2 participants