The input parameters for the patch set script are the systems for which the patch sets are created, and the ID of the patch, Tlp::Role::Snapshot, from which the patches and analysis tools are fetched. A Tlp::Role::Snapshot is characterized by a date. Multiple snapshots are stored in a single Tlp::Role::repository. For each system, a patch set is created, according to the following scheme:
With assistance from Tlp::Role::Collector, the system data for the current system is collected.
In general, this is the Explorer data, but it can be any data, depending on the module that plays this role.
The Tlp::Role::Snapshot is then fetched from the Tlp::Role::Repository.
This snapshot, as well as the system data, are handed over to one or more analyzers, Tlp::Role::Analyzer. The analyzer then compiles a list of patches that are missing on the given system.
The list of missing patches is passed to the Tlp::Role::Resolver. Patch dependencies are resolved and whitelist and blacklist patch information is applied to the patch set that is created.
The complete list of patches is forwarded to Tlp::Role::Producer. This role creates the patch set and all supporting files, such as the README files and the installation scripts.
Information about the entire process is collected by Tlp::Role::Report, which processes the information to create the HTML and ASCII text reports.