Instead of trying to run everything outside of docker, just build the
docker containers and then mount /usr/local and osmo-ttcn3-hacks from
the host system into the docker containers. This way, we can just use
the same configs as the official jenkins jobs are using, while still
having a short test-cycle once the docker containers are built for the
first time. I've decided to implement this, because it was not feasible
to maintain the separate configs.
Depends: docker-playground I8d1f78aee926f8f6ec0b704e16639bc83f525816
Change-Id: Iecba5391dafc353058d369deb513b156534face1
move some freeswitch config files out of the freeswitch/ tree and symlink so
that they become configurable
Apply new PBX_* variable naming
fill_config: enable symlinks;
ignore template function 'strftime' because freeswith cfg uses that.
Change-Id: I97d3db87398c743637f7eb13629e21b149bcc8fa
Build testsuite, SUT and dependencies and run everything with one
command. Example usage:
$ ./ttcn3/ttcn3.sh msc
So far, it works at least with:
hlr, mgw, msc, pcu, pcu-sns, sgsn
Change-Id: I6b4bf2743adeec1a950d5f090a690182b991cf49
Make sure that BTS 11 doesn't get sorted between BTS 1 and 2, because osmo-bsc
requires the BTS to be configured in numerical order.
Also makes sense as foreach loop ordering in general.
Change-Id: Ib06052fd71def3d4c869ee9b3dc4d02ba06267af
This is what I did to get external MNCC with kamailio to work.
(As before, only change MSC_MNCC from "internal" to "external ..." in config_*
to enable use of kamailio as external MNCC.)
Change-Id: I18c991bf914dedeb69cb8a2fcde117633e51a899
Since commit [1], the MNCC socket path is configured in the .cfg file. There is
no need to pass the -M option to osmo-msc on the cmdline anymore.
Also, the udtrace example to launch osmo-msc in run.sh includes a '| tee' so
that the -M would be passed as option to tee and breaks that example.
[1] cbdd7180a6 / Ie6352c584c0fce57c617387160c285abf40a5f90
Change-Id: Id5c177a7fe98b752881ddd0d98152a2e30380d0e
Lately I'm seeing unecessary rebuilds because config.h.in is newer than the
./configure file. The rule to trigger on *.in files is intended for "manual"
.in files, not those from autoconf/automake. Exclude config.h.in.
Adopt "foreach" and "common_" features and generally take in the improved
templates as used at 35c3.
If your config file relies on the tmpl_std that is now removed, you can locally
resurrect it with
git checkout 2c6a55baa7 -- tmpl_std
but it's probably better to make a new copy of config_2g3g and insert your
local config there.
Change-Id: Ie6352c584c0fce57c617387160c285abf40a5f90
Allows downloading patches quickly with 'git review -d 1308' and other
shortcurts. We also have this in the other Osmocom repositories.
Change-Id: I18712cf0779ec65389736132ad6b40e629c37dc6
The configure step naturally depends on Makefile.am and *.in files. However,
the automake process also generates Makefile.in files: exclude those from *.in.
This fixes spurious unnecessary rebuilds: especially when libosmocore had
modifications, it often rebuilt *twice* after this (causing all of the other
source trees to rebuild as well).
Change-Id: Ia6f48ac9a8b300440d23c9b495fb39b5e40b59d8
Make the message easy to understand at first glance, print what needs to
be done to regenerate the configs. Add an empty line before listing the
stale file that has been found, so it stands out from the (at this
point) less relevant path listings. It looks like the following now:
$ ./run.sh
using config file '/home/user/code/osmo-dev/net/config_2g3g_osmith'
on templates '/home/user/code/osmo-dev/net/tmpl_std'
with NET_DIR '/home/user/code/osmo-dev/net/osmith'
Stale: '/home/user/code/osmo-dev/net/tmpl_std/run.sh' is newer than 'run.sh'
WARNING: STALE CONFIGS - your net configs are older than the templates they should be based on!
* Hit enter to continue, and use the stale config files
* Hit ^C and run 'make regen' to regenerate your configs
Change-Id: If225e094619a07a228e0e2f337153ee18cdb420c
Allow using "make regen" in the net dir to regenerate the configs, just
like it is possible to type "make regen" in the make dir.
This is a minor usability improvement, so one does not need to remember
to type ../fill_config.py in the net dir.
Change-Id: I8b23f8ae1f1d6ade597a30a222dfc82ea890d207
If there are multiple ${foo()} commands expanded in one iteration, there would
be offset mismatches because the changed string was used with regex offsets
from before the match. Re-run the regex after each change.
Change-Id: I69de60d840ff3ba115c37d1ede7ccbc8879c82eb
git has an internal concept of a branch's upstream branch, and the remote need
not be 'origin', and also, the upstream branch name may differ completely. So,
use git's {u} keyword to obtain the upstream branch name.
This removes all 'origin' strings from gits. Also, git_branch_exists() is no
longer needed, drop it.
Also remove a couple of default arguments which aren't ever used because we
always pass arguments anyway.
In the case of git_ahead_behind(), we would have use for a default
branch_upstream=None to imply calling git_branch_upstream(), but then during
rebase, if no upstream exists, we would invoke it twice to get None a second
time. So just call the function explicitly. I thought about returning an empty
string instead of None, but it's too convoluted.
In git_output(), pipe STDERR to STDOUT, because every time we parse a remote
ref (git ref-parse --abbrev-ref '%s{u}') and there is no remote branch, git
prints 'Fatal: there is no remote bla bla' on stdout, and that error is
expected / ok to happen, so it just clutters the 'gits' output. The easiest way
to achieve silence then is to pipe to STDOUT, IIUC otherwise we'd have to use
Popen() and communicate()... In the case of error, subprocess raises an
exception and we see that an error happens. In the ref-parse case we can simply
catch the exception and be quiet.
Change-Id: Ife146903ae1323a4e568587ccfd4018725e9d719
Ignore all files and folders that get created when following the README
and net/README instructions.
Change-Id: I62277f973cc8f1ee61c5244c9d8cc75775c7cfd9