-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
Bintray badge is flaky #658
Comments
Having the same issue here |
It works sometimes, but mostly not. Could it be caused by bintray api limits? |
Can confirm that this is still an issue. It was working yesterday, but all Bintray badges (at least the one for my project and the example from shields.io) are currently showing "invalid". |
Badge is broken for my project as well. Rate limiting is very likely the culprit. |
The request performed is |
As of today, the issue is still present. Does anyone have contacts at Bintray to see if we can resolve this? |
Here is what bintray support answered about this issue:
So there are no limits on bintray side and probably the problem is on the shields side. Dear shield maintainers, please look actual error messages in your logs and try to investigate this. P.S. I also asked bintray support to allow bintray badge customization (different message), but don't know if this ever happen:
|
The badge has broken again... |
Shields.io seems to be flakey for bintray badge. See badges/shields#658 Travis CI has an identical looking badge, so might as well go direct for it as well.
Since Bintray's and Travis's badges look the same as shields.io's, use them because of this issue on shields.io: badges/shields#658
Since Bintray's and Travis's badges look the same as shields.io's, use them because of this issue on shields.io: badges/shields#658
(bintray badge does not work reliably) badges/shields#658
It looks like the badge has been flaky for a long time. Unfortunately the server doesn't log all the API calls. So I think the way to resolve this long-standing issue is to set up a recurring test over a week or more, and send documentation of the failures to their support. If anyone is game, would be great to have your help! |
any update? |
For some reason, the Shields badge displays _invalid_. See [related issue](badges/shields#658).
Copying from above: I think the way to resolve this long-standing issue is to set up a recurring test over a week or more, and send documentation of the failures to their support. If anyone is game, would be great to have your help! |
Just FYI, Bintray seem to have their own badge now. But it would still be nice to have the Shields one. |
It is possible to use the Shields badge via the dynamic endpoint using the URL for the Bintray API and
|
I can confirm that this issue still exists. |
Interestingly enough, it seems that the API call we use does not require any authentication for public packages: https://bintray.com/docs/api/#_get_version And when I remove auth in our call, the badges work just fine shields/services/bintray/bintray.service.js Lines 47 to 54 in 7a7bf66
|
False alarm (some fluke in my local env). However, it does seem that the bintray badges are working fine in other environments, like staging: https://shields-staging.herokuapp.com/bintray/v/asciidoctor/maven/asciidoctorj So my guess is that in production we're either:
|
@paulmelnikow - do you know if we have |
Yes, they are both set. I think the auth was added not for private projects, but because it provided a higher rate limit. We could try creating a second token and an auth pool for Bintray… though maybe they could give us a megatoken instead? Has anyone managed to reach them? |
I'm thinking we may be able to solve this by unsetting Support for bintray goes way back in Shields' history, so apologies if I've missed any relevant threads or discussion. From what I can tell, when bintray support was first added, the bintray API we use to get the latest version required authentication (like the Wheelmap and SymfonyInsight services do) As such, our calls were subject to the rate limits imposed by JFrog
However, at some point over the years, JFrog made the bintry API available anonymously and non-rate limited for public packages (private packages still require auth), which would explain the response from the JFrog Support team that was shared above https://bintray.com/docs/api/#_get_version
For example: {
"name":"2.1.0",
"desc":null,
"package":"asciidoctorj",
"repo":"maven",
"owner":"asciidoctor",
"labels":[
"asciidoctor",
"java",
"asciidoctorj",
"asciidoc",
"jruby"
],
"published":true,
"attribute_names":[
],
"created":"2019-06-22T16:33:07.367Z",
"updated":"2019-06-22T16:48:02.333Z",
"released":"",
"ordinal":36.0,
"rating_count":0
} Since we've got bintray auth configured on the badge servers, we're (IMO) unnecessarily authenticating and subjecting our calls to rate limiting which is resulting in the flaky badge behavior we are seeing. There is another issue (#1193) requesting bintray download count badges, and the bintray APIs needed for download stats will require auth, but I think we can tackle the auth/rate limiting over there. |
Okay, I'm game to remove the credentials on the next deploy and see how it goes! |
🤞 |
Were the creds removed on the last deploy? If so I'll try to keep checking on the badges to see if we get any more |
Yes, they were. I'm rolling back the code now, but the creds will remain unset. |
AFAICT the bintray badges have been consistently working since we removed the creds. Has anyone seen anymore |
It's been over a week since the change was made and it appears this has been resolved. I'm going to close this issue out accordingly |
Could potentially be replaced with https://bintray.com/api/ui/package/:subject/:repo/:package which returns a lot of info including {..., "latestVersion": "x.y.z-M..."} |
The Bintray badge seems to be broken; all versions are rendered as a grey "invalid".
Perhaps the API has changed? I've tested with multiple repositories but the example on shields.io itself is also broken:
The text was updated successfully, but these errors were encountered: