heroku-buildpack-elixir-otp-builds icon indicating copy to clipboard operation
heroku-buildpack-elixir-otp-builds copied to clipboard

Travis build script fails silently

Open behe opened this issue 4 years ago • 13 comments

The latest few updates with OTP version has silently failed on Travis with results in no new OTP build uploaded:

The command '/bin/sh -c apt-get update' returned a non-zero code: 100
239Unable to find image 'otp-build:latest' locally
240docker: Error response from daemon: pull access denied for otp-build, repository does not exist or may require 'docker login'.
241See 'docker run --help'.
242Error: No such container:path: otp-build-24.0.1-cedar-14:/home/build/out/OTP-24.0.1.tar.gz
243cedar-14
244The command "bash build.sh" exited with 0.
245

Example from https://travis-ci.org/github/HashNuke/heroku-buildpack-elixir-otp-builds/builds/771924649

behe avatar Jun 10 '21 14:06 behe

Specifically these versions seem like they have not been build and uploaded by the script:

  • 24.0.1
  • 23.3.4
  • 23.3.3
  • 23.2.7.3
  • 22.3.4.18
  • 22.3.4.12.1
  • 21.3.8.23

behe avatar Jun 11 '21 09:06 behe

I'm getting the same error here

indocomsoft avatar Jun 12 '21 11:06 indocomsoft

I tried looking into this just a little bit.

  • The error message 240docker: Error response from daemon: pull access denied for otp-build, repository does not exist or may require 'docker login'. is a bit misleading and comes from this segment
    • Line 11 tries to unsuccessfully pull otp-build image, which fails because that’s an image that’s not supposed to be pulled, but rather built and tagged on line 10
  • docker build from line 10 fails because apt-get update fails
  • apt-get update fails because it can’t read repo manifest from PostgreSQL
  • And that fails because PostgreSQL seems to have removed trusty-pgdg from this directory
  • But provided that we don’t need PostgreSQL for building OTP (I hope?), perhaps the issue could be temporarily resolved by adding RUN sed -i '/^deb http:\/\/apt\.postgresql\.org\/*/d' /etc/apt/sources.list on line 3 in cedar-14.dockerfile

I have not fully tested this but I ~can prepare~ prepared a PR if you’d like to give this test a try 👌 cc @HashNuke

Cellane avatar Jun 28 '21 07:06 Cellane

@HashNuke Thank you for merging my PR! However, it seems like that did not trigger a single Travis build… I think that could be caused by this warning: “Since June 15th, 2021, the building on travis-ci.org is ceased. Please use travis-ci.com from now on.”

Do you think it would be possible to migrate the project over to travis-ci.com? 🙇‍♂️

Cellane avatar Jun 29 '21 00:06 Cellane

@HashNuke Thank you for merging my PR!

@Cellane that PR was merged by @jesseshieh.

szymon-jez avatar Jun 29 '21 07:06 szymon-jez

Ah, my bad! Sorry, I did not check properly!

Cellane avatar Jun 29 '21 11:06 Cellane

I think your diagnosis was correct, but it looks like the merged PR wasn't able to fix the issue. I'm trying to re-order the commands like this: https://github.com/HashNuke/heroku-buildpack-elixir-otp-builds/commit/0445ff9ad87db7be24cfdcf4216d17135af6986d

jesseshieh avatar Jul 23 '21 14:07 jesseshieh

It does appear like the builds have indeed stopped though as you mentioned before. "Since June 15th, 2021, the building on travis-ci.org is ceased. Please use travis-ci.com from now on."

@HashNuke do you think you can help us migrate to travis-ci.com? It doesn't look like it's too involved. https://docs.travis-ci.com/user/migrate/open-source-repository-migration

jesseshieh avatar Jul 23 '21 14:07 jesseshieh

Aa, true, the workaround should definitely come before trying to run apt-get update. Thanks for catching that!

Cellane avatar Jul 23 '21 14:07 Cellane

@jesseshieh @HashNuke What's the word on the move to travis-ci.com ?

ghost avatar Sep 12 '21 08:09 ghost

I know I'd love to see this; I'm really curious to see how my app performs with erlang 24 and the JIT.

hlship avatar Oct 23 '21 19:10 hlship

@hlship If you upgrade your stack to gigalixir-20, you should be able to choose erlang 24. The erlang builds here are just for the older stacks.

jesseshieh avatar Oct 23 '21 20:10 jesseshieh

I've been deploying using Dokku on Digital Ocean, so there's a lot of the stack I don't (yet?) understand.

hlship avatar Oct 23 '21 21:10 hlship