Hi Nils,
Good initiative!
I think we need to coordinate our efforts so we avoid duplicate work.
ONsip.org and
iptel.org merged partly because we wanted to align the SER
- Getting Started configuration files with the development of SER. As
you probably have seen on the lists, the intention is to add the
document and the config files to the cvs (SER 2.0).
Most beginners of SER (and many OpenSER beginners) start out with the
SER - Getting Started document and configs. From what I have seen, there
are now many, many production configs out there using the basic
structure from the getting started files.
We have learned quite a lot about maintaining example configuration files:
1. People need small pieces in order to understand how each feature is
implemented
2. Without an expert pre-integrating configs/features, many/most? people
struggle to integrate a feature into another config
3. Maintaining many config files quickly becomes an impossible task
We started out with a focus on the "getting started" and thus created a
document with commented config files. We made the config files
available standalone (ready to be run) and subsequently focused more and
more on maintaining the configuration files and add more features and
then let the comments/document come afterwards. Keeping everything in
sync was a problem. We had early decided to keep everything in one
common structure and let each config build on each other (to
incrementally add functionality). This helped us in making sure
everything worked and people didn't have to integrate small examples
into one big themselves.
Our biggest problem was to keep adding features and making sure that we
updated configs to new SER versions.
Based on these experiences, we have done the following:
- Migrated the document to docbook
- Created the m4 build system (
http://www.iptel.org/ser/doc/buildsystem)
which keeps the configuration files WITH comments and allows
auto-generation of the commented config ready for inclusion in SER -
Getting Started document
In creating the build system, I put emphasize on the capability to
maintain different configuration sets (called feature packages, ex.
gettingstarted) composed of different feature sets (helloworld, auth,
natrtpproxy etc), each consisting of a set of features (natdetection,
natmangling, etc). The configuration files are easier to maintain and as
added value, people can automatically generate their config file based
on an example with correct IP address, port etc. (BTW, I work on
allowing people to generate their config files directly from from
iptel.org)
This may sound complicated, but I believe a quick look at the doc
(
http://www.iptel.org/ser/doc/buildsystem) will quickly give you the idea.
Currently, the helloworld version of SER - Getting Started has been
migrated to SER 2.0 and Alfred Heggestad and Ladislav have merged the
current ser.cfg config with the optimized NAT example, and we will try
to use that config as a starting point for a new NAT SER - Getting
Started configuration file.
I don't think everything should go into the SER - Getting Started
feature package (though we should at least avoid creating two versions
of exactly the same functionality), but I hope you will spend some
minutes to see how a new feature package in the build system can help
your goals. I will of course be happy to assist you (as I have waited to
see interest before documenting creating new feature packages).
g-)
Nils Ohlmeier wrote:
Hello everybody,
as we want to provide more examples for the configuration the following the
question came up:
Do you prefer
- one big example configuration
- probably harder to understand
- easier to maintain for us
- one example config file per "feature"
- probably easier to understand your desired "feature"
- you might have problems to integrate all your desired "features" into one
config without breaking anything
- harder to maintain for us, as we have to update several files :-)
As the configuration examples are indented to be for the community, I would
like to know what you prefer or if you see other options.
Thanks
Nils
_______________________________________________
Serusers mailing list
Serusers(a)lists.iptel.org
http://lists.iptel.org/mailman/listinfo/serusers