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
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
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
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
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
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
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
As of Change-Id Id5044b1835190edc948952d207a5196a18669eb1, osmo-remsim
contains Debian packaging information and hence we can build it as part
of our nightly feeds.
We're not yet enabling 'latest' builds as we need to wait for the next
libosmo-abis release for that (requires the IPA keepalive FSM).
Change-Id: Ic367dc95f46cece4bd769061af860fd82b4bd2e9
Now that libosmo-dsp has a 0.4.0 tag that includes debian packaging
information, we can add it to the latest feed.
Change-Id: Ic082a4ad6b8582dfe44df5bdaafa525e52da7246
This way the latest script is a lot more similar to the nightly one, and
easier to maintain and expand with new features.
checkout and build steps are split because once we have a new
osmo-trx release, we'll need the create_osmo_trx_debian8_jessie trick to
build it.
In the future we can do further steps to have a common function lib
between latest and nightly scripts.
Change-Id: I786c6f4ad4b4e43d1692c1588d2ad2194d0b25a4
We're using the build() function not only to build osmocom projects
requiring a .tarball-version file, but also other projects such as
libusrp. Let's make the related git-buildpackage arguments conditional
to whether or not a .tarball-version file exists at all.
Change-Id: I0683cff036a240b1b819f91fbd230d5f9211074c
If a new package is uploaded to OBS, prior to this change,
only the .dsc file is uploaded, not the actual .tar.xz containing
the source code. Let's fix that.
Change-Id: Id1c9e6d112781004238a516b24dd446af0beb95a
At the "autorecon -fi" stage, Osmocom programs either need the .git
directory peresent, or a .tarball-version file in order to determine
the exact source code version.
Normally, "make dist" exists exactly for this purpose: It runs
git-version-gen and saves the result to .tarball-version, and we then
include this file in the .tar.gz we generate.
However, as the nightly paackaging scripts use git-buildpackage, it
bypasses the "make dist" logic and hence we need to
1) manually generate the .tarball-version file
2) copy it over to the directory specified as --git-export-dir
This way, the .tarball-version is inside the tar.xz generated by gbp,
and autoreconf then has something to use as PACKAGE_VERSION.
This commit fixes "UNKNOWN-dirty" in .pc files of libraries, as well
as in "show version" commands on the vty.
Closes: OS#3449
Change-Id: I76e3713f0b01a6110091ff90e8e53aa79533c374
This reverts commit 5b2bb86e8a.
While it was intended to enable automatic "latest" builds from rtl-sdr,
it breaks builds e.g. of libosmo-abis, where we have both (new) tags
without 'v' and old tags with 'v', and now the older 'v' tags win
due to lexicographical sorting :(
Change-Id: I1c8d2ab18e389a8c2c41082d997f101d72c3acc0
we cannot yet build "latest" for them, as they don't have any tagged
versions yet which include the /debian directory.
Change-Id: Ia5708508d918fd71eb05393e39b93859b943d623
Some projects (notably rtl-sdr) use "v" in front of their version
tags in the git history. Let's make sure we also recognize those.
Change-Id: I20f9896cc7844a6ddec7ba63bc9a77f548082e2a
Now that osmo-fl2k has debian packaging information included, we can
easily build it as part of the "latest" and "nightly" feeds.
Change-Id: Ie2429df14ad51aadb55b4a7d8f6cfcb45c5c6e70
Now that rtl-sdr has debian packaging information included, we can
easily build it as part of the "latest" and "nightly" feeds.
Change-Id: Idc6afb523e71ed977401d707895844bad6247f8b
Using a $TOP variable makes directory paths more clear
to understandable. Path now expressed starting from the TOP dir
instead of using ../../../foo
Change-Id: I7a87532a3232fbcfb5f676588991dbc59a34f739