Project

General

Profile

Feature #5055

set up two additional rpi4-deb9build slaves

Added by laforge about 2 months ago. Updated about 1 month ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
-
Target version:
-
Start date:
03/01/2021
Due date:
% Done:

100%

Spec Reference:

Description

It has been pointed out that sometimes (heavy osmo-trx development activity), the single rpi4-deb9build slave is too slow to handle all the builds.

I've purchased two more 8GB raspi4 units, and will bring them to AM93 tomorrow, and bring them online in the 10.9.25.x/24 network.

Once they are up and running (should be tomorrow), I'll install the debian9 lxc container.

I'll leave it to osmith to then
  • apply the ansible playbook for creating a jenkins slave
  • create the slaves in jenkins
  • create some kind of group ("label") for rpi4 builds
  • make all 4 rpi4-deb9build slaves share that label
  • make existing build jobs use that label instead of the specific rpi4-deb9build slave directly

Associated revisions

Revision a9c315da (diff)
Added by osmith about 1 month ago

debian-stretch-jenkins: install osmo-trx depends

Add liblimesuite-dev and libuhd-dev, so we can successfully build
osmo-trx in docker in master-builds and gerrit-verifications.

Related: OS#5055
Change-Id: Ieec31fd6a2034c4430be81afd1d370816cd577d5

History

#1 Updated by laforge about 2 months ago

  • Status changed from New to Stalled

some network relatd problems came up, expect to deploy the units tomorrow.

#2 Updated by laforge about 2 months ago

  • Status changed from Stalled to New
  • Assignee changed from osmith to roh

the two pre-configured (SSH, fixed IP) RPI4 units + power supplies (+ uHDMI adapter, + label for the existing one) are with Maike an will be in AM93 today.

roh, please connect them tomorrow. I think for now it is best to simply put them next to the first rpi4-deb9build. We can think of a more proper solution later on. Once connected , plesae re-assign to @osmith.

Oliver: They underlying rapsbian will be coming up at 10.9.25.60 and 10.9.25.70 (standard pi/raspberry/sudo at the moment, no ssh keys installed yet). The lxc for debian9 will have to be created. Please make sure to use bridged mode on lxcbr0 with static IP of 10.9.25.61 and 10.9.25.71 for the deb9build lxc containers.

#3 Updated by roh about 2 months ago

  • Status changed from New to In Progress
  • Assignee changed from roh to osmith
  • % Done changed from 0 to 20

physical setup done.

the machines are now reachable.

rpi4-1     dc:a6:32:4a:4b:ba     25     10.9.25.50     raspberry pi buildhost for jenkins
rpi4-2     dc:a6:32:d6:76:5c     25     10.9.25.60     raspberry pi buildhost for jenkins
rpi4-3     dc:a6:32:d6:76:70     25     10.9.25.70     raspberry pi buildhost for jenkins

osmith please send me a sshkey (mail or jabber) to add to the old(first) host, so you have access there too.

#4 Updated by roh about 2 months ago

ps: one micro-hdmi adapter is with the 3 rpi, the other one is in the hdmi slk in office1.

#5 Updated by laforge about 2 months ago

On Fri, Mar 05, 2021 at 03:52:29PM +0000, roh [REDMINE] wrote:

osmith please send me a sshkey (mail or jabber) to add to the old(first) host, so you have access there too.

I've added osmith' key to all three now.

#6 Updated by osmith about 2 months ago

SSH login works, I'm proceeding with set up.

#7 Updated by osmith about 2 months ago

  • % Done changed from 20 to 50

I've missed the lxc container part and directly set up the raspian10 hosts as jenkins nodes.

Most of the jenkins jobs utilize docker, so for the original plan we would need to get docker in deb9 in lxc on raspian 10 running. But Harald told me he already tried it, and it doesn't work out of the box because of kernel incompatibilities, and that he already spent four hours on it. Since most jobs run in docker anyway, we decided to keep the setup with having raspbian10 configured as jenkins node without the lxc in-between.

  • apply the ansible playbook for creating a jenkins slave
  • create the slaves in jenkins
  • create some kind of group ("label") for rpi4 builds
  • make all 4 rpi4-deb9build slaves share that label
  • make existing build jobs use that label instead of the specific rpi4-deb9build slave directly

All done. New label:
https://jenkins.osmocom.org/jenkins/label/rpi4-raspbian10/

Related patches:
https://gerrit.osmocom.org/q/topic:new-raspberries


I'm fixing up permission errors now:
https://jenkins.osmocom.org/jenkins/job/gerrit-osmo-pcu/1818/FIRMWARE_VERSION=master,WITH_MANUALS=0,label=rpi4-raspbian10,with_dsp=none,with_vty=False/console

#8 Updated by osmith about 2 months ago

  • % Done changed from 50 to 80

The permission error is fixed now, it was caused by jenkins user not having UID=1000.

gerrit-osmo-pcu is working again.

#9 Updated by osmith about 2 months ago

  • % Done changed from 80 to 90

#10 Updated by osmith about 1 month ago

  • % Done changed from 90 to 80

master-osmo-bts and master-osmo-trx failures are a regression of the new raspberry pi setup. Both jobs were not building in docker yet. I'm migrating them to docker.

For master-osmo-bts, this works already (jenkins job adjusted, I'll push the config to gerrit once osmo-trx also works).

master-osmo-trx needs liblimesuite-dev to be added to the debian-stretch-jenkins docker image. I'm currently verifying that this makes the build pass.

#11 Updated by osmith about 1 month ago

  • % Done changed from 80 to 90

#12 Updated by osmith about 1 month ago

  • Status changed from In Progress to Resolved
  • % Done changed from 90 to 100

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)