Closed
Bug 1501123
Opened 7 years ago
Closed 7 years ago
docker image failing to build
Categories
(Socorro :: Infra, task, P1)
Socorro
Infra
Tracking
(Not tracked)
RESOLVED
WORKSFORME
People
(Reporter: willkg, Assigned: willkg)
Details
The "app" image is failing to build:
"""
docker-compose build --no-cache --build-arg userid=1000 --build-arg groupid=1000 app
Building app
Step 1/35 : FROM python:2.7.14-slim
---> 4fd30fc83117
Step 2/35 : ARG groupid=10001
---> Running in 18db8524097e
Removing intermediate container 18db8524097e
---> f7f0a4c6aae4
Step 3/35 : ARG userid=10001
---> Running in bd4298d6d626
Removing intermediate container bd4298d6d626
---> 3fa5149b7cd4
Step 4/35 : WORKDIR /app/
Removing intermediate container eec3b15ba67a
---> ca47b5fad9e4
Step 5/35 : RUN groupadd --gid $groupid app && useradd -g app --uid $userid --shell /usr/sbin/nologin app
---> Running in 904a76849d8d
Removing intermediate container 904a76849d8d
---> 8ebf0cd2cf5c
Step 6/35 : COPY ./docker/set_up_ubuntu.sh /tmp/
---> 3b77d321c70a
Step 7/35 : RUN DEBIAN_FRONTEND=noninteractive /tmp/set_up_ubuntu.sh
---> Running in abf9befab1f0
# Update the operating system and install OS-level dependencies
apt-get update
+ apt-get update
Get:1 http://security.debian.org jessie/updates InRelease [44.9 kB]
Ign http://deb.debian.org jessie InRelease
Ign http://deb.debian.org jessie-updates InRelease
Ign http://deb.debian.org jessie Release.gpg
Ign http://deb.debian.org jessie-updates Release.gpg
Ign http://deb.debian.org jessie Release
Ign http://deb.debian.org jessie-updates Release
Get:2 http://security.debian.org jessie/updates/main amd64 Packages [679 kB]
Err http://deb.debian.org jessie/main amd64 Packages
404 Not Found
Err http://deb.debian.org jessie-updates/main amd64 Packages
404 Not Found
Fetched 723 kB in 4s (156 kB/s)
W: Failed to fetch http://deb.debian.org/debian/dists/jessie/main/binary-amd64/Packages 404 Not Found
W: Failed to fetch http://deb.debian.org/debian/dists/jessie-updates/main/binary-amd64/Packages 404 Not Found
E: Some index files failed to download. They have been ignored, or old ones used instead.
ERROR: Service 'app' failed to build: The command '/bin/sh -c DEBIAN_FRONTEND=noninteractive /tmp/set_up_ubuntu.sh' returned a non-zero code: 100
Makefile:72: recipe for target 'build' failed
make: *** [build] Error 1
"""
I did that with --no-cache. It's failing both in my local dev environment as well as in Circle CI.
It just started failing today. Maybe it's temporary.
If not, we need to fix it since this blocks development and deploys.
Assignee | ||
Comment 1•7 years ago
|
||
I'll look at it tomorrow. Hopefully it goes away by then.
Assignee: nobody → willkg
Status: NEW → ASSIGNED
Priority: -- → P1
Assignee | ||
Comment 2•7 years ago
|
||
The python 2.7.14-slim image is based on jessie and it looks like some files are missing from the archive or something. I didn't spend a lot of time looking into it for reasons that will become clear upon further reading.
The python 2.7.15-slim image is based on stretch. We should switch to that, but when the image is building, it goes to build stackwalker and downloads the breakpad binaries that taskcluster built and tries to compile against them and that doesn't work. It gets this:
"""
make
+ make
g++ -I../stackwalk/src -Ijsoncpp-src-0.5.0/include -D__STDC_FORMAT_MACROS=1 -std=gnu++0x -Wno-format -Werror -I/usr/include/x86_64-linux-gnu -c -o http_symbol_supplier.o http_symbol_supplier.cc
g++ -I../stackwalk/src -Ijsoncpp-src-0.5.0/include -D__STDC_FORMAT_MACROS=1 -std=gnu++0x -Wno-format -Werror -I/usr/include/x86_64-linux-gnu -c -o json_reader.o jsoncpp-src-0.5.0/src/lib_json/json_reader.cpp
g++ -I../stackwalk/src -Ijsoncpp-src-0.5.0/include -D__STDC_FORMAT_MACROS=1 -std=gnu++0x -Wno-format -Werror -I/usr/include/x86_64-linux-gnu -c -o json_value.o jsoncpp-src-0.5.0/src/lib_json/json_value.cpp
g++ -I../stackwalk/src -Ijsoncpp-src-0.5.0/include -D__STDC_FORMAT_MACROS=1 -std=gnu++0x -Wno-format -Werror -I/usr/include/x86_64-linux-gnu -c -o json_writer.o jsoncpp-src-0.5.0/src/lib_json/json_writer.cpp
g++ -I../stackwalk/src -Ijsoncpp-src-0.5.0/include -D__STDC_FORMAT_MACROS=1 -std=gnu++0x -Wno-format -Werror -I/usr/include/x86_64-linux-gnu -o stackwalker stackwalker.cc http_symbol_supplier.o ../stackwalk/lib/libbreakpad.a ../stackwalk/lib/libdisasm.a json_reader.o json_value.o json_writer.o -lcurl
/tmp/cccdLxQh.o: In function `(anonymous namespace)::ConvertStackToJSON(google_breakpad::ProcessState const&, google_breakpad::CallStack const*, Json::Value&, int, bool)':
stackwalker.cc:(.text+0x2402): undefined reference to `google_breakpad::PathnameStripper::File(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/tmp/cccdLxQh.o: In function `(anonymous namespace)::ConvertModulesToJSON(google_breakpad::ProcessState const&, (anonymous namespace)::StackFrameSymbolizerForward const&, breakpad_extra::HTTPSymbolSupplier const*, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&, Json::Value&)':
stackwalker.cc:(.text+0x2ecc): undefined reference to `google_breakpad::PathnameStripper::File(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
stackwalker.cc:(.text+0x2f68): undefined reference to `google_breakpad::PathnameStripper::File(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
stackwalker.cc:(.text+0x3096): undefined reference to `google_breakpad::PathnameStripper::File(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/tmp/cccdLxQh.o: In function `(anonymous namespace)::PrintStackMachineReadable(int, google_breakpad::CallStack const*)':
stackwalker.cc:(.text+0x5c98): undefined reference to `google_breakpad::PathnameStripper::File(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/tmp/cccdLxQh.o:stackwalker.cc:(.text+0x60ff): more undefined references to `google_breakpad::PathnameStripper::File(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' follow
/tmp/cccdLxQh.o: In function `main':
stackwalker.cc:(.text+0x6b5c): undefined reference to `google_breakpad::Minidump::Minidump(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool, unsigned int)'
/tmp/cccdLxQh.o:(.data.rel.ro._ZTVN15google_breakpad23BasicSourceLineResolverE[_ZTVN15google_breakpad23BasicSourceLineResolverE]+0x20): undefined reference to `google_breakpad::SourceLineResolverBase::LoadModule(google_breakpad::CodeModule const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/tmp/cccdLxQh.o:(.data.rel.ro._ZTVN15google_breakpad23BasicSourceLineResolverE[_ZTVN15google_breakpad23BasicSourceLineResolverE]+0x28): undefined reference to `google_breakpad::SourceLineResolverBase::LoadModuleUsingMapBuffer(google_breakpad::CodeModule const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
http_symbol_supplier.o: In function `breakpad_extra::HTTPSymbolSupplier::GetSymbolFile(google_breakpad::CodeModule const*, google_breakpad::SystemInfo const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)':
http_symbol_supplier.cc:(.text+0xbe6): undefined reference to `google_breakpad::SimpleSymbolSupplier::GetSymbolFile(google_breakpad::CodeModule const*, google_breakpad::SystemInfo const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)'
http_symbol_supplier.cc:(.text+0xc44): undefined reference to `google_breakpad::SimpleSymbolSupplier::GetSymbolFile(google_breakpad::CodeModule const*, google_breakpad::SystemInfo const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)'
http_symbol_supplier.o: In function `breakpad_extra::HTTPSymbolSupplier::GetSymbolFile(google_breakpad::CodeModule const*, google_breakpad::SystemInfo const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)':
http_symbol_supplier.cc:(.text+0xc81): undefined reference to `google_breakpad::SimpleSymbolSupplier::GetSymbolFile(google_breakpad::CodeModule const*, google_breakpad::SystemInfo const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)'
http_symbol_supplier.cc:(.text+0xce6): undefined reference to `google_breakpad::SimpleSymbolSupplier::GetSymbolFile(google_breakpad::CodeModule const*, google_breakpad::SystemInfo const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)'
http_symbol_supplier.o: In function `breakpad_extra::HTTPSymbolSupplier::GetCStringSymbolData(google_breakpad::CodeModule const*, google_breakpad::SystemInfo const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, char**, unsigned long*)':
http_symbol_supplier.cc:(.text+0xd2e): undefined reference to `google_breakpad::SimpleSymbolSupplier::GetCStringSymbolData(google_breakpad::CodeModule const*, google_breakpad::SystemInfo const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, char**, unsigned long*)'
http_symbol_supplier.cc:(.text+0xd9a): undefined reference to `google_breakpad::SimpleSymbolSupplier::GetCStringSymbolData(google_breakpad::CodeModule const*, google_breakpad::SystemInfo const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, char**, unsigned long*)'
http_symbol_supplier.o: In function `breakpad_extra::(anonymous namespace)::GetCodeIDAndFileQueryString(void*, google_breakpad::CodeModule const*)':
http_symbol_supplier.cc:(.text+0x1126): undefined reference to `google_breakpad::PathnameStripper::File(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
http_symbol_supplier.cc:(.text+0x11c8): undefined reference to `google_breakpad::PathnameStripper::File(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
http_symbol_supplier.o: In function `breakpad_extra::HTTPSymbolSupplier::GetRelativeURLAndPathToSymbolFile(google_breakpad::CodeModule const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)':
http_symbol_supplier.cc:(.text+0x145c): undefined reference to `google_breakpad::PathnameStripper::File(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
collect2: error: ld returned 1 exit status
Makefile:56: recipe for target 'stackwalker' failed
make: *** [stackwalker] Error 1
ERROR: Service 'app' failed to build: The command '/bin/sh -c STACKWALKDIR=/stackwalk SRCDIR=/tmp /tmp/scripts/build-stackwalker.sh' returned a non-zero code: 2
"""
If I tweak the script to force it to build breakpad and then stackwalker, that works fine. It does take a lot longer, though.
I'll talk with Ted tomorrow in case he has other ideas on how to alleviate the stackwalker issue.
Regardless, I'm going to go the "let's update to the python 2.7.15-slim image" route.
Assignee | ||
Comment 3•7 years ago
|
||
The problem seems to be gone, so it was some temporary issue. Yay! Marking this WORKSFORME for now. I'll reopen if it's an issue again.
Status: ASSIGNED → RESOLVED
Closed: 7 years ago
Resolution: --- → WORKSFORME
You need to log in
before you can comment on or make changes to this bug.
Description
•