oracle / crashcart Goto Github PK
View Code? Open in Web Editor NEWCrashCart: sideload binaries into a running container
License: Other
CrashCart: sideload binaries into a running container
License: Other
I get the following error when running build_image.sh:
configure: error: in `/nix-1.11.6':
configure: error: The Perl module WWW::Curl is missing.
See `config.log' for more details
Attempting to run build_image.sh from the master branch (3e149f8) fails at the last step of building the crashcart-builder container image
Following is the last output of build_image.sh before it fails
---> Running in c9c94c333f03
downloading Nix expressions from ‘https://d3g5gsiof5omrk.cloudfront.net/nixos/16.09/nixos-16.09.1943.25f4906da6/nixexprs.tar.xz’...
unpacking channels...
tar: write error: No space left on device
error: cannot close compressed log file (BZip2 error = -6)
cannot unpack the channels at /usr/local/bin/nix-channel line 169.
The command '/bin/sh -c nix-channel --add https://nixos.org/channels/nixos-16.09 && nix-channel --update' returned a non-zero code: 1
Note: I have checked whether or not I have space left on my harddrive, and I have plenty
I build this tool, which solves the problem by attaching itself as fuse filesystem.
Both problems have up and downside.
FUSE is slower then a loopback image,
but it turned out to be fast enough for the problem.
On the other hand it is not needed to build a special image
to get in to the context of a container and is pretty
transparent to both the attaching system and the container.
I am trying to build oracle crashcart based on the following README:
https://github.com/oracle/crashcart
I have cloned the github repository and run build.sh first.
Now on running build_image.sh
it runs smoothly for an hour and then hangs with the following message:
checking that generated files are newer than configure ...
I am on Ubuntu 16.04 desktop, which has a kernel version 4.4, but not sure if that is the problem at the build stage itself.Any pointers?
-- | --
As far as I understand the instructions, there is no way to run this software as side container in Kubernetes (I think that it is truth for other orchestrations, but I am less sure).
I cloned the project locally, and had issues building:
fetch http://dl-cdn.alpinelinux.org/alpine/v3.6/main/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.6/main: temporary error (try again later)fetch http://dl-cdn.alpinelinux.org/alpine/v3.6/community/x86_64/APKINDEX.tar.gzWARNING: Ignoring APKINDEX.84815163.tar.gz: No such file or directory
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.6/community: temporary error (try again later)
WARNING: Ignoring APKINDEX.24d64ab1.tar.gz: No such file or directory
I did some debugging, trying to hack around the build a bit, but could only get so far:
checking whether DBD::SQLite works... configure: error: in
/nix-1.11.6': configure: error: The Perl module WWW::Curl is missing. See
config.log' for more details
For some reason I had to make local changes to the Dockerfile to even get that far, even though it looked like it should have worked as-is:
diff --git a/builder/Dockerfile b/builder/Dockerfile
index f76f539..14974ba 100644
--- a/builder/Dockerfile
+++ b/builder/Dockerfile
@@ -9,7 +9,7 @@ RUN echo 'nixbld:x:998:nobody' >> /etc/group &&
e2fsprogs e2fsprogs-extra &&
apk add -U perl-www-curl --update-cache --repository http://dl-3.alpinelinux.org/alpine/edge/testing/ &&
rm -rf /var/cache/apk/* && \
I had also hacked out the proxy settings, since I was trying to build this outside the Oracle network.
had to patch several files to change urls (and url fragments) from:
http://www.mr511.de/software/libelf-0.8.13.tar.gz
...to
https://fossies.org/linux/misc/old/libelf-0.8.13.tar.gz
to get this to build recently.
seems like site www.mr511.de is offline for awhile now.
If I'm not wrong, this tool is for when you have a container that crashed, but it doesn't have the necessary debugging tools when you want to ssh into it.
I think it would help to have a "Why?" section in the README
Hello,
I successfully built crashcart
from sources, but I am now struggling getting through the next step (Building crashcart.img
). Running build_image.sh
produces those errors:
# ./build_image.sh
...
building path(s) ‘/dev/crashcart/store/v9hkl24aahz6gbcv13qqj2zbc1gblgzw-nghttp2-1.20.0.tar.bz2’
downloading ‘https://github.com/nghttp2/nghttp2/releases/download/v1.20.0/nghttp2-1.20.0.tar.bz2’... [0/0 KiB, 0.0 Ki [1716/1761 KiB, 327.3 KiB/s]
building path(s) ‘/dev/crashcart/store/16xp8vj3y3lgw98sswdw8jm5jyzg1iyh-mpc-1.0.3.tar.gz’
downloading ‘http://www.multiprecision.org/mpc/download/mpc-1.0.3.tar.gz’... [0/0 KiB, 0.0 KiB/s]
error: unable to download ‘http://www.multiprecision.org/mpc/download/mpc-1.0.3.tar.gz’: HTTP response code said error (22)
builder for ‘/dev/crashcart/store/49cfin4ra99d36lcv8vs18rjghq4p6y2-mpc-1.0.3.tar.gz.drv’ failed with exit code 1
cannot build derivation ‘/dev/crashcart/store/7k423rmibnmnn8hwggd3wdq94zs8zk6h-libmpc-1.0.3.drv’: 1 dependencies couldn't be built
building path(s) ‘/dev/crashcart/store/0dm301gls40kgar61a2fxl6h9pr26h8g-mpfr-3.1.3.tar.bz2’
cannot build derivation ‘/dev/crashcart/store/sqad8lmk4inhvfmpzaqpvb74ms589g56-gcc-6.4.0.drv’: 1 dependencies couldn't be built
building path(s) ‘/dev/crashcart/store/5lby4v9jy64p02rgccabx855g0dq4q3v-openssl-1.0.2n.tar.gz’
cannot build derivation ‘/dev/crashcart/store/a244hgf0dd3v7chrsnk3rcc0pzhw5gd9-gcc-wrapper-6.4.0.drv’: 1 dependencies couldn't be built
cannot build derivation ‘/dev/crashcart/store/s09bk3vymycqzg0lm9xnjq9bb5naaj2i-gcc-wrapper-6.4.0.drv’: 1 dependencies couldn't be built
cannot build derivation ‘/dev/crashcart/store/q0p7x1c3lzf6j5cgdv2w2qy10rq40rdp-perl-5.24.3.drv’: 1 dependencies couldn't be built
cannot build derivation ‘/dev/crashcart/store/267a4x9n3zz27kajr8ppcbsj2rjla7cd-stdenv.drv’: 1 dependencies couldn't be built
cannot build derivation ‘/dev/crashcart/store/m80y3i848d42dzb5gf83kd1jc2c0myzk-stdenv.drv’: 1 dependencies couldn't be built
cannot build derivation ‘/dev/crashcart/store/3na2cpf6qj6s507dnk0wrxyi8pjdldsf-bash-4.4-p12.drv’: 1 dependencies couldn't be built
error: build of ‘/dev/crashcart/store/3na2cpf6qj6s507dnk0wrxyi8pjdldsf-bash-4.4-p12.drv’ failed
Nevertheless, a Docker image is built:
# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
crashcart-builder latest 2d7bcd31ce5d About a minute ago 493MB
Trying to run this image manually (by copy-pasting the command from build_image.sh
) produces the following errors:
# docker run --privileged --rm -i \
-e "PACKAGES=${PACKAGES}" \
-e http_proxy="${http_proxy}" \
-e https_proxy="${https_proxy}" \
-e ftp_proxy="${ftp_proxy}" \
-v "${PWD}"/vol:/dev/crashcart crashcart-builder /dev/crashcart/build_crashcart.sh
...
error: Package ‘Agda-2.5.2’ in /dev/crashcart/store/c9bqkl3z13zwsrganhkmrf1d195d57by-nixos-17.09-17.09.2754.66b4de79e38/nixos-17.09/pkgs/development/haskell-modules/hackage-packages.nix:726 is marked as broken, refusing to evaluate.
a) For `nixos-rebuild` you can set
{ nixpkgs.config.allowBroken = true; }
in configuration.nix to override this.
b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
{ allowBroken = true; }
to ~/.config/nixpkgs/config.nix.
(use ‘--show-trace’ to show detailed location information)
Any idea what is going wrong/what am I doing wrong?
Note: I am using Linux Mint (Ubuntu-based) in a Virtual Box. I have successfully used this setup before together with Docker.
Thank you,
Brice.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.