heroku / heroku-buildpack-google-chrome

Run (headless) Google Chrome on Heroku
296 stars 365 forks source link

google-chrome-beta_current_amd64.deb' is not a Debian format archive #114

Open CrazybutSolid opened 3 years ago

CrazybutSolid commented 3 years ago

When pushing changes to heroku, google chrome build pack gives the error:

remote: dpkg-deb: error: '/tmp/codon/tmp/cache/apt/cache/archives/google-chrome-beta_current_amd64.deb' is not a Debian format archive remote: ! Push rejected, failed to compile Google Chrome app. remote: remote: ! Push failed

tried the beta channel as well as the stable channel, same issue

majidhd001 commented 3 years ago

me also

mark-stephenson-cto commented 3 years ago

Does anyone have any suitable workarounds for this at the moment?

s2sv commented 3 years ago

Same for me...

Would appreciate if anyone has a solution?

freak-head commented 3 years ago

same

ENUM1 commented 3 years ago

same

Ottermad commented 3 years ago

So it looks like the chrome download is returning a 404 intermittently so the ".deb" file actually contains an error message rather than what it should. My hacky work around was to grab a copy of the deb and upload it to Github. Then I forked the buildpack and modded it to download the .deb file from there: https://github.com/Ottermad/heroku-buildpack-google-chrome

freak-head commented 3 years ago

So it looks like the chrome download is returning a 404 intermittently so the ".deb" file actually contains an error message rather than what it should. My hacky work around was to grab a copy of the deb and upload it to Github. Then I forked the buildpack and modded it to download the .deb file from there: https://github.com/Ottermad/heroku-buildpack-google-chrome

thanks it worked!

Thornolf commented 3 years ago

Hello, we have a hard time with this. Could you please provide us with a possible ETA for a fix ? Or if we can help in any way ? :) Thank you so much for you work !

majidhd001 commented 3 years ago

So it looks like the chrome download is returning a 404 intermittently so the ".deb" file actually contains an error message rather than what it should. My hacky work around was to grab a copy of the deb and upload it to Github. Then I forked the buildpack and modded it to download the .deb file from there: https://github.com/Ottermad/heroku-buildpack-google-chrome

safe ?

matthewford commented 3 years ago

+1

henryaj commented 3 years ago

@Ottermad - you're a hero

rahulkumariri commented 3 years ago

Hi Team, We are getting the same issue but it shows error for stable version "dpkg-deb: error: '/tmp/cache039779103/apt/cache/archives/google-chrome-stable_current_amd64.deb' is not a Debian format archive" while running ci pipeline

jipiboily commented 3 years ago

@Ottermad thanks!

Would you mind maybe sending a PR?

Or maybe @joshwlewis (who is working at Heroku and has the most commits in this repo) has a different approach in mind?

Maybe we should just update the URL to the "new" URL for the deb package (idk what it is, but there sure is one, right?).

I'm happy to help but would rather hear from someone at Heroku that has the power to decide what's the approach that we should move forward with.

Thanks!

mark-stephenson-cto commented 3 years ago

@Ottermad thanks!

Would you mind maybe sending a PR?

Or maybe @joshwlewis (who is working at Heroku and has the most commits in this repo) has a different approach in mind?

Maybe we should just update the URL to the "new" URL for the deb package (idk what it is, but there sure is one, right?).

I'm happy to help but would rather hear from someone at Heroku that has the power to decide what's the approach that we should move forward with.

Thanks!

He (@Ottermad) is self hosting the file so unless there is another trusted, shared, resource that can host the file it wouldnt be appropriate to point it to his file. If Heroku can self host the file then that would be OK, but surely the file itself should be available via the usual source shortly?

jipiboily commented 3 years ago

I mean, there must be a way right now to install Chrome on Debian, right? If yes, there is an official URL somewhere. That's this theory that I am referring to.

Or Heroku could possibly host it too, but it might not be an always current version.

henryaj commented 3 years ago

For now, I just forked @Ottermad's repo and compared the sha of the saved .deb with the one downloaded from the official servers.

Ottermad commented 3 years ago

So the 404 being returned by the official URL seems to be intermitted so I guess the cURL could be modified to check for the 404 and retry a couple of times if it receives a 404?

pboese commented 3 years ago

@Ottermad, you are my hero!

NeilSlater-Clixifix commented 3 years ago

So the 404 being returned by the official URL seems to be intermitted so I guess the cURL could be modified to check for the 404 and retry a couple of times if it receives a 404?

It does not seem intermittent for my company's CI/CD on Heroku, we have dozens of failed runs with this error and no successful ones. Whilst if I go to the link manually it downloads fine every time. I would instead suspect there is a networking or distribution issue (via a CDN at Google? Or perhaps a gateway/caching proxy at Heroku?), that means some locations can get the package normally, and others cannot.

elionntechguy commented 3 years ago

Is it fixed yet?

darynsteelsword commented 3 years ago

The situation looks to have been resolved, @elionntechguy, at least the url is not 404'ing any more.

$ wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
--2021-09-01 17:07:33--  https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
Resolving dl.google.com (dl.google.com)... 2a00:1450:4009:80b::200e, 216.58.212.238
Connecting to dl.google.com (dl.google.com)|2a00:1450:4009:80b::200e|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 82931984 (79M) [application/x-debian-package]
Saving to: ‘google-chrome-stable_current_amd64.deb’

google-chrome-stable_current_amd64.deb              14%[==============>                                                                                               ]  11.43M  10.9MB/
elionntechguy commented 3 years ago

The situation looks to have been resolved, @elionntechguy, at least the url is not 404'ing any more.

`wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb

--2021-09-01 17:07:33-- https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb

Resolving dl.google.com (dl.google.com)... 2a00:1450:4009:80b::200e, 216.58.212.238

Connecting to dl.google.com (dl.google.com)|2a00:1450:4009:80b::200e|:443... connected.

HTTP request sent, awaiting response... 200 OK

Length: 82931984 (79M) [application/x-debian-package]

Saving to: ‘google-chrome-stable_current_amd64.deb’

google-chrome-stable_current_amd64.deb 14%[==============> ] 11.43M 10.9MB/`

Thank you, i was waiting all day for a fix!

darynsteelsword commented 3 years ago

Thank you, i was waiting all day for a fix!

I have no idea what the original problem was, just glad it's back and I can deploy to Heroku again :)

-starts quietly paniccing over NPM upstreams now...-