-
Notifications
You must be signed in to change notification settings - Fork 62
Action incompatible with self-hosted runners #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
Comments
Hi, @IamBlueSlime. Was this working until recently but suddenly stopped working? |
Hi! Exactly, it stopped working since v1.8.0. I decided to pin the v1.7.2 in my workflows rather than using this tweak, personal preference. |
After investigating the diff, I'm pretty confident by saying that removing the fallback value here cause the issue, see The OTP download URL contains |
The code to "guess" this, before, was
now changed to
(since we now support Windows too) but:
I don't mind restoring the On the other hand, I could try as you propose Let's wait on other maintainers to give their opinion on whether we should use the |
This link doesn't work for me. |
Restoring the default value is clearly not an option here, as you said it is a time bomb. You can read the following file $ cat /etc/os-release
NAME="Ubuntu"
VERSION="20.10 (Groovy Gorilla)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.10"
VERSION_ID="20.10"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=groovy
UBUNTU_CODENAME=groovy I suggest you to:
Still not perfect, but better than nothing :) |
That'd put a block on Windows self-hosted, right? I'm not sure we want that. |
I do not have a Windows machine nearby, but there should be something more-or-less equivalent I guess. Meanwhile, it will be a good compromise don't you think? |
I'll look at this in the evening, if I have time, because I need to think about Windows too. It should be considered a bug and not a purposeful breaking change, so expect 1.8.2. In the meantime, yeah, you'll have to pin. |
What will? The compromise, for me, at the moment, is to pin the version to 1.7 until there's a fix. We added this info. (Action versioning) to the README in the latest release, so consumers should not rely on a moving tag (which might introduce bugs, even if unexpectedly). |
Leaving this here for future reference (this evening hopefully, for me), which should be combined with NodeJS'
(works for Ubuntu 16.04, 18.04 and 20.04) |
#59 was created to address this issue (hopefully it solves the reported bug). We try to guess the version as best as possible, especially for the containers we support (Ubuntu and Windows - made explicit in the README). If we can't do that, we exit with an explicit error (and you'll have to use |
I don't know how self-hosted runners work but shouldn't they replicate the environment of hosted runners as closely as possible? It is impossible for us to test against every possible self-hosted runner, we can only reasonably test against the runners GitHub provides. If other runners deviate so they no longer work I think it is up to the runner maintainers to fix it on their end and add the |
I whole heartily agree with this. I'd rather us not start doing guess work around operating systems when it's quite easy to specify the os. We have to keep in mind that we'll be supporting mac os and other *BSDs as well, in addition to linux distros and windows. Edit: Maybe it's counter-intuitive for some cases of self-hosted runners to specify |
I agree, we should document |
This does not seem to be working properly with act.
|
@bryannaegele Can you ask the act developers why they do not add the |
Hm... this is odd. (apart from what @ericmj wrote). You're actually passing ImageOS and the action seems to react poorly to that. |
It says it's in there 🤷🏻 |
It seems to be failing for that |
Yeah. It's not getting it whether set explicitly or not. Tried changing the strategy and it didn't work. |
The change to the strategy was just to try to understand if all runs were failing. I've pushed https://github.com/paulo-ferraz-oliveira/setup-beam/tree/more-debug-info and will pull request soon. Could you change your stuff to |
Did a verbose run and the env has two os vars available
|
What I'd like to see would be the output of the action when using my branch (it seems somehow the env.var isn't obtained by the action itself, which is the odd bit). |
Oh, wait. |
Act is setting it to that, so we have an impasse? 😆 Maybe we can add that format also, or honor the |
Actually, I'm not sure how it's getting the |
It seems the Go code you linked to might be wrong (but I don't have further context). |
No impasse for me 😄. The action works for whatever GitHub Actions is itself setting, which is our reference. This is where it got added: actions/runner-images#345.
Where does this |
I'm not sure. I think it's set by actions. I tried the split change you pointed out in a repl and it is wrong. I can submit a PR to them and that should fix it. It does appear to be incorrect according to that link. |
see ``` Error: Tried to map a target OS from env. variable 'ImageOS' (got ubuntu22), but failed. If you're using a self-hosted runner, you should set 'env': 'ImageOS': ... to one of the following: ['ubuntu16', 'ubuntu18', 'ubuntu20', 'win16', 'win19'] ``` erlef/setup-beam#58
Part 1: fix the self-hosted runner warnings see ``` Error: Tried to map a target OS from env. variable 'ImageOS' (got ubuntu22), but failed. If you're using a self-hosted runner, you should set 'env': 'ImageOS': ... to one of the following: ['ubuntu16', 'ubuntu18', 'ubuntu20', 'win16', 'win19'] ``` erlef/setup-beam#58 Part 2: add publish-to-hex workflow
Part 1: fix the self-hosted runner warnings see ``` Error: Tried to map a target OS from env. variable 'ImageOS' (got ubuntu22), but failed. If you're using a self-hosted runner, you should set 'env': 'ImageOS': ... to one of the following: ['ubuntu16', 'ubuntu18', 'ubuntu20', 'win16', 'win19'] ``` erlef/setup-beam#58 Part 2: add publish-to-hex workflow
Hi,
This action is now incompatible with self-hosted runners, where the
ImageOS
environment variable is not provided. To let it work, the environment variable has to be injected manually:Honestly, I do not know what to think about this 😞 , maybe you should rework this part by asking the system directly the version with
uname
maybe :).The text was updated successfully, but these errors were encountered: