Osmocom Continuous Integration
Go to file
Oliver Smith 048492d1c8 repo-install-test: run inside qemu + kvm
Change repo-install-test to run inside of qemu instead of docker. This
job needs to run systemd to verify that the systemd services start up
properly. Running systemd inside docker was never officially supported,
it worked with cgroups1 but does not work anymore with cgroups2.

An alternative approach was running inside podman instead of docker
(running systemd inside of podman is officially supported). However we
would have needed various workarounds with podman and wouldn't be able
to test all Osmocom systemd services in the end, due to lack of
permissions (see review of I394918fc61de36acce65ffb33defcb8fc21801c4).

By running with a separate kernel inside qemu we can run all Osmocom
services.

Related: OS#5365
Change-Id: Ie7f1bccb05779cb3614016c0b965b810bbb1471b
2022-12-09 10:55:15 +00:00
ansible ansible: add rules to install qemu images 2022-12-09 10:55:15 +00:00
contrib contrib/jenkins.sh: set-url for existing clones 2022-10-20 14:44:36 +00:00
coverity coverity: fix prepare_source_Osmocom.sh terminating early 2022-10-04 17:00:01 +07:00
jobs jobs/README: modernize 2022-12-06 11:17:16 +01:00
lint jenkins-gerrit: fix ambiguous use of review api 2022-11-15 11:38:08 +00:00
qemu-kvm/ggsn-kernel-gtp ggsn-kernel-gtp: Use my current SSH public key 2022-11-04 15:07:35 +00:00
scripts repo-install-test: run inside qemu + kvm 2022-12-09 10:55:15 +00:00
.editorconfig editorconfig: new file 2022-02-11 15:44:16 +01:00
.gitignore repo-install-test: run inside qemu + kvm 2022-12-09 10:55:15 +00:00
.gitreview Add .gitreview 2017-06-12 18:33:33 +02:00
README.adoc update git URLs (git -> https; gitea/gerrit) 2022-08-13 04:02:51 +07:00

README.adoc

Scripts used for the CI handling and coverity uploads

coverity: scripts used to submit the osmocom sources for coverity scan.
This depends on these, which are not included in osmo-ci:
- a tokens.txt file in coverity/ -- see coverity/get_token.sh
- a cov-analysis-linux64-8.5.0 in coverity/
  (or the like, may need to adjust some scripts to match)

jobs: Jenkins Job Builder YAML files defining jenkins jobs. Read jobs/README.adoc
for more information about deployment.

scripts: used by jenkins jobs. Various osmo*/contrib/jenkins.sh scripts assume
osmo-ci to be checked out in the build slave user's home, i.e. using a PATH of
$HOME/osmo-ci/scripts.

obs-patches: patches to build projects for various debian distributions, e.g.
a patch for limesuite that fixes the libwxgtk3.0-dev => libwxgtk3.0-gtk3-dev
rename in control/debian for debian10. Used by osmo_obs_distro_specific_patch()
in scripts/common-obs.sh.

_docker_playground: Clone of docker-playground.git, so the scripts can build
required docker images. This dir gets created on demand by scripts/common.sh,
and automatically fetched and reset to "origin/master" (override with
$OSMO_BRANCH_DOCKER_PLAYGROUND). The fetch and reset gets skipped if
_docker_playground is a symlink. For development, set it up as follows:

 $ git clone https://gitea.osmocom.org/osmocom/docker-playground
 $ git clone https://gitea.osmocom.org/osmocom/osmo-ci
 $ cd osmo-ci
 $ ln -s ../docker-playground _docker_playground