Commit Graph

111 Commits

Author SHA1 Message Date
AlaiaL 26ee595e14 jenkins-build-amarisoft: adjusting lib name to srsran and update versions
fix rename of srslte to srsran libs and also update Amarisoft
versions.

Change-Id: I2174aec3c7ded8c966877a87f4cc6a39ce1325c2
2021-05-03 13:43:44 +02:00
Pau Espin 0696c60812 Initial Open5GS support
Change-Id: Iff8b88dc22d8f156572839abb48b0c1377c55e33
2021-03-30 14:17:47 +02:00
Pau Espin b32ed9256f contrib: open5gs: Install more binaries to have an EPC
Change-Id: I1ff143b4f876e28ad9a1bc6a4a4cad5dacef8e18
2021-03-16 18:36:54 +01:00
Andre Puschmann 585e35ba66 jenkins-build-amarisoft: copy ltesim_server binary into epc trial tgz
the ltesim_server is part of the UE package but needs to be executed
on the EPC run node. Therefore its handy to have the binary in the epc
trial tgz.

Change-Id: I21ac57d1c1547c1cf4d2394c8593f58ff2c78697
2021-03-16 18:04:40 +01:00
Pau Espin 6231c3c657 contrib: Add build script for open5gs
Change-Id: I0ed43dadbfe08811dd72064ee7332d0872882dfd
2021-03-15 19:06:25 +01:00
Andre Puschmann 4cd6f14be2 jenkins-build-srslte.sh: allow custom binaries
this allows to specify the environmental var
wanted_binaries_bin that will be included in the
trial package. if the variable isn't set, all three
main srsLTE binaries are included

Change-Id: I63f5799328435ce32b5bfd6dae6fd0b37e1e5397
2021-01-07 16:30:25 +01:00
Pau Espin Pedrol 8d27b18480 contrib: Disable libmnl dependency cross-compiling osmo-bts
Only newest OE SDKs have libmnl added, but we don't need this feature
anyway, so let's disable it in order to get builds running fine again.

Change-Id: Ief9cbca6e10b1ed6acf6e079f660fc3f7c863c7b
2020-12-08 12:02:07 +01:00
Pau Espin Pedrol 92ebea1dc1 contrib: Disable libmnl dependency cross-compiling osmo-pcu
Only newest OE SDKs have libmnl added, but we don't need this feature
anyway, so let's disable it in order to get builds running fine again.

Change-Id: Id3b30d0b183cd21fd6df89fdda5581ab58c7a9a5
2020-12-07 13:43:17 +01:00
Andre Puschmann a07af115fe jenkins-build-amarisoft.sh: set symlink to srslte_rf lib
Change-Id: Ifc8e5ba0dd59fb92cdf22f2a18acea904e2153f7
2020-11-30 14:27:10 +01:00
Andre Puschmann 4bf20439da jenkins-build-amarisoft: fix build script for ZMQ module
newer versions of srsLTE create symlinks with the rf library
including the version, see below. This caused the trx_zmq.so
lib to load .so.0 instead of .so only. this patch adds
another symlink so loading works fine again

libsrslte_rf.so -> libsrslte_rf.so.0
libsrslte_rf.so.0 -> libsrslte_rf.so.20.10.0
libsrslte_rf.so.20.10.0

Change-Id: Ib5302c9872f4c82a1ee5074f59de86709aa6c5a9
2020-10-08 15:45:48 +02:00
Pau Espin 2159cfe01f contrib: osmo-trx: Drop explicit --without-sse
Nowadays we have instruction set runtime detection, so there's no point
in disabling it in the binary, specially because nowadays we run in sse
capable host (despite in the past we didn't and there was no runtime
detection, hence why was it explicitly disabled).

Change-Id: I2ffdc60c7644bb514a3854965d17109e91dda800
2020-09-18 20:48:02 +02:00
Pau Espin 4130eef965 contrib/jenkins-build-amarisoft.sh: Allow generating trial without lteue
Some Amarisoft bundles may come without lteue in it. Allow the script to
run if that's the case by setting an envvar.

Change-Id: I363b44cd8aa48f80d24219b6bf5b3ebde580e3c3
2020-07-13 16:05:40 +02:00
Pau Espin f1b43f956c contrib/jenkins-build-amarisoft.sh: Pass srsLTE.git branch explicitly
This allows easily changing the branch for local builds.

Change-Id: I9765e1ebdd7488788be5f5c7259cf8b6e04e58f6
2020-07-13 15:45:15 +02:00
Andre Puschmann b92e2d1c99 jenkins-build-srslte.sh: pass extra configuration_opts to build_repo
this allows to pass extra CMake opts to, e.g., enable address sanitizer

