Cuberite Forum
Catching Travis core dumps - Printable Version

+- Cuberite Forum (https://forum.cuberite.org)
+-- Forum: Cuberite (https://forum.cuberite.org/forum-4.html)
+--- Forum: Development (https://forum.cuberite.org/forum-13.html)
+--- Thread: Catching Travis core dumps (/thread-2140.html)

Pages: 1 2


Catching Travis core dumps - xoft - 10-01-2015

When a Travis build dumps its core, it would be great to capture it and possibly upload it somewhere for analysis. For this, we'd need to extend the CIbuild.sh script to pack the core dump together with the executable and volatile sources (Bindings.cpp) and upload it somewhere.

I could provide the webspace needed for the storage, if someone writes the code for the uploader-receiver (PHP), I'm not good at writing web stuff. It could be a simple file dropper, with the uploads being accessible through a normal file-system listing. A simple validity checking could be done by using a "cookie" set on Travis via a hidden env variable and checked by the script to disallow bogus uploads.

My motivation for this is driven by these build failures:
https://travis-ci.org/cuberite/cuberite/builds/83114053
https://travis-ci.org/cuberite/cuberite/builds/83114067
(They are for the same commit, yet each fails in the exactly opposite configurations)


RE: Catching Travis core dumps - NiLSPACE - 10-01-2015

I might have an upload script laying around for PHP. I'd have to check. Otherwise my brother most likely has one somewhere.


RE: Catching Travis core dumps - Seadragon91 - 10-02-2015

Have here a link, that could be helpful http://jsteemann.github.io/blog/2014/10/30/getting-core-dumps-of-failed-travisci-builds/


RE: Catching Travis core dumps - bibo38 - 11-01-2015

Is this done or is the upload script still needed?


RE: Catching Travis core dumps - xoft - 11-01-2015

I think @Seadragon91's link is even better than an upload script, it actually logs all the needed information directly into the Travis' build log. If anyone could get that to work with our Travis integration that'd be great.


RE: Catching Travis core dumps - Seadragon91 - 11-01-2015

Working on this.


RE: Catching Travis core dumps - Seadragon91 - 11-01-2015

Core dumping is enabled, but the core file is not in the cwd and not in directory Server.
By default the file should be placed there where the executable is.


RE: Catching Travis core dumps - xoft - 11-01-2015

Try outputting all the limits ("ulimit -a") in the CIBuid.sh script. I have a feeling they don't propagate.


RE: Catching Travis core dumps - Seadragon91 - 11-01-2015

That's the problem.
/proc/sys/kernel/core_pattern
has
/usr/share/apport/apport %p %s %c %P
The content should be core. Reading trough comments to find a solution.


RE: Catching Travis core dumps - Seadragon91 - 11-01-2015

Okay. now it works. I changed sudo: false to sudo: required
https://travis-ci.org/cuberite/cuberite/jobs/88619330

In containers the core_pattern is changed. Using sudo: required, doesn't changes the core pattern.
Discussion about that: https://github.com/travis-ci/travis-ci/issues/3754