SeattleMeshnet / meshbox

The Hyperboria peering device
https://github.com/hyperboria/cjdns
GNU General Public License v3.0
141 stars 25 forks source link

Buildbot #24

Closed ghost closed 9 years ago

ghost commented 9 years ago
ghost commented 9 years ago

Updated, please have a look whether the proposed build schedule/conditions make sense.

MaStr commented 9 years ago

Hi, is there any update on the topic? I can offer to add a the step to our weekly build script for Piratebox development and upload/sync the binaries later two a different location (or to development.piratebox.de ;) )

edit: I would do only the package builds for meshbox and not generate complete images. But hey what is the advantage? So ppl can use the package repository to install cjdns on already flashed images. - and you and everybody can create easily custom images using the ImageBuilder http://wiki.openwrt.org/doc/howto/obtain.firmware.generate

Let me know

Matthias

ghost commented 9 years ago

Hey thanks for the offer. We have a buildbot instance plus a few slaves at http://buildbot.meshwith.me/openwrt

At the moment I'm trying to figure out an issue with the smoketest Docker container -- it somehow assumes the host's filesystem instead of its own.

MaStr commented 9 years ago

Hey, unfortunately I don't know anything about the buildbot configuration itself.. when I finished our script, somebody told me about it.... What I can understand so far, is that you create the x86 image and then run a short test. ~ correct?

And later you add other architectures like ar71xx , do you? But would you be able to run a test on different architectures?

ghost commented 9 years ago

So sorry, I totally forgot about the thread. You're correct, the smoketest builds an x86 image, establishes peering between two docker containers running the image, and then tries to ping each end.

We now build for a couple of targets: https://buildbot.meshwith.me/openwrt/builders, and all except the smoketest produce image and package snapshots: https://buildbot.meshwith.me/snapshots I'm running these on ar71xx and oxnas devices, and hopefull soon on omap (Beaglebone Black).

The realview target is especially interesting, because it will hopefully allow us to run tests in QEMU (qemu-system-arm -M realview-eb-mpcore).

ghost commented 9 years ago

We have a pretty good buildbot now, featuring the OpenWrt SDK and ImageBuilder, which cut the smoketest runtime down to 1 minute 43 seconds: http://buildbot.meshwith.me/openwrt/builders/cc-smoketest/builds/28

Regular packages and images are built even faster. The CPU and diskspace requirements are way smaller too. This means we can build on commodity hardware, and still expect fast results. The buildslaves should still be located on an SSD though.

Right now it builds packages for x86-generic and ar71xx-generic, and images for Docker and WNR2000v3. More targets will be added on demand.

dangowrt commented 9 years ago

I suggest we should build a hardened SDK for x86_64, realview and malta and use that for running the smoketest. See https://gist.github.com/dangowrt/738c57a58e1f70a70ab5 to get an idea how this could work.