Change-Id: I6fd00025a7225b1e075704d69354a8eb5e7f30ec
2020-07-09 13:43:00 +00:00
Pau Espin 656952760c Move update_version.sh to contrib/
Change-Id: I26218cd512a739fc26ba04be05f01260152d785f
2020-05-12 14:07:36 +02:00
Pau Espin 1337fb8e48 Move check_dependencies.py to contrib/
Change-Id: I8def867b1042cbb98bb36ff4a473b4cdb92ce122
2020-05-12 14:07:36 +02:00
Pau Espin 6c6c0e8599 Cmdline arg -c sets main configuration file (old paths.conf) instead of dir containing it
It has been notified that current configuration system is difficult to
understand and to use, so it has been envisioned to refactor it a bit.
The idea is that the user passes a -c path/to/main.conf file, which in
turn contains whatever osmo-gsm-tester main settings supports (basically
what old paths.conf used to be, plus some files harcoded to the same -c
directory are now configurable through the main configuration file).

Change-Id: Ieca65b71b543c44cfcec8e83efd0fe053c432e55
2020-05-12 14:07:29 +02:00
Pau Espin 06c82aee5c Deprecate envvar OSMO_GSM_TESTER_CONF and remove other ones
Environment variable OSMO_GSM_TESTER_CONF is marked as deprecated and an
error is logged each time it's used. Same feature is available through
"-c" command line parameters, so having the envvar only makes things
more complex for no good reason. It cannot yet be completely dropped
since some environemnt still make use of it. Give some time to users to
adapt their setups.
Other environment variables setting some config apths can be dropped
since they are not being really used in any setup.

Change-Id: I7eb69f870d0dcb5906d45ae067d6bed1aabf5862
2020-05-07 19:09:23 +02:00
Andre Puschmann 8e1ba792c5 jenkins-build-common.sh: also pass additional build flags to CMake
Change-Id: I1c5998d31201505d0a2532f22f905ec155d6c094
2020-04-20 20:36:21 +02:00
Andre Puschmann 6360dfb4d6 jenkins-build-amarisoft: turn off other RF libs when building for zmq driver
Change-Id: Ie4819d3f454d74e14829d02fbdc62a12f2d54cd5
2020-04-20 20:36:21 +02:00
Pau Espin 3f2a5e5b41 contrib: build amarisoft: Set trx_zmq.so RPATH to point to copied dependency libsrslte_rf.so
In the ENB case it's not really required since osmo-gsm-tester makes use
of LD_LIBRARY_PATH. However, since the UE is potentially run with
capabilitites to create tunnels and alike, LD_LIBRARY_PATH cannot be
used and lteue will fail to load trx_zmq.so (because it cannot find its
dependency libsrslte_rf.so).

Change-Id: Ifcbc6ed1c4c465b4cfab4c5689cde44624095f29
2020-04-06 16:32:13 +02:00
Pau Espin 64ad952de1 contrib/jenkins-build-amarisoft.sh: Fix typo copying trx_uhd.so to UE
Change-Id: I0c9b83b9adf0548e78363462744644bc528c2d29
2020-04-03 18:17:09 +02:00
Pau Espin a560ea7b85 contrib/jenkins-build-amarisoft.sh: Make build of amarisoft trx_zmq.so optional
That module is only available so far in a private repository, so allow
still other amarisof tusers to build the bundles with UHD support.

Change-Id: I361f179c8e7f379173fa9109028e139fc4c8c251
2020-04-03 18:17:09 +02:00
Pau Espin 17253af1e9 Introduce contrib/jenkins-build-amarisoft.sh
Prepares inst tgz archives to be consumed by osmo-gsm-tester from
Amarisoft prebuilt binaries.

