summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2019-12-11docker: drop python2osmith/fix-python3Oliver Smith1-5/+0
Re-apply patch Iacace670bdb949e67227e0faa1765e36bba42018, after providing additional patches to make all Osmocom repositories, that use external tests, work with python3 (after learning the hard way, that they were not really python3 compatible yet, although they looked like it): https://gerrit.osmocom.org/q/topic:drop-py2 This patch should not be merged, before all other patches from that topic are merged. Depends: osmo-python-tests I3ffc3519bf6c22536a49dad7a966188ddad351a7 Related: OS#2819 Change-Id: I7b5385416d5c48a2f4e07449192b3f74223cb094
2019-12-09osmocom_build_deps.yml: add inkscapeOliver Smith1-0/+1
osmo-gsm-manuals needs inkscape to handle svgs. Not all osmo-* projects are building in docker, so make sure it is also installed on the build slaves directly. Related: OS#4314 Change-Id: I63460336d2c4a7594ec9c5c9b60a3d43f0d157aa
2019-12-06Revert "docker: drop python2"Oliver Smith0-0/+0
This reverts commit 9097082be5f335cc5e15e7c30b352d1b9a9d0b1c. I was under the impression, that all previous scripts in osmo-python-tests were already working with python 3. But as it turns out, this isn't true. Reverting, so I can properly post follow-up patches, that fix the issues before we apply this "drop python2" patch again. Related: OS#2819 Change-Id: Iab7768a77a55fd0465244460bd7488858dd69b60
2019-12-06Revert "docker: drop python2"Oliver Smith1-0/+5
This reverts commit 9097082be5f335cc5e15e7c30b352d1b9a9d0b1c. I was under the impression, that all previous scripts in osmo-python-tests were already working with python 3. But as it turns out, this isn't true. Reverting, so I can properly post follow-up patches, that fix the issues before we apply this "drop python2" patch again. Related: OS#2819 Change-Id: I68e99ed3fb2eba86eaccec7a3cab75658e9543b1
2019-12-05docker: drop python2Oliver Smith1-5/+0
Depends: osmo-python-tests Iabda95073faa2191fd117e9637e0858c589e9d9e Depends: osmo-gsm-manuals I57522e57e39682d6d123af4584785d327361e5a3 Related: OS#2819 Change-Id: Iacace670bdb949e67227e0faa1765e36bba42018
2019-12-05docker: install inkscapeOliver Smith1-0/+1
Needed by osmo-gsm-manuals to add svg graphics to the manuals. Change-Id: I754b133d77743582bd84c33c74ecc9eb9ca4c0ef
2019-12-04master-builds: add osmo-{cbc,e1d,e1-recorder}Harald Welte1-0/+3
Change-Id: Idfede8e9e79019b67b9aff4881d5cea97514aeba
2019-12-04add gerrit-verifications for osmo-e1-recorder and osmo-cbcHarald Welte1-0/+2
Change-Id: I1df28b4e7a7cbcf9151cd57a77001d88f1875415
2019-12-04Cosmetic: gerrit/master jobs: link to wikiOliver Smith2-1/+4
Place a link to the wiki page, that now documents all available environment variables. Related: OS#4243 Change-Id: I770360b671c64369cf6cdb4fb4222921cc6af58e
2019-12-02ansible: gsm-tester: Enable ip forwarding and masquerading on bootPau Espin Pedrol5-2/+34
Some nodes in the internal network, such as LimeNetMicro, will need Internet access to upgrade osmo-trx-lms from OBS repos. It also makes it easier to update manually other nodes inside the internal network. Change-Id: I2c89cf9cfcb55b3153e7be212c68ffa8db0f6927
2019-12-02jobs/master-builds.yml: fix osmo-fl2kOliver Smith1-11/+1
Don't use the old "osmocom:amd64" image. Remove the entire cmd line, so it uses the default docker command with the default docker image "osmocom:deb9_amd64". Also remove concurrent: true, because that default nowadays too. Related: OS#3203 Change-Id: I93db12d3652f26db059e0ede52d2b2fdd3e89d34
2019-12-01jobs/master-builds.yml: add osmo-fl2kOliver Smith2-0/+12
Related: OS#3203 Depends: https://lists.osmocom.org/pipermail/osmocom-sdr/2019-July/001951.html Change-Id: Iac411a5d5e312b8db0b5388f58571141fb2f32df
2019-12-01add '--publish' to osmo-asf4-dfu and osmo-ccid-firmware buildsHarald Welte1-1/+6
Change-Id: Ie45b9fcabc35f6fd9aff33af0f0587c8ccd88ebd
2019-11-27ansible: Fix several file permission mask formatPau Espin Pedrol3-9/+7
From ansible documentation [1]: """ For those used to /usr/bin/chmod remember that modes are actually octal numbers. You must either add a leading zero so that Ansible's YAML parser knows it is an octal number (like 0644 or 01777) or quote it (like '644' or '1777') so Ansible receives a string and can do its own conversion from string into number. Giving Ansible a number without following one of these rules will end up with a decimal number which will have unexpected results. """ [1] https://docs.ansible.com/ansible/latest/modules/template_module.html?highlight=template Change-Id: I91008927c50016a837420c4249b5f69b9153572e
2019-11-26ansible: gsm-tester-prod: Set DNS server to a working servicePau Espin Pedrol1-1/+1
10.42.42.2 is simply one of the IP addresses assigned to osmo-gsm-tester main unit on its own internal network (the one used between itself and the connected BTS or helper hosts). There's no DNS server running there. The main unit already runs lots of services, and there's really no need for a DNS server running there, so simply point it to a working DNS server. Change-Id: I443cc560553c07635763a13bc73ead4835e6a009
2019-11-23osmocom_build_deps.yml: Move from python-nwdiag to python3-nwdiagHarald Welte1-1/+1
Change-Id: I9e3c65342d1bb62d7baa9d589930aa042fb5f7a9 Closes: OS#4279 Related: OS#4246 Depends: osmo-gsm-manuals Ia2c0c833329f8ecab1c427e0d2c002f17ab49a94
2019-11-23WIP: coverity: Make sure curl is installed, as our coverity upload job needs itHarald Welte1-0/+10
This is untested. I'm on the train and have very limited understanding of Ansible Change-Id: I9918b89971bf6c2e200f1d96d993d5fbd6741b71
2019-11-23dockerfile: Add 'dahdi-source' for libosmo-abisHarald Welte1-0/+1
Change-Id: Icfd244268958be71f538d27307cdf0fabeecd956
2019-11-22ansible: gsm-tester-prod: Set dhcp ip addr for LimeNet-micro boardPau Espin Pedrol1-0/+2
Change-Id: Ibcdf14ba09ab46240cd6bccac82f7b21f99123ef
2019-11-22docker: remove python-nwdiag (using nwdiag3 now)Oliver Smith1-2/+0
Related: OS#4246 Depends: osmo-gsm-manuals Ia2c0c833329f8ecab1c427e0d2c002f17ab49a94 Change-Id: Ib53e1fee56e27bd88fc1a7b9593bacf53328a097
2019-11-22docker: install python3-nwdiagOliver Smith1-0/+2
Related: OS#4246 Change-Id: I0ebee6ac11df779ab954bd6648a0bebefc3350a2
2019-11-11osmocom_build_deps.yml: Add dahdi-source for libosmo-abisHarald Welte1-0/+1
Change-Id: Ic314c992f83d9fe1ea6035d67070d7c6004cc9e3
2019-11-11osmocom_build_deps: Add libaio-dev for osmo-ccid-clientHarald Welte1-0/+1
Change-Id: I6c3b536bee3d1bbd6f526bc3765fc4ad9aa4a0dd
2019-10-24jobs: Introduce ttcn3-stp-test(-latest) jenkins jobPau Espin Pedrol1-0/+4
Change-Id: I7a82e1fa82cd28433cdb7a9128c7ab3da6cabf47
2019-10-18docker: only one apt/pip cmd for installing depsOliver Smith2-56/+111
Make the retry logic in rebuild_osmocom_jenkins_image.sh obsolete by merging all apt commands for installing dependencies into one. This makes development easier, because the docker image will not get rebuilt again when any error happens (whether that error was related to the apt cache or not, during development it is mostly not related to the apt cache). This also makes it easier to read through the list of dependencies, and removes duplicate (or even conflicting, pkg-config vs pkgconf) entries. While at it, also merge the pip commands into one. Change-Id: I190e62dd39533b284c93107607dac24ece6d7be6
2019-10-18gerrit, master builds: default to concurrent: trueOliver Smith2-24/+12
Now that almost everything runs in docker, we don't need to worry about problems with running VTY/CTRL tests in parallel for these projects. Related: OS#3726 Change-Id: I5fdf759faf47ec7e4f9cb2657bd004585a667add
2019-10-18gerrit, master builds: build almost all in dockerOliver Smith2-42/+34
Instead of building some projects in docker, and some directly on the build slave, build almost all of them in docker with few exceptions, and make building in docker the default. This has several advantages: * build environment of master builds and gerrit verifications is the same, therefore the same build won't pass in gerrit and then fail in master * all build environments are volatile * no more conflicts while running VTY/CTRL tests * fix osmo-python-tests gerrit review versions being installed to /usr/local of build slave (see previous commit message) Projects that still do not get built in docker: * openggsn: depends on libgtpnl, but does not build it in jenkins.sh * osmo-bts: l1headers, various SDKs not installed in the docker image * osmo-trx: LimeSuite is not in the docker image (and just installing the debian package does not work) * osmo-ttcn3-hacks: TTCN-3 not installed in docker image * pysim: needs to access real sim cards attached to the host * sysmo-usim-tool: needs to access real sim cards attached to the host Related: OS#3726, OS#3598 Change-Id: If4b7d2f9ffbc7e92699732d97a8f5829a88c5b35
2019-10-17docker: chown -R build:build /usr/localOliver Smith1-0/+3
Prepare to run osmo-python-tests in docker. I've noticed that its contrib/jenkins.sh tries to write to /usr/local, which makes sense for the "update-osmo-python-on-slaves" job to actually deploy new versions. However, the same script gets called in gerrit-verifications too, and there we should definitively not install a version that is still in review to whichever random buildslave that is executing the gerrit-verification job! The follow-up patch for building most Osmocom projects in docker will fix this bug. Related: OS#3726 Change-Id: Ie1de8a6d436de0b286ed3372166eceb408bab084
2019-10-15jobs/master-builds.yml: Set node for master axis jobPau Espin Pedrol1-1/+1
Otherwise the master job managing the axis can be run on any node, something which is not desirable. For instance, right now job master-osmo-ggsn is run on osmo-gsm-tester-rnd which is currently unable to fetch some git repositories. Let's avoid running master tests on unintended nodes. Change-Id: I62abb3c490588adc4c0e13c761de44d442f8cefe
2019-10-11build-old-tags: remove LD_LIBRARY_PATHOliver Smith1-1/+0
Do not set LD_LIBRARY_PATH during builds, as this causes testsuites to use the wrong libraries. This bug appeared with libosmocore, it gets built for master first, and then an old version like 1.2.0. When using LD_LIBRARY_PATH, the tests during the 1.2.0 build are executed against the libosmo*.so from master, which causes a few tests to fail. Change-Id: I0bfb57e418b91c298337b9426448fbcfd7bf32e6
2019-10-11docker: add more dependenciesOliver Smith1-1/+16
Prepare for building almost all Osmocom repositories in docker, by installing new required dependencies: * libaio-dev: needed for osmo-ccid-firmware * libasound2-dev: needed for gapk * libboost-all-dev: needed for libusrp * libcsv-dev: needed for osmo-remsim * libmnl-dev: needed for libgtpnl * libnewlib-arm-none-eabi: needed to cross compile libosmocore to arm * liboping-dev: needed for osmo-sysmon * libulfius: needed for osmo-remsim (libulfius is not packaged in debian stretch, download the project's official .deb release instead) * libzmq3-dev: needed for osmo-pcap * sdcc: needed for libusrp * systemd: needed for osmo-remsim (provides systemd.pc, indirect dependency through libulfius) Related: OS#3726 Change-Id: I5caebd26090169cc3c9fdd1f14984ea2a75347e8
2019-09-24gerrit, master builds: use stretch, not jessieOliver Smith4-9/+11
Debian jessie (8) is EOL already, so switch to stretch (9). This is required to build all Osmocom projects in docker, because at least libosmocore fails to build with the old image (tests won't build with GCC-4.9.x from jessie unless -Werror is disabled). Do not build the jessie image anymore, and update the shared dockerfile. Remove everything jessie specific, and make it work with stretch by installing asciidoc-dblatex. Otherwise we get this error when building manuals: a2x: ERROR: missing configuration file: /etc/asciidoc/dblatex/asciidoc-dblatex.xsl Add '--cap-add SYS_PTRACE' argument to the docker run command, because otherwise the address sanitizer isn't working anymore with stretch (which makes the OsmoPCU tests fail). I've tried to split this patch up into multiple ones, but since there is no asciidoc-dblatex package in jessie, we must add the dependency and switch the image at the same time. Related: OS#3726 Change-Id: I61fe93863d5367e3b9c01ab4726bb95bd16d891d
2019-09-23gerrit, master builds: add docker_{run,img} varsOliver Smith2-173/+57
Move the common "docker run" invocation and image name into one place, so it is not duplicated over and over. This prepares for changing the image and building all Osmocom projects in docker (follow up patches). Related: OS#3726 Change-Id: If529e6a93bb2227230981ee22f2c75bd0f1f4518
2019-09-20ansible: gsm-tester-rnd: Add nano3g device to static IP DHCP leasesPau Espin Pedrol1-0/+2
Change-Id: Iaad3e9f5b6b1966322abb89f54611a2368400dcb
2019-09-19gerrit, master builds: concurrent OsmoPCU buildsOliver Smith2-3/+33
Re-enable concurrent builds for OsmoPCU, and run all builds in docker. This should prevent previous problems with VTY/CTRL test collisions, which lead to the concurrent builds being disabled in I23d5b75825a667e4f043d16a12b841cd8f01af5e. Related: OS#4204 Change-Id: I4f90a601e41dca18a6fcbab56bdf5663167d2353
2019-09-13jenkins-jobs: Add ttcn3-remsim-test for {master,latest]Harald Welte1-0/+4
Change-Id: Ib4e3f3f0153c38765868cfd2014cd56cd47c2c79
2019-08-23gerrit-verifications: fix osmo-bts cmdOliver Smith1-1/+1
Fixes: 932b0037506130692bc8a1aa1edd95d5f54efd11 ("gerrit, master builds: use ASCIIDOC_WARNINGS_CHECK") Change-Id: Ia17d6a14ede93bae715fb67826b074ab91f87749
2019-08-21gerrit, master builds: use ASCIIDOC_WARNINGS_CHECKOliver Smith2-16/+26
The asciidoc warnings check fails the build if asciidoc prints a warning while building the documentation. We had this enabled by default, but since OBS uses various asciidoc versions, we could get unexpected build failures (different asciidoc versions print different warnings). Now that it is disabled by default, explicitly enable it for jenkins again. Related: OS#4140 Depends: Iac993a0d1b17205397a1f1ef1a7bd3f9df739e36 (osmo-gsm-manuals) Change-Id: I8775d45b4dc1a5a46e2ba042fc7ee7d9f10f18cc
2019-07-30master-builds: Publish osmo-hnbgw documentationDaniel Willmann2-1/+3
Requires: Ic7437daeab0b07d16fd71ca3881cb31bab7b1925 (osmo-iuh) Change-Id: Ia1be4ef79a1089d7af582acb63eb3afa5a60f4f3
2019-07-26jobs: upload to OBS before debian-install testOliver Smith2-2/+2
Make sure that we don't test yesterday's packages. Adjust timers to run the OBS job around 1 o'clock, and the debian-install test around 4 o'clock. Use the H (hash) symbol for minute to spread the load. Change-Id: I503058018172d50e9585d4804dfec1b4ece7644a
2019-07-23osmocom-debian-install.yml: add BRANCH variableOliver Smith1-1/+7
Allow changing the branch in the jenkins UI when starting the build. We already have this in other jobs, and it is very useful to test changes. Change-Id: Ice4662551625b3c96ca105629a934a0a081db2e4
2019-07-23osmocom-debian-install.yml: update descriptionOliver Smith1-1/+5
Replace "Generated by job-builder" with a proper description. The job builder automatically adds "<!-- Managed by Jenkins Job Builder -->" to the description (which is visible when editing the job), so we don't need to mention it in the description at all. Related: OS#3369 Change-Id: I17d2e9e0ac7fe77fb0306724a1f1e15641d76854
2019-07-22OBS: print date/time before git clone and on errorOliver Smith3-3/+15
The OBS job clones a lot of repositories from git.osmocom.org every night, so it is a good candidate to reproduce the "garbage at end of loose object" error we are getting sporadically. Print exact timestamps, so we can check if there is anything related in the server logs, when this error happens again. Related: OS#4083 Change-Id: Ic9a6d3f0c2b8dad2661ede793c21307f1680a52e
2019-07-21latest-packages: Enable osmo-remsim as new libosmo-abis is taggedHarald Welte1-4/+2
Change-Id: Id1902f8b79357ac280767edba3698450f67b7c37
2019-07-11gerrit-verifications: add libtelnetOliver Smith1-0/+1
Related: OS#3047 Change-Id: Iafffd9d938ee310bb729b3e2a0a4d80870d4b3b5
2019-07-02jobs: add osmocom-release-tarballs.ymlOliver Smith1-0/+54
Related: OS#3870 Depends: I991fe41a1f55ccd6a66815ec3d7f239850397d9a (docker-playground) Change-Id: I994da5c27f9198e5bcf2d567dd473f9ed078d9c0
2019-07-02common.sh: add docker_images_requireOliver Smith2-0/+27
Clone docker-playground.git, source its jenkins-common.sh and run docker_images_require from there. This will make it possible to run osmocom-release-tarballs.sh in a docker container, for which the Dockerfile is stored in docker-playground.git. Related: OS#3870 Change-Id: Ic4519ccb6978793054869862f8ca0e21d9cf5be4
2019-07-02scripts: add osmocom-release-tarballs.shOliver Smith2-0/+216
Generate tarball releases for all tags in all repositories. Related: OS#3870 Change-Id: I0a904c26e1c45aa46ddc59a01b776f2c7c5f947d
2019-07-02osmocom-list-commits: move repo list to common.shOliver Smith2-23/+26
Prepare for new script, which will use the same list of repositories. Related: OS#3870 Change-Id: I954b1d5229c44ebcec7e7228f2565a5c6755d16c
2019-07-01common.sh: osmo_git_last_commits_tags: add "all"Oliver Smith1-2/+4
Allow printing all tags instead of only the N most recent ones. Related: OS#3870 Change-Id: I684c6881915831b33b679e8ae873213beb034ab7