lapptrack – Products Tracking Manager

Objects reference

This section details the objects defined in this module. In this case, there is only one object which is the main entry point of the scheduler. It offers an API for implementing user interface.

Functions reference

This section details the specific functions used in this module.

Data reference

This section details global data, including both variables and values used as ‘defined constants’.

Exceptions reference

This section details the specific exception used in this module.

Configuration file

Example of configuration file
# Core section contains general parameters
# store (mandatory): contains the path where installation package and applist
#   files are stored.
# logger (optional): contains the path name of the configuration file of the
# logging system based on [`logging`](https://docs.python.org/3/library/
# logging.html) module.
# pulling_report (optional): contains the path name of the configuration file of
# the pulling activity report  (see `cots.report` for detailed informations)
# fetching_report (optional): contains the path name of the configuration file
# of the fetching activity report (see `cots.report` for detailed informations)
# approving_report (optional): contains the path name of the configuration file
# of the approving activity report (see `cots.report` for detailed informations)
[core]
store = ..\appstore
;logger = .\logger.ini
;pulling_report = .\pulling_report.ini
;fetching_report = .\fetching_report.ini
;approving_report = .\approving_report.ini

# Sets section contains the list of named sets used to deploy applications.
# <name>: is the name of the set and contains a set of computer names or any
#   organisational units according with the lappdeploy script call. A set may be
#   empty, in this case, no file is going to be created for this one.
#   __manual__: is a special set to specify that the installer must be manually
#   launched (an user interaction is necessary)
#   __thirdparty__:is a special set to specify that the installer is going to be
#  launched from an other installer (extension or language pack for exemple)
#  __all__: is a special set to specify that the installer is going to be
#  launched on all computer.
[sets]
__manual__ = manual
__thirdparty__ =
__all__ = all
userset = pc1, pc2

# Applications section contains the list of applications to maintains.
# <name>: is the name of the application section (see below) and contains
#   a flag specifying if the application section have been taking into account.
[applications]
dummy = on
dummy2 = on
ignored = off

# Application section contains configuration items for a specific application
#   (e.g. python module name which manage this application)
# Warning: name section must be lowercase, since the section name is a key in
#   applications section.
# handler (optional): is the qualified name of the handler class (A dotted name
#   showing the “path” from the global scope to the handler class). The default
#   value is 'cots.<section name>.<section name>Handler' with the first letter
#   of section is capitalised for having a camel case name for the class
#   handler.
# path (optional): is the path name where to store the installer package.
#   The default value is '${core:store}\<section name>'.
# set (optional): is the name of the set associated with the application
#   (see sets section)
#   The default value is '__all__'.
[dummy2]
handler = cots.dummy.DummyHandler
path = ${core:store}\dummy
set = userset
Example of logging configuration file
# Logging configuration section contains configuration items used by the
# logging module. See the 'Configuration file format' (docs.python.org/3/
# library/logging.config.html#configuration-file-format) to have details about
# the file format.
[loggers]
keys=root,main,dummy

[handlers]
keys=consoleHandler,logfileHandler

[formatters]
keys=standardFormatter,debugFormatter

[logger_root]
level=NOTSET
handlers=consoleHandler

[logger_main]
qualname=__main__
level=DEBUG
handlers=consoleHandler
propagate=0

[logger_dummy]
qualname=cots.dummy
level=DEBUG
handlers=consoleHandler,logfileHandler
propagate=0

[handler_consoleHandler]
class=StreamHandler
level=INFO
formatter=standardFormatter
args=(sys.stdout,)

[handler_logfileHandler]
class=FileHandler
level=DEBUG
formatter=debugFormatter
args=('${core:store}\\lapptrack.log', 'w')

[formatter_standardFormatter]
format=%(asctime)s - %(levelname)s - %(name)s - %(message)s

[formatter_debugFormatter]
format=%(asctime)s - %(levelname)s - %(name)s [%(funcName)s] - %(message)s