Age | Commit message (Collapse) | Author | Files | Lines |
|
common.sh tries to set OSMO_CI_DIR now; however this does not work when
common.sh was sourced with ". ./common.sh":
realpath: scripts/..: No such file or directory
Fixes: 7cb8e2d0 ("OBS: add debian10 specific patch for limesuite")
Related: https://jenkins.osmocom.org/jenkins/job/Osmocom-build-tags-against-master/455/console
Change-Id: Ib326eb0fa769528398335c9cf06dc9c9576c882e
|
|
Fill the "next" feed with source packages generated from the "next"
branch of each Osmocom project, if it exists, with fallback to the
"master" branch. Implement as wrapper around osmocom-nightly-packages.sh,
so we don't duplicate code and don't need to add more logic to the jenkins
job.
Adjust all osmo_obs_prepare_conflict calls. Add a comment line on top of
each osmocom-*-packages.sh script stating the feed they can be used with.
Related: SYS#4887
Change-Id: I0542b6243bdd29d08381fcc82368dcbd30bf9dce
|
|
For the upcoming network:osmocom:next repository, it would be
inconsistent to have the debian package conflict mechanism only support
latest and nightly, even if the next repository is currently not built
for debian.
Change-Id: I2c07313fbbdffe5571e447059b08fe74c853cef0
|
|
The "run-inside-docker.sh" script is running as root (in order to be
able to install packages). Do not mount an outside directory as /data
inside the image anymore, where the script would write temporary data.
This causes problems on jenkins, as the temporary files are written as
root and jenkins is then unable to wipe the workspace.
I had used this for debugging when I wrote the script initially, but
almost the same can be done now with INTERACTIVE=1 and cat on the
temporary files.
Related: OS#4563
Change-Id: If7e1d83580c2951e7e50181ba7e755b987675e4b
|
|
Related: OS#4563
Depends: I50743c304728444ede8e0d40b8abef9d17c44d8d (docker-playground)
Change-Id: I399360ee6389591180859b52f0ef08883447b90b
|
|
Keep downloaded binary packages to make test cycles shorter during
development. While at it, also document all environment variables.
Change-Id: I4d6ebaf460e47f29e023acb0bd78ef52ca80c7cd
|
|
Make it consistent with run-inside-docker.sh by also using -e and -x.
This makes development easier.
Change-Id: I733164829bf076fb42df3fde725f3e330f8abecc
|
|
Make the script work on a debian10 host. I had developed it initially on
debian9, where this was not necessary, and the Jenkins servers are also
running debian9. Fixes:
Failed to mount tmpfs at /run/lock: Permission denied
[!!!!!!] Failed to mount API filesystems, freezing.
Freezing execution.
Change-Id: I5127356031a5dd080473aa650c2beae2a81a697f
|
|
Make the script run from its new location.
Related: OS#4563
Change-Id: Ib6fbc4b9487a84e0c28cd8b0622ddc2d5b1dfe14
|
|
Prepare the repo-install-test to be extended to cover centos8 as well.
Move the scripts to osmo-ci.git first, so we can mount them as shared
files into the docker containers from here.
Move files without any changes. Integration will be done in a follow-up
commit, so we have a clean git log.
debian-repo-install-test/jenkins.sh
=> scripts/repo-install-test.sh
debian-repo-install-test/testdata/blacklist.txt
=> scripts/repo-install-test/blacklist.txt
debian-repo-install-test/testdata/repo-install-test.sh
=> scripts/repo-install-test/run-inside-docker.sh
Related: OS#4563
Related: If93f37e8d46597a9abc67a4529be9addd65780f5 (docker-playground)
Change-Id: Ia678cc15e66630bd6b75b6c89bc75c1e27afd66c
|
|
The list is incomplete, and we have a programmatic check for required
binaries in common-obs.sh now. The next patch will add a new one of
these scripts, so let's clean it up a bit.
Change-Id: Ifab635e0d7a162142a8e80f3223d024888114f3f
|
|
Add a patch to replace libwxgtk3.0-dev with libwxgtk3.0-gtk3-dev in
debian/control. Adjust OBS scripts to apply such patches from this
repository if they exist here, and fall back to the project's
repository (osmo-trx, osmo-gsm-manuals patches are there).
Related: OS#4562
Change-Id: I8dfb60e999bf9f61e6cd11983dba033a4c6107ad
|
|
Refactor checkout_copy_debian8_jessie from osmocom-latest-packages.sh
and osmocom-nightly-packages.sh to take the distribution name as
argument and merge both to osmo_obs_checkout_copy in common-obs.sh.
Use debian8 as distribution name instead of debian8-jessie, so the
distribution name matches the suffix of the patch file
(build-for-debian8.patch).
A follow-up commit will apply a debian10 specific patch with this new
function.
Related: OS#4562
Change-Id: I2b69571ebc08a920c9147ce544fa8a2e6d950e65
|
|
Prevent the following error:
ERROR: please install obs-service-format_spec_file or use the --noservice option
Build step 'Execute shell' marked build as failure
Related: https://jenkins.osmocom.org/jenkins/job/Osmocom_OBS_latest/976/console
Change-Id: Ib2fbaace47b3c12462860419f19b01a5b4d192e8
|
|
osmocom-*-packages.sh take some time to execute and has quite a few
programs that are not commonly installed. Check the required
dependencies first, so it doesn't abort in the middle of the scripts if
these are missing. I just ran into this with the new meson dependency.
Change-Id: I46cf1aeedd61dbd4fc8fa3f24c60e29033339ead
|
|
sdcc does not build for centos 8 without diving deeper into the
dependency hell:
nothing provides gputils,
nothing provides python3-base,
nothing provides inkscape,
nothing provides lyx,
nothing provides makeinfo
So let's not build libusrp for centos 8 for now. We can build osmo-trx
without the usrp1 backend (already configured in the spec.in file).
Related: OS#4550
Change-Id: Icfb289b0eeeb7215d23517fb8a4e56f2a8d774f1
|
|
Related: OS#4550
Change-Id: Ib36682d645d9badad5515476675a947f2aec0baa
|
|
Use existing osmocom-*-packages.sh scripts to add RPM spec.in files. Set
the same version, as in the debian .dsc files.
Related: OS#4550
Change-Id: If93b9d95e4c18cf1c29594c0802cbffaea27101c
|
|
Change-Id: Ib2f5fcd7e7a5b05a1fef9f3cbac99c6f203e2baa
|
|
Change-Id: I359fe8f4fb94dc9b4b31e10f5cb9d0d4400a0e2a
|
|
Change-Id: Ic7de1b4c6ce47093874fe373cac8a1f7e47ee179
|
|
Let's use the osmo-gsm-tester docker image based on the
debian-stretch-jenkins instead of the later directly, since the former
has all osmo-gsm-tester required dependencies.
Change-Id: I256eeed82eef0969d93dc015e043b0417f56f52c
|
|
It's been noted that jenkins job update-osmo-ci-on-slaves succeeds even
if make script called by some children function fails:
"""
../make/Makefile:57: recipe for target 'docker-build' failed
make: *** [docker-build] Terminated
make: Leaving directory '/home/osmocom-build/osmo-ci/_docker_playground/debian-stretch-jenkins'
+ exit 1
Finished: SUCCESS
"""
Change-Id: Iab9bc49eebee0f42657ff3ab5ffaa10315446440
|
|
Change-Id: Ie0243bf066d6bc369737b8d659d09e3871cae79d
|
|
Change-Id: I33bbc47598cb2c31cdc4209cd2fe3e6f6dd67e7a
|
|
Change-Id: Ib768ff2822df5875820e4f12390004ed18614144
|
|
This is unfortunately harder than expected. The problem is the use
of meson external dependencies using 'wrap', specifically for
freeDiameter.
As a debian source package needs to include the entire source, the
dpkg helpers are calling 'meson --wrap-mode=nodownload' at build time.
This in turn requires us to download the freeDiameter after the git
clone of open5gs. Unfortunately this creates a git checkout in a
sub directory of the open5gs repo, which is not part of the git history.
git-buildpackage hence generates a source tarball *without*
freeDiameter. I tried very hard in several methods like
* git commit subprojects/freeDiameter
* adding subprojects/freeDiameter as git submodule
unfortuantely none of them helped.
In the end, I resorted to using 'dpkg-buildpackage' instead of
'git-buildpackage' (gbp), which then has other disadvantages,
such as not being able to determine the output directory to which
the .tar.* and .dsc files are written to.
In the end, the solution implemented here is the only one I could
make work.
Change-Id: I6752288868e5ee1378c0776b1be9f06750017c41
|
|
Work around "garbage at end of loose object" errors that occasionally
cause these jenkins jobs to fail.
A few repositories are not hosted on gerrit, so they still get cloned
from git.osmocom.org. However, having almost all repositories cloned from
gerrit should improve the situation a lot.
Related: OS#4083
Change-Id: Id8f08a1bc10d6c81be9ad44c60646e2ea9f6cf4e
|
|
Run contrib/jenkins.sh in erlang repositories, that were recently
updated (osmo_gsup, osmo_dia2gsup, osmo_ss7).
Depends: docker-playground Ia3eaec6090c9652549b2850de74ee21730374bbd
Related: OS#4345
Change-Id: I05d152de6b7a04dee935d79b9987c511351eca95
|
|
Instead of building "osmocom:deb9_amd64" from this repository, build
"$USER/debian-stretch-jenkins" from docker-playground.git (same
Dockerfile). Adjust all jobs to use the new image name.
Add a new "update-osmo-ci-on-slaves-dp" jenkins job, which triggers
the existing "update-osmo-ci-on-slaves" job whenever
docker-playground.git changes.
Replace docker/rebuild_osmocom_jenkins_image.sh with
scripts/osmo-ci-docker-rebuild.sh, so we can get rid of the docker dir.
I thought about dropping the script completely, and directly writing the
two lines into contrib/jenkins.sh. But I kept the extra script for
convenience, when testing locally.
Related: OS#4345
Depends: docker-playground I125ae8a6bcabbd1f485028c79b0abacda0622c3a
Change-Id: I30a61aebcadef5536e74edd35e1c75ef77a2da9f
|
|
Make development easier by skipping fetch, checkout and reset --hard if
_docker_playground is a symlink. Document _docker_playground in
README.adoc and explain how to set up the symlink.
Change-Id: If6209ff71488d39e590f5f8506b9d73ad0314846
|
|
This is a problem e.g. with current osmo-hlr containing
"\t# FIXME: PKG_CHECK_MODULES() may return cached result here!"
Change-Id: I30d539a895bf39aaabe907be9eb52d7e4b3977a7
|
|
Some of our source files are inherited from other sources, particularly
for microcontroller firmware projects. We cannot assume they're all
clean UTF-8. Let's ignore any decoder errors when verifying log
statements and value_string arrays.
Closes: OS#4334
Change-Id: I1e19f4bc6bee46481c6ea743e8334bd4485909be
|
|
Change-Id: I3afad11991d2e8bd72f44bed05f7204653e63133
|
|
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
|
|
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
|
|
Change-Id: Id1902f8b79357ac280767edba3698450f67b7c37
|
|
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
|
|
Generate tarball releases for all tags in all repositories.
Related: OS#3870
Change-Id: I0a904c26e1c45aa46ddc59a01b776f2c7c5f947d
|
|
Prepare for new script, which will use the same list of repositories.
Related: OS#3870
Change-Id: I954b1d5229c44ebcec7e7228f2565a5c6755d16c
|
|
Allow printing all tags instead of only the N most recent ones.
Related: OS#3870
Change-Id: I684c6881915831b33b679e8ae873213beb034ab7
|
|
Add conflicting dummy packages osmocom-nightly and osmocom-latest, and
make all packages from each repository depend on the right one.
As usually, the latest packages will only get changed when a new release
appears. So the dependency will get introduced after tagging a new
release. I have tested in an own OBS namespace, that everything works as
expected.
Related: OS#2640
Change-Id: I79c45e798c10a65443b9fb9ecb54393d1918608a
|
|
Enable in osmocom-latest-packages.sh. Check it out and create the source
package for the latest release as usually, but also create a second
version for debian 8 with adjusted dependencies (like in nightly [1]).
[1] Change-Id: I3570599ede51b974d350064f44f77e360fafd8b0
Related: OS#3899
Change-Id: Ib7251cca9116151e473798879375cd5eb48ff3ad
|
|
Don't checkout a specific version in build(), this is already done in
checkout().
Change-Id: I74290968fe25a6311da0de26ff675bbd687ba156
|
|
Change-Id: Id6c27a924e3005ffadc7720190b261f089beada1
|
|
Since libosmocore 1.1.0 and libosmo-netif 0.5.0 are released, we can
address the TODO and build osmo-sysmon also in our latest feed.
Change-Id: I48bd5aff2ae315b6f462facea70222eb2cdd2d58
|
|
Create a compatible package for debian 8 with adjusted dependencies.
While at it, refactor create_osmo_trx_debian8_jessie() into a generic
checkout_copy_debian8_jessie() function.
Related: OS#3899
Depends: I5b9575ceb1141961e570643a5755a2bd6b6a4254 (osmo-gsm-manuals)
Change-Id: I3570599ede51b974d350064f44f77e360fafd8b0
|
|
Newer LimeSuite (at least 7557e291209fc66a78ffa74dd8314e75841f7c96) is
required to have LimeNet-Micro working properly with osmo-trx.
We update to current newest master since other fixes related to sample
rate are applied after the commit mentioned above.
Related: OS#3861
Change-Id: I62779f3bdbc4a459363a1d660d96d5f02f7763c1
|
|
Enable in osmo-nightly-packages.sh, and add as coment in
osmocom-nightly-packages.sh for now (needs a tagged release first).
Related: OS#3899
Depends: I7edb5093e5b58eb3b0f7af2376476db4026db735 (osmo-gsm-manuals.git)
Change-Id: Ideeae4f7846fa5626fe2c1f5a77e07a3c6e626fe
|
|
Like we actually do already on latest-packages.
Change-Id: I5a9e97a7a93c1d2a9983926cd0f5d7255e9666bd
|