[rancid] How to extend Rancid. Basics.

heasley heas at shrubbery.net
Wed Aug 12 18:46:25 UTC 2015


Sat, Aug 01, 2015 at 11:48:39AM +0200, jm+rancid at roth.lu:
> The question thus is: what is the absolute minimum required feature set 
> of the actual script to interact with the main rancid application i.e. 
> feed it the content so it is stored in SVN?

These don't seem to have been answered.

Your script must retrieve and filter the output it wishes to collect and
deposit it in a file named <router>.new.  control_rancid does the svn
parts.

> I also see that there seem to be several approchaches. There are 
> different xxrancid scripts in the bin directory. On the other hand, some 
> devices seem to call rancid directly with the -t parameter, which seems 
> to use libs from the lib directory, which looks like a more modular 
> approach. What's the difference, and what is the official/recommended 
> approach?

rancid with the -t is a wrapper for the devices handled by libraries.  But,
the script definition in rancid.types.* can be any program (with args) that
achieves the aforementioned output via the arguments that
control_rancid/rancid-fe pass.  This allows the old method of rancid, see
examples in rancid.types.base, and the new way, plus user-defined methods.
It also means that not every script need be transitioned to the library
method before this could be released.

that was the goal - along with more modularity and the ability for users to
changes commands and/or filtering without altering the rancid code - which is
thus easier to upgrade and easier for me and the mail list participants to
support users.  Admittedly, more can be done to improve flexibility and
modularity.


More information about the Rancid-discuss mailing list