crystal-lang/install-crystal

Nightly Installs Failing

grepsedawk opened this issue ยท 16 comments

Right now, when you try to install a nightly, it results in a circleCI 401 (unauthenticated) error:
https://github.com/public-law/devise.cr/runs/5568601799?check_suite_focus=true#step:3:12

Working on it. Thanks!

Cool, I thought I saw reference to somebody working on it, just wanted to make sure something was documented for others' having similar issues

For reference, the changes required to fix the common ci.yml look like this: grepsedawk/sharded.cr@77ec4ca

Removing nightly builds shouldn't be necessary, really. I'm confident we'll have this fixed and running quickly. Having a nightly build fail once shouldn't be an issue (they're unstable nightlies after all, so failure could happen for all kinds of reasons).

The next nightlies should be available again (crystal-lang/crystal#11902). We're just missing an update for the action.

Ah, in the meantime the old approach to fetching the nightlies started working again on its own ๐Ÿ˜…

๐Ÿคฆโ€โ™‚๏ธ

Maybe too many people complained at circle ci and they rolled back?

I think we should still continue with this change, though. We'd just depend on cicleci changing their mind again.

More importantly, it's The Right Thing to Doโ„ข

Failed again for me, but with a different error, could just be another blip ๐Ÿคท.

Installing package dependencies
Looking for latest Crystal build
sudo -n apt-get install -qy --no-install-recommends --no-upgrade -- libevent-dev libgmp-dev libpcre3-dev libssl-dev libxml2-dev libyaml-dev
Found Crystal build https://circleci.com/gh/crystal-lang/crystal/6[8](https://github.com/Blacksmoke16/oq/runs/5698495489?check_suite_focus=true#step:3:8)260

Error: TypeError: Cannot read property 'url' of undefined

https://github.com/Blacksmoke16/oq/runs/5698495489?check_suite_focus=true

This seems to have come back up, although with a new error:

2023-03-17T02:17:04.4892859Z Run crystal-lang/install-crystal@v1
2023-03-17T02:17:04.4893171Z with:
2023-03-17T02:17:04.4893381Z   crystal: nightly
2023-03-17T02:17:04.4893777Z   token: ***
2023-03-17T02:17:04.8896321Z Installing package dependencies
2023-03-17T02:17:04.8914142Z Looking for latest Crystal build
2023-03-17T02:17:04.9214428Z [command]sudo -n apt-get install -qy --no-install-recommends --no-upgrade -- libevent-dev libgmp-dev libpcre3-dev libssl-dev libxml2-dev libyaml-dev
2023-03-17T02:17:06.0214546Z Found Crystal build https://circleci.com/gh/crystal-lang/crystal/75069
2023-03-17T02:17:06.8993191Z ##[error]TypeError: artifacts.find is not a function

https://github.com/athena-framework/athena/actions/runs/4443502701/jobs/7800816554

EDIT: Seems to be intermittent. Probably something to do with the request to get the artifacts failing and returning an error object versus array.

https://discuss.circleci.com/t/issues-fetching-artifacts-vi-ui-and-api/47496/5

Thanks for reporting this. We have identified the root cause and will be rolling it back within the next hour.

That has since been completed and re-ran some of the jobs that failed due to this and they passed. So should be good to go.

I'm seeing this error again: artifacts.find is not a function ๐Ÿ˜ž

https://github.com/crystal-lang/test-ecosystem/actions/runs/9549827678/job/26320931726

Doesn't seem to be exact issue as last time. I'm kinda at a loss on this one. Can see this failure: https://github.com/Blacksmoke16/oq/actions/runs/9554914440/job/26338348064

Found Crystal build https://circleci.com/gh/crystal-lang/crystal/84001

But if I follow along with the code

install-crystal/index.js

Lines 405 to 411 in d2446e1

Core.info(`Found Crystal build ${build["build_url"]}`);
Core.setOutput("crystal", build["vcs_revision"]);
const req = `/${build["build_num"]}/artifacts`;
const resp = await fetch(CircleApiBase + req);
const artifacts = await resp.json();
const artifact = artifacts.find((a) => filePattern.test(a["path"]));

It works fine, in Chrome console at least:

image

๐Ÿค”

Ah, I figured it out. When I reproduced the steps I was logged into CircleCI. However, hitting up the artifacts endpoint for that build in incognito results in:

{"message":"You must log in first"}

I found a thread and bumped it as it seems there was a change in behavior. TBD if that is intended or not.

OK we have a problem indeed. It also happens on test runs of the action from today https://github.com/crystal-lang/install-crystal/actions/runs/9559784277

Seems to be working again as of now. Tho as per the other responses to that thread, TBD if it's actually resolved, or will break again at some point in the near future...