Commit Graph

111 Commits

Author SHA1 Message Date
Neels Hofmeyr c59e079573 contrib: rethink jenkins jobs with build slave approach
Previously, the idea was to run a test remotely via SSH. This has moved to
operating an actual jenkins build slave on the main unit, which simplifies
things.

Also, previously (in the old osmo-gsm-tester), there was a daemon running,
accepting new trials by a directory appearing. Now, we're directly launching a
test run, which simplifies things.

Remove all SSH stuff from the "run" script.

Compose the checksums of the built binary-tars in the actual build jobs. In the
"run" job, only combine those checksums to one file. (Otherwise we would
compose the sums after transmitting over the network to the build slave.)

Instead of storing trials in a common location on the system, just keep one
trial in the workspace per run. After the run, tar up the trial dir to enable
easy archiving of build results.

The common location on the system might still be a good idea if we're one day
going to move to concurrent runs with scheduling of hardware resources, but so
far we're having simple one-shot runs.

Change-Id: I129f5189ce2bebd761bc752b158fb8778b31010e
2017-05-15 12:23:57 +00:00
Neels Hofmeyr 0765098946 checkout dependencies from script
The jenkins jobs used to have multiple source repositories configured, but it
is really cumbersome to add all the SCM links to a jenkins job.

Instead, clone the git sources from the script, as we also do in various other
contrib/ scripts.

This partly duplicates the osmo-ci scripts, but since this code is much more
intended to run on other peoples' jenkins instances, rather keep the osmo-ci
dependency out of here.

Change-Id: Ie05cb9cd2bd884f72cbdbcc96d9c4389ffca7357
2017-05-15 12:23:57 +00:00
Neels Hofmeyr aca2624273 paths: have one common parent dir /var/tmp/osmo-gsm-tester
In the example config and the jenkins scripts, use paths below common parent
dir /var/tmp/osmo-gsm-tester.

1. example: put the state dir in /var/tmp/osmo-gsm-tester/state, instead of in
the config dir like /etc/osmo-gsm-tester.

2. contrib scripts: place trials in /var/tmp/osmo-gsm-tester/trials, and to
move into place atomically, use /var/tmp/osmo-gsm-tester/.prep-trials as
temporary location.

The OsmoGSMTester manual is currently also being updated to setup these paths,
with /var/tmp/osmo-gsm-tester owned by a common group and having group-sticky
as well has group-writable access rules.

Change-Id: I2961e9d1d9b14859b886058b54ffcb36f4d88bc1
2017-05-11 17:39:02 +02:00
Neels Hofmeyr 506edbc869 jenkins: fix trials-cleanup.sh: use 'taken' marker
trials-cleanup.sh was still using the old 'SEEN' marker and thus didn't work.

In trial.py, make sure that *every* trial that is run is marked as taken, not
only those discovered by Trial.next().

Change-Id: I8aa6b2eece5d43266a7c84e6b2974b8fe7f3cda1
2017-05-07 01:14:23 +00:00
Neels Hofmeyr 88909ddea9 jenkins-run: add env var to invocation to allow passing more opts from jenkins
Change-Id: I6deaea178cb96bf1c105657091e8798993f7a405
2017-05-03 17:28:56 +02:00
Neels Hofmeyr 8bedf8ce5f jenkins: make sure to have only the latest binary tar in a workspace 2017-05-02 17:00:30 +02:00
Neels Hofmeyr 3932191448 jenkins: run python3 unbuffered to see log scrolling by on jenkins 2017-05-02 14:49:25 +02:00
Neels Hofmeyr b02c21115d wip
Change-Id: Icce6bd83173db86a64fa621e641131758380c7cd
2017-04-09 19:11:25 +02:00
Neels Hofmeyr d46ea13d48 review jenkins scripts
Change-Id: I420910bd2d30e96605ecf3acb779ce726c75d912
2017-04-08 18:36:13 +02:00
Neels Hofmeyr 3531a192ae core implementation
code bomb implementing the bulk of the osmo-gsm-tester

Change-Id: I53610becbf643ed51b90cfd9debc6992fe211ec9
2017-04-08 15:43:19 +02:00
Neels Hofmeyr dae3d3c479 initial import
The original osmo-gsm-tester was an internal development at sysmocom, mostly by
D. Laszlo Sitzer <dlsitzer@sysmocom.de>, of which this public osmo-gsm-tester
is a refactoring / rewrite.

This imports an early state of the refactoring and is not functional yet. Bits
from the earlier osmo-gsm-tester will be added as needed. The earlier commit
history is not imported.
2017-03-28 12:37:17 +02:00