Jiri Daněk created DISPATCH-2365:
------------------------------------
Summary: CentOS 7 went out-of-life, causing GitHub Actions CI to
fail
Key: DISPATCH-2365
URL: https://issues.apache.org/jira/browse/DISPATCH-2365
Project: Qpid Dispatch
Issue Type: Task
Components: Tests
Affects Versions: 1.19.0
Reporter: Jiri Daněk
Assignee: Jiri Daněk
h3. Packaged GitHub Actions don't run on CentOS 7
* https://github.com/actions/runner/issues/2906
* https://github.com/actions/setup-node/issues/922
GitHub Actions use node20 to run packaged actions (checkout, etc.) and the
binary they provide does not run in CentOS 7 due to outdated glibc.
{noformat}
Run actions/checkout@v3
/usr/bin/docker exec
568e0d8b45581f2bd7846905881740f0561119866cb2602a485d77d6caa8ed79 sh -c "cat
/etc/*release | grep ^ID"
/__e/node20/bin/node: /lib64/libm.so.6: version `GLIBC_2.27' not found
(required by /__e/node20/bin/node)
/__e/node20/bin/node: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found
(required by /__e/node20/bin/node)
/__e/node20/bin/node: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found
(required by /__e/node20/bin/node)
/__e/node20/bin/node: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found
(required by /__e/node20/bin/node)
/__e/node20/bin/node: /lib64/libc.so.6: version `GLIBC_2.28' not found
(required by /__e/node20/bin/node)
/__e/node20/bin/node: /lib64/libc.so.6: version `GLIBC_2.25' not found
(required by /__e/node20/bin/node)
{noformat}
h3. CentOS 7 package mirrors have been archived
The original .repo files shipped in the container no longer work. They have to
be deleted and replaced with links to the archive location.
h3. GitHub Actions container jobs is all or nothing
While running all steps in a container is easy,
https://docs.github.com/en/actions/writing-workflows/choosing-where-your-workflow-runs/running-jobs-in-a-container,
opting out or in for specific steps of the job does not seem possible
https://github.com/actions/runner/issues/812
A workable solution is to mount the docker socket from host into the container
and then launch additional containers on the host from within. Docker socket
essentially means having root on the host machine.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]