Change-Id: I372606fc5ff9f6bb3ef848f2fe229b83382ddc09
2020-04-03 15:49:00 +02:00
Pau Espin 979f00d43d contrib: srslte: Allow changing repo name
Change-Id: I06e6566ac3df9369b391bc88f288f72588088ef1
2020-02-18 15:31:25 +00:00
Pau Espin 70c01ec92a contrib: Fix default variable value syntax
Change-Id: I23abf33881f64dd89c0bf5ef970972908d337366
2020-02-18 15:31:25 +00:00
Pau Espin 4f3cc9e7e4 contrib/*sysmo.sh: Fix default poky SDK path
ansible scripts are installing the SDK in "poky-sdk" dir, not "poky" one.

Change-Id: I002fde53684cd4a43c9f22e09264056f2a950c24
2020-02-14 16:26:31 +01:00
Pau Espin 10fe37cdce contrib/*sysmo.sh: Fix default poky SDK version to 2.3.4
Current latest poky SDK is 2.3.4, and that's the one we have installed
in all buildhosts.

Change-Id: I8c855456c7f94a3d6ee58ca550a056a0fea61a71
2020-02-14 15:40:46 +01:00
Pau Espin 1bce944fa2 jenkins-build-srslte: Temporarily Switch git repo to own-controlled one
During integration of the different srsLTE processes, some bugs or
misbehaviors appear which require fixes in srsLTE. Let's use our own
temporary fork until integration is complete and all patches are merged
in upstream.

Change-Id: I6414d9855cf9c004385cc280e5a60e82f8e4fbad
2020-02-11 14:39:46 +01:00
Pau Espin addf78ecb6 contrib: Add scripts to build srsLTE software
Change-Id: Id9d63920a44a80af187e649c9be5fd7498fa5f44
2020-02-03 17:22:30 +01:00
Pau Espin 0cb2178812 contrib: Disable dahdi support in libosmo-abis
Since libosmo-abis d4be696bbc20522a0284b6d0aefa872585f6926f it is
enabled by default. Since we don't need it so far and required
dependencies are not available in sysmobts SDK, let's disable it
explicitly.

Change-Id: Id017f3d2f51d30fa53881b627460fb568f19713b
2019-12-03 11:47:19 +01:00
Pau Espin bf3bb49785 contrib: Avoid sysmobts/oc2g toolchain ld crashes building new libosmocore
Some gcc version (< 7.3.0) on ARM generate wrong code for __thread
variables that crash at runtime. It seems, due to some unknown reason, that we
are not affected by this bug with toolchain from poky pyro (6.4.0). However,
libosmocore as of e188b8cd98f599468fbb200c7d590de955daf761 applies some
CFLAGS="-mtls-dialect=gnu2" to workaround the issue automatically. But same
toolchain contains an "ld" that crashes when those flags are applied.
Fortunately, libosmocore provides a way to disable the workaround, and since
we are not affected by the bug, we are fine with that. If the toolchain had
the TLS runtime bug, then we'd had to build with -O0. Can be probably dropped
once we move to newer toolchain.

Depends: libosmocore.git afce89dac1a3cdb975da72020acdba16940fd679
Related: OS#4062
Change-Id: I583354735a7671e5bba1c0f6e60c84b6ef55ac63
2019-08-06 16:05:03 +02:00
Pau Espin d581010568 contrib: jenkins-build-osmo-pcu-oc2g: Enable oc2gbts-phy
Depends on osmo-pcu Change-Id I7cd89a549c9463e81893ca7dd925299f728e4453.

Change-Id: I1384f4adeca7583e48dd94fcb09a1b58d108f1de
2019-03-25 16:27:40 +01:00
Pau Espin 8369cc321b contrib: Use proper SDK for OC2G builds
Binaries produced by sysmobts SDK are not compatible with OC2G.

Change-Id: I5adde9cf8a5f84cfc4b6fc4d4def3836444929ec
2019-03-15 20:16:14 +00:00
Pau Espin bf90917e9f contrib: Add script to build osmo-bts and osmo-pcu for oc2g
Change-Id: I7cc8937fb3e6c5d74b56cb049afb293b0b7ed25e
2019-02-21 19:26:13 +01:00
Holger Hans Peter Freyther d3d178fc41 jenkins: Fix the test for journalctl if it isn't present
test -x for an empty string is still true. Check if the result of
command is empty or not. It seems to work for the negative case now.

Change-Id: I7e4326df155dae776481bf7824694b3fb47abcad
2019-02-21 13:19:16 +00:00
Holger Hans Peter Freyther 16e39e877d jenkins: Only run journalctl if it is available on the machine
It's not common to run journald inside containers and the journalctl
command is not installed. Don't attempt to run it.

Change-Id: I9dee3cb0d0ca203da77dfa1a793a4e4e5f8593c6
2019-02-21 10:13:49 +00:00
Holger Hans Peter Freyther 4db8bb68c1 osmo-bts: Package the osmo-bts-virtual binary for the ms_driver
Change-Id: Id6db5d0bea5262075c3e06fbb0ccfef86afa85e4
2018-12-15 14:37:40 +00:00
Oliver Smith 52e5797b3d contrib/jenkins*: build and publish manuals
Add contrib/jenkins-build-manuals.sh, which clones or updates
osmo-gsm-manuals and builds the manuals. When the environment variable
PUBLISH=1 is set, it also uploads them.

Call jenkins-build-manuals.sh from jenkins-run.sh, without PUBLISH=1,
so the manuals get build-tested in the osmo-gsm-tester_gerrit job.

A new job master-osmo-gsm-tester will be added in the future, which
will run PUBLISH=1 jenkins-build-manuals.sh.

The jenkins-build-manuals.sh script does not use the osmo-ci.git
scripts for installing dependencies and cleaning up the workspace.
These scripts are not available on the node, which runs the
osmo-gsm-tester_gerrit job, and it is not trivial to add just them
(without building the osmo-ci Docker image etc.). The only dependency
is osmo-gsm-manuals, and it does not need to be compiled, so it seemed
to be the most maintainable solution to implement the clone/update and
clean up in a few lines of shell code instead.

Related: OS#3385
Change-Id: I4ebfe12a164f807b63bc897aff44db83fc0705bd
2018-12-10 12:57:04 +01:00
Holger Hans Peter Freyther 9cf1c8afde misc: Use RPATH to avoid having tests to set LD_LIBRARY_PATH
Instead of each binary launcher having to check if there is a lib/
directory and then setting a LD_LIBRARY_PATH we can use an RPATH and
know these binaries pick-up the right libraries.

This requires I6e4ad2e3855af7bcefc22d4190cc4e6f58581857.

Change-Id: If771767dd82662e13b6b10ee7a8b8d0c84dcbdb1
2018-11-14 21:00:52 +00:00
Pau Espin 24dc93754b contrib: build-osmo-sgsn: Depend on osmo-hlr build
Since osmo-sgsn f4b2c4ca42cc530c38c9ac6f275e4d7da9315fa2, it depends on
libosmo-gsup-client available in osmo-hlr.

Change-Id: I6aa997ff2092f9ddf2ac475fd094803be9063980
2018-10-31 08:14:51 +00:00
Pau Espin e789f0c088 osmo-bts-trx: Add support for osmo-trx-lms
Change-Id: I44db0fe4592109ecb665e1880806d90379da64f7
2018-10-10 09:39:58 +00:00
Holger Hans Peter Freyther 90b050764a Be able to switch-off ASAN builds of our binaries.
Inroduce a way to not take a 2x performance hit when testing. It
is of importance if we run with hundreds of BTSes and 10k+ subscribers.
In the absence of using getops or shflags use an environment for it.

Change-Id: I540ba1c35e8fb72abcee0d86e0bdc1136b47345c
2018-09-26 07:27:39 +00:00
Holger Hans Peter Freyther fd760f6702 Package mobile and virtphy as part of osmocom-bb as well
Change-Id: Ie44dca72327e928073b00cde434d1cf2de574d9c
2018-09-26 07:27:39 +00:00
Holger Hans Peter Freyther 9eafb1372e Optimize and re-use an existing repository
Instead of cloning osmocom-bb three times this will allow us to
re-use the repository. Simply change the directory, set the new
origin and fetch.

Change-Id: I63f103b2f70559e969e8c66477ab9ee7f2886832
2018-09-26 07:27:39 +00:00
Pau Espin cbbe5d8c1a contrib: Use correct var to write repo name in git_hashes.txt
We want to write repo name in there, not $dep which actually doesn't
exist in local context of have_repo function. In most cases it's
actually the same because in almost all cases $dep is passed as $1 to
have_repo and thus is the same as local $repo. But in a few recipes
which don't use build_repo directly but instead use have_repo and build
manually, $dep may not point to $repo. That's the case for osmocom-bb
for instance. As a result, "libosmocore" is printed twice, were second
word should be "osmocom-bb".

Change-Id: I7a7db7cf4cc020295d216c60d6dc688f110916dc
2018-09-25 10:20:59 +00:00
Pau Espin 8cc84d8404 contrib: Build osmo-sgsn with IU support
Change-Id: I810ae848c350550430c1918b3abb4376d21d7317
2018-09-19 14:05:41 +02:00
Pau Espin 26d7f8d462 contrib: Build osmo-msc with IU support
Change-Id: I68503ae2f27948aff60a9424e6b114db548d79e9
2018-09-19 13:14:19 +02:00
Pau Espin 1e2a041773 contrib: Add jenkins-build-osmo-iuh.sh
Change-Id: I75cb9551db6b1b4aa5bfb76177694c14fad82f04
2018-09-19 13:02:56 +02:00
Holger Hans Peter Freyther cb132bd79f build: Add overload to clone repo and build in subdirectory
To build osmo-nitb we need to clone "openbsc" and then enter the
"openbsc" sub-directory. For building "mobile" and "virt_phy" of
OsmocomBB we will need to do something similar. Instead of added
more hardcoded paths, add a variant that allows to specify the
source directory.

Change-Id: I67fbd54296f2c68316bf8e89cfeb37d147193d53
2018-09-18 06:29:17 +00:00