Commit Graph

9 Commits

Author SHA1 Message Date
Neels Hofmeyr e7cb4a591c fill_config: fix multiple command expansions
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
2018-11-26 01:20:03 +01:00
Neels Hofmeyr 3c093457d2 fill_config: tweak for_each error message
Change-Id: If2c87e4aabeba91f99a2ec9da2b3d7ac8fa986ba
2018-11-26 01:19:16 +01:00
Neels Hofmeyr 4f0612251c fill_config.py: ignore templates starting with 'common_'
It's useful to include common parts in numerous cfg files, using the
${include(path)} command. So far they were called common_* and stored outside
of the templates dir (e.g. for logging). So far all files in a templates dir
are seen as templates, so the common files had to be stored in a different dir,
which is a bit senseless.

Allow storing them in the same dir with the templates: ignore all files
starting with 'common_'.

Change-Id: I74446dc0a7f51d4f231e8758a691abb675e87483
2018-11-17 00:05:16 +01:00
Neels Hofmeyr 5549ffbde8 fill_config.py: add ${foreach(FOO)}
This patch indicates that we should rather use a proper templating python
library instead of re-inventing this stuff. But now that we're here...

Add a construct

  ${foreach(BTS)}
   bts ${BTSn}
    location_area_code ${BTSn_LAC}
  ${foreach_end}

that repeats for each BTS<nr> variable found, e.g.

  BTS0_LAC=23
  BTS1_LAC=24
  BTS2_LAC=25

would result in three blocks of the above.

I am using this to avoid copy-pasting for configuring N BTSes for 35c3.

Change-Id: Ie1139a017f42cea5bf7ebbbe457bbc3bfe06944c
2018-11-16 18:43:43 +01:00
Oliver Smith fd7446fcab fill_config.py: add NET_DIR variable
Allow all config files to use a new NET_DIR variable, which always
points to the network folder with the generated configs. We can use
this to place all temporary files (sockets, pid files, ...) there.

Change-Id: Idbdf478ebb9f0b2fcd860e5eff3c414a0a459561
2018-10-31 13:07:00 +00:00
Neels Hofmeyr e02e0aee7a fill_config: resolve relative include paths recursively 2018-09-26 14:57:57 +02:00
Neels Hofmeyr d924e332bb fill_config.py: fix missing config file error msg 2018-09-10 00:05:29 +02:00
Neels Hofmeyr 57e4288c86 include cfg.sh,stale_config.sh in fill_config.py
Staleness check now also checks for included files.
fill_config.py figures out last used paths itself and has cmdline doc.
2018-08-23 15:19:35 +02:00
Neels Hofmeyr 697a617e0e add template-configs, script to launch network
This is the set of scripts I've written for myself over the years to easily
configure and run Osmocom core networks on my lab computer. I hope this will be
useful to others as well.
2018-08-23 14:17:20 +02:00