-
Notifications
You must be signed in to change notification settings - Fork 58
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
Version 1.2.12 fails to work on CentOS7, but 1.2.11 was fine #178
Comments
Thanks for the report. Is this a custom runner image? CentOs7 is not listed at https://github.com/actions/runner-images. To set expectations right: I can't provide any support for this.
you probably saw the merge commit, the change is here: #177 The reason is this.
Anyway, can you explain your setup in more detail and if possible provide logs? Are you effected by this? If so, downgrading to node 18 might be the better alternative. I would love to avoid maintaining 2 versions. |
Also occurs with workflows utilizing older docker images. See |
It also seems like this caused a major slowdown in the Before: https://github.com/danmar/cppcheck/actions/runs/7646437504/job/20835239981 The jobs fixated on the |
You're 1st problem is similar to the reported one, you are running it inside a custom image. That image seems to lack node 20. It would be nice if you could find out if node 18 would work. It would be technically better if you run the action outside of docker(on the official github runner) and use docker only for building. This requires exposing the host fs and setting the ccache path accordingly like it is done here. There is no alternative to an upgrade of the nodejs version, node 16 is EOL as clearly stated by github. However we are flexible w.r.t. upgrading it to 18 vs. 20. Your 2nd problem: It ran slower, because it did not found a cache. This seems like a different problem, which might or might not be caused by the upgrade of nodejs. For such cases it is best to let it run a 2nd time to see if the problem persists. It might be that the underlying github cache layer puts something more into the key. A 2nd run should get the cache from the 1st run. |
@hendrikmuhs , we use containers for CentOS:7. Imho, there is no need to maintain two versions. Please, do not introduce such a dramatical change with the patch version increment next time :) Probably, there is no action actually needed ATM, because all poor projects, unhappy with the nodejs hidden version shift will stick with the 1.2.11 after reading this thread. |
As said, there has never be a guarantee that custom runners work. All official github runners support node 20. Repeating my question: Would node 18 work? - if you or anyone else affected can answer this question, I happily change this, otherwise it stays at it is. I don't have the resources to test this myself. |
Thank you. Node18 does not help. Node18 requires newer GLIBC and is incompatible with Ubuntu 18.04 and other obsolete/EOL releases. The only thing I ask you is about versioning. We are happy to use unsupported older 1.2 version of your action as we do with |
I second to start a new version for this change and leave
It did find a cache. Otherwise it would not have been able to restore that and have any hits. Here's the same results from a 1.2.11: https://github.com/danmar/cppcheck/actions/runs/7687753684/job/20948156884 The stats are different because different More 1.2.12 cases on various runners without docker involved: I do assume this is actually a Node issue and I will file an issue upstream. We should also track this in a different issue within this repo. |
You might have a problem with cache eviction as I see many many jobs. Back to your initial post:
This is from your run:
Source:
Update: Or do you mean: It finds the cache now? I am not sure I fully understand. What we know so far is that after the update, the cache was not found. The inner workings of the cache, meaning the github backend side (not this action, not ccache), are best to my knowledge not open/public source. I found other cases where it behaved strangely, maybe the node version is somehow backed into the key in an implicit way. We also had similar behaviour after github upgraded the client libraries. In summary it happens that a cache entry is for some reason missing, but usually it fixes itself with consecutive runs. This is just the usual SLA of a cache, but as long as it works most of the time, this seems fine. |
The parallel issue actions/runner#2906 reports some success after downgrade, however https://github.com/nodejs/node/blob/v18.x/BUILDING.md#platform-list clearly states the newer glibc for In general I advise not to use tag sliding. I slide the tag on release, but I consider this bad practice. The suggested practice is an explicit version in combination with dependabot. The action has very little QA coverage especially when it comes to exotic setups. |
I am seeing the same issue with older Ubuntu docker images. Version @1.2.11 seems to work, but @v1 fails. https://github.com/robotraconteur/robotraconteur/actions/runs/7691430275 |
Alright, I think here is what we should do:
If you want to help:
|
Agreed!
Can do. |
I am ready to test new tags for obsolete builders. You are free to send a PRs with changes in this line https://github.com/trikset/trikRuntime/blob/master/.github/workflows/centos.yml#L73 , or I can do it by request. |
#5952) As the work on hendrikmuhs/ccache-action#178 and hendrikmuhs/ccache-action#179 has stalled roll back all usages to the previous version for now. This prevents the steps from running into a 2 minutes timeout.
Even with fixating to version |
Thus, this action fails to work where it was used via
@v1.2
.Please, remove this release or re-release as
v1.2.14
the backward-compatible version.The problem is hidden in the
cache
action version 3.2.3 (PR #175), that introducesnode20
dependency.I suggest to re-release the update as
v1.3
or evenv2
, because actually It is not a "minor fix".The text was updated successfully, but these errors were encountered: