1 The Rpmlint plugin

1.0.1 Description

rpmlint is a tool for checking common errors in rpm packages. This plugin is responsible for scanning with rpmlint .rpm and .src.rpm packages generated by each component in the build and report errors and warnings found. It walks through the directory ${distDir}/project_name/component_name/ looking for packages to be scanned. It generates an overall report (html) of all the packages belonging to each component with the number of warnings and errors found. It updates the corresponding metrics in the buildstatus.xml file. If a report relative to a package is not readable, it is not included in the report nor it contributes to the metrics value. The config file was edited to filter out the signature check.

1.0.2 Version

rpmlint v. 1.3

1.0.3 Homepage

http://rpmlint.zarb.org

1.1 Activation

1.1.1 Suitability

Suitable for any module which produces rpm packages after the build process.

1.1.2 Execution point

The execution point defines during which command and which target the plugin will be executed.

COMMAND BUILD
TARGET postpublish

1.1.3 Profiles

The profiles must be specified in the configuration in order to activate the plugin.

The plugin profile can be used to enable specific plugins.

The bundle profiles can be used to enable a set of plugins within a specific category.

PLUGIN PROFILES rpmlint
BUNDLE PROFILES  

1.2 Deactivation

If this plugin has been activated for a larger set of modules (at project or subsystem level), it is possible to disable it for specific modules using special properties:

NAME norpmlint
DESCRIPTION To disable the rpmlint execution for the current module

NAME notest
DESCRIPTION To disable all the plugins registered at TEST target (PRETEST, TEST, POSTTEST) for the current module

1.3 Input

1.3.1 Required properties

The required properties must be available in order for the plugin to run.

Some of the required properties may have default values which correctness must be check to ensure the correct execution of the plugin.

NAME rpmlint.failure.threshold
DESCRIPTION Defines whether a module must fail in case one or more errors/warnings are found: none - No module build failures due to rpmlint. high - The module build is marked as failed if one or more errors are found. low = The module build is marked as failed if one or more warnings are found
DEFAULT VALUE high
EXAMPLE To force module builds to fail in case one or more errors are found, the property must be set as: high

NAME rpmlint.failure
DESCRIPTION If set to True the build is stopped if a module fails.
DEFAULT VALUE false
EXAMPLE To force the build to stop if the module fails, the property must be set as: true

1.3.2 Other requirements

NONE

1.3.3 Dependencies

NONE

1.4 Output

1.4.1 Module reports

For each module, the output is generated in ${src.location}/reports/rpmlint

The plugin generates ${moduleName}-${configuration}/RPMLINT-${rpmName}.log containing the log of rpmlint for the named rpm.

1.4.2 Global reports

The plugin generates the overall html report index.html with number of warnings and errors found for every rpm of every components.

1.5 Metrics

1.5.1 Overall

The overall metrics are related to the whole build/test and provide a summary of the modules executed.

NAME Rpmlint
VALUE Total number of warnings and errors found during the build
UNIT Violations
TYPE integer
LINKS HTML:${workspaceDir}/reports/rpmlint/index.html

NAME Rpmlint rate
VALUE Percentage of modules that have successfully passed the threshold defined by ${rpmlint.failure.threshold}
UNIT modules
TYPE percentage
LINKS HTML:${workspaceDir}/reports/rpmlint/index.html

1.6 Module

The module metrics are related to a single module and provide its plugin execution details.

NAME Rpmlint
VALUE Total number of warnings and errors found during the build for this module
UNIT Violations
TYPE integer
LINKS HTML:${workspaceDir}/reports/rpmlint/index.html

1.7 Advanced

1.7.1 Register

Verifies the existence of rpmlint Registers the plugin

1.7.2 Execute

Verifies the existence of user defined properties and looks for packages to be scanned. Scans packages with rpmlint

1.7.3 Publish

Analyses the result of the scan. Generates a package report and feeds metrics into build-status.xml. Checks the threashold value.

1.7.4 Finalise

Generates an overall report and overall metrics

-- - 21-Sep-2011

Edit | Attach | Watch | Print version | History: r5 < r4 < r3 < r2 < r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r5 - 2011-11-16 - DuarteMeneses
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    EMI All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback