Bundles are a collection of related YANG modules to make development easier by having them grouped together and should be used when external modules augment a base module, for example: ietf-interfaces.
> make_sil_bundle if-bundle ietf-interfaces iana-if-type ietf-ip acme-interface --sil-edit2 --sil-get2
This example will generate a bundle named “if-bundle” that contains the “ietf-interfaces”, "ietf-ip", and “acme-interface” modules. The "iana-if-type" module is also loaded but no SIL code is generated for this module.
The "split" feature to separate user and system .c & .h files is automatically used for make_sil_bundle. There is a corresponding make_sil_sa_bundle to create SIL-SA Bundles.
List the Base Module First
The first module listed must be the base module, followed by other base modules or modules that augment the base modules.
Modules are Initialized in the Command Order
The module "init1", "init2", and "cleanup" functions are called in the order they are listed in the make_sil_bundle command
Bundles are Loaded at Boot-Time or Run-Time
The SIL bundle library can be loaded dynamically by the server using --bundle=if-bundle or load-bundle if-bundle.
SIL-SA is Also Supported with make_sil_sa_bundle
> make_sil_sa_bundle if-bundle ietf-interfaces iana-if-type ietf-ip acme-interface --sil-get2
SIL-SA does not support the --sil-edit2 option at this time.