jpmeijers / ttn-resin-gateway-rpi

81 stars 41 forks source link

apt-get update is failing in debian #26

Closed BraveUlysses81 closed 5 years ago

BraveUlysses81 commented 5 years ago

I seem to be experiencing an error when trying to build. I get this in the output when I try and push up a build to my balena repo:

git push balena Counting objects: 741, done. Delta compression using up to 8 threads. Compressing objects: 100% (312/312), done. Writing objects: 100% (741/741), 3.27 MiB | 1.48 MiB/s, done. Total 741 (delta 414), reused 741 (delta 414) remote: Resolving deltas: 100% (414/414), done.

[Info] Starting build for lorawangw, user willie_witten [Info] Dashboard link: https://dashboard.balena-cloud.com/apps/1418133/devices [Info] Building on arm03 [Info] Pulling previous images for caching purposes... [Success] Successfully pulled cache images [main] Step 1/14 : FROM resin/raspberrypi3-debian:latest AS buildstep [main] ---> 88ed09f4b4bf [main] Step 2/14 : WORKDIR /opt/ttn-gateway/ [main] ---> 67c5a6c6397c [main] Removing intermediate container 95181ceb3999 [main] Step 3/14 : RUN apt-get update && apt-get install wget build-essential libc6-dev git pkg-config protobuf-compiler libprotobuf-dev libprotoc-dev automake libtool autoconf python-dev python-rpi.gpio [main] ---> Running in 1d54fc0f4d7e [main] Get:1 http://archive.raspbian.org jessie InRelease [15.0 kB] [main] Get:2 http://archive.raspberrypi.org jessie InRelease [22.9 kB] [main] Get:3 http://security.debian.org jessie/updates InRelease [44.9 kB] [main] Ign http://deb.debian.org jessie InRelease [main] Ign http://deb.debian.org jessie-updates InRelease [main] Get:4 http://deb.debian.org jessie Release.gpg [2420 B] [main] Ign http://deb.debian.org jessie-updates Release.gpg [main] Get:5 http://deb.debian.org jessie Release [148 kB] [main] Ign http://deb.debian.org jessie-updates Release [main] Err http://deb.debian.org jessie-updates/main armhf Packages [main] Err http://deb.debian.org jessie-updates/main armhf Packages [main] Err http://deb.debian.org jessie-updates/main armhf Packages [main] Err http://deb.debian.org jessie-updates/main armhf Packages [main] Err http://deb.debian.org jessie-updates/main armhf Packages [main] 404 Not Found [main] Get:6 http://archive.raspbian.org jessie/main armhf Packages [13.3 MB] [main] Get:7 http://archive.raspbian.org jessie/contrib armhf Packages [49.5 kB] [main] Get:8 http://archive.raspberrypi.org jessie/main armhf Packages [170 kB] [main] Get:9 http://archive.raspbian.org jessie/non-free armhf Packages [106 kB] [main] Get:10 http://archive.raspbian.org jessie/rpi armhf Packages [1297 B] [main] Get:11 http://archive.raspbian.org jessie/firmware armhf Packages [1208 B] [main] Get:12 http://deb.debian.org jessie/main armhf Packages [8898 kB] [main] Get:13 http://security.debian.org jessie/updates/main armhf Packages [794 kB] [main] Fetched 23.6 MB in 13s (1785 kB/s) [main] W: Failed to fetch http://deb.debian.org/debian/dists/jessie-updates/main/binary-armhf/Packages 404 Not Found [main] E: Some index files failed to download. They have been ignored, or old ones used instead. [main]
[main] Removing intermediate container 1d54fc0f4d7e [main] The command '/bin/sh -c apt-get update && apt-get install wget build-essential libc6-dev git pkg-config protobuf-compiler libprotobuf-dev libprotoc-dev automake libtool autoconf python-dev python-rpi.gpio' returned a non-zero code: 100 [Info] Uploading images [Success] Successfully uploaded images [Error] Some services failed to build: [Error] Service: main [Error] Error: The command '/bin/sh -c apt-get update && apt-get install wget build-essential libc6-dev git pkg-config protobuf-compiler libprotobuf-dev libprotoc-dev automake libtool autoconf python-dev python-rpi.gpio' returned a non-zero code: 100 [Error] Not deploying release.

remote: error: hook declined to update refs/heads/master To git.balena-cloud.com:willie_witten/lorawangw.git ! [remote rejected] master -> master (hook declined) error: failed to push some refs to 'willie_witten@git.balena-cloud.com:willie_witten/lorawangw.git'

I found this link to be of some pertinence, but I'm not sure how to resolve the issue.

https://superuser.com/questions/1417617/apt-get-update-is-failing-in-debian/1417633

krital commented 5 years ago

+1

jpmeijers commented 5 years ago

I think a workaround for now would be to change RUN apt-get update && \ to RUN apt-get update; \ in the two DOCKERFILEs.

When I have a chance I'll test and make the change on the repo. But this does feel like a temporary issue with the Debian repo's or the Debian docker image, so hopefully it is fixed upstream soon.

BraveUlysses81 commented 5 years ago

Thanks for being on this so quickly. I tried to do a little research myself last night. Here's what I came up with. It looks like some of the jessie backports have been moved to:

archive.debian.org according to this link: https://unix.stackexchange.com/questions/508724/failed-to-fetch-jessie-backports-repository

I tried to look and find where the actual calls get made to get these, but I couldn't find it. I don't have the coding chops that some of you guys have.

BraveUlysses81 commented 5 years ago

I went into my terminal and tried to make the changes in my local you mentioned in: Dockerfile.template Dockerfile.template.metering

I changed: RUN apt-get update && \ to RUN apt-get update; \ the two times in each file where it occurred.

Every time I try and run a push, the output continues to show the RUN apt-get update && \

My local change to the files is having no effect on what runs. I'm definitely missing a bigger element here. I thought I was build from the files contained in my local repo that I cloned from you. Is it continually pulling and build from the original repo each time? I'm befuddled.

BraveUlysses81 commented 5 years ago

My last question for the day (because I am missing a critical idea here that I need to figure out or have answered) is what is happening in these first steps that result in this terminal output:

[Info]     Starting build for lorawangw, user willie_witten
[Info]     Dashboard link: https://dashboard.balena-cloud.com/apps/1418133/devices
[Info]     Building on arm03
[Info]     Pulling previous images for caching purposes...

I tried to --no-cache the build, but I can't even get that in there. Nothing I change to my local code seems to matter, but I can see how it is that I'm pushing from something that isn't local. I don't understand how this is working at it's core and it's been a while since I've been this confused. Hahaha.

jpmeijers commented 5 years ago

The workflow is as follows: git clone make the changes in your local copy git commit (to commit the changes you made to your local copy) git push resin (to push your local repo copy to resin)

So you might be missing the git commit step.

jpmeijers commented 5 years ago

https://forums.balena.io/t/if-you-have-an-image-using-jessie-it-appears-that-they-may-be-broken-this-morning/5773

jpmeijers commented 5 years ago

Fixed in commit 9a258ce

jpmeijers commented 5 years ago

I have changed it now to use the balenalib images rather than the resin images that are not updated anymore. Balena should have been more clear about them discontinuing the resin images.