actions / upload-artifact

MIT License
3.16k stars 710 forks source link

[bug] v2, v3 and v4 fail in 32-bit containers #616

Open dscho opened 2 weeks ago

dscho commented 2 weeks ago

What happened?

Thanks to the helpful brown-out to notify everybody about the deprecated v1, I once again tried to run actions/upload-artifact@v4 in an i686 Docker container, and it fails miserably:

exec /__e/node20/bin/node: no such file or directory

What did you expect to happen?

I expected to either be allowed to use the deprecated v1 (which works!), or for v4 to work (which does not).

How can we reproduce it?

name: CI

on: [push, pull_request]

jobs:
  demo:
    name: demonstrate need for "deprecated" actions/upload-artifact in i386 containers
    runs-on: ubuntu-latest
    container: i386/ubuntu:focal
    steps:
    - name: Upload fails
      # shows 'exec /__e/node20/bin/node: no such file or directory'
      uses: actions/upload-artifact@v4
      with:
        name: some-artifact
        path: .

Anything else we need to know?

This has been noted in git/git, which is a quite high-profile project.

What version of the action are you using?

v4

What are your runner environments?

linux

Are you on GitHub Enterprise Server? If so, what version?

no

dscho commented 2 weeks ago

Related:

dscho commented 2 weeks ago

Also related: https://github.com/actions/runner/issues/2115

dscho commented 2 weeks ago

For the record: The Git project currently uses git/git@90f2c7240ccc7fb349199b4ded6b47702b40331f, which removes the upload altogether. This is not ideal, of course, as investigating test failures is made much harder by that, requiring any person investigating the test failures to recreate the same environment as in the workflow job, locally, and then hoping that the problem reproduces there.

dscho commented 2 weeks ago

I've got more information now: