Home > spec_checks

spec_checks

Spec_checks is a project mainly written in Python, it's free.

Run through a list of RPM SPEC Checks

== SPEC_CHECKS This Tool gives you step by step questions to assist in reviewing packages for Fedora and EPEL. Upon completion you will be given output which is intended to be pasted in to the Bugzilla Package Review ticket.

Currently the contents of the ./configs/ directory is based on the review process found at http://fedoraproject.org/wiki/Packaging/ReviewGuidelines

== Requirements

spec_checks requires Python 2.7 as it uses argparse: http://docs.python.org/dev/library/argparse.html

== Getting Help

Simply Clone the Git repo and run the python script

$ git clone git://github.com/jness/spec_checks.git Cloning into spec_checks... remote: Counting objects: 201, done. remote: Compressing objects: 100% (199/199), done. remote: Total 201 (delta 120), reused 0 (delta 0) Receiving objects: 100% (201/201), 26.90 KiB, done. Resolving deltas: 100% (120/120), done.

$ cd spec_checks/

$ ./spec_check.py --help usage: spec_check.py [-h] [--results] [--delete] name

positional arguments: name Package Name

optional arguments: -h, --help show this help message and exit --results Print out the report using saved answers --delete Delete saved information for given package name

== Running Script

$ ./spec_check.py php52

CHECK: 1

      rpmlint must be run on every package

What does Fedora have to say? http://fedoraproject.org/wiki/ParagNemade/CommonRpmlintErrors

Does this look good (Y/n/skip) [pass]: y

CHECK: 2

      The package must be named according to the Package Naming 
      Guidelines

What does Fedora have to say? http://fedoraproject.org/wiki/Packaging/NamingGuidelines

Does this look good (Y/n/skip) [pass]: n ^C

== Resuming saved review

If a saved review is found in ~/.spec_check/{name}/review the script will resume with default answers.

$ ./spec_check.py php52

CHECK: 1

      rpmlint must be run on every package

What does Fedora have to say? http://fedoraproject.org/wiki/ParagNemade/CommonRpmlintErrors

Does this look good (Y/n/skip) [pass]:

CHECK: 2

      The package must be named according to the Package Naming 
      Guidelines

What does Fedora have to say? http://fedoraproject.org/wiki/Packaging/NamingGuidelines

Does this look good (Y/n/skip) [fail]:

== Printing Results of Saved Review

$ ./spec_check.py php52 --results FAILED MUST HAVE's:

[ fail ] MUST The package must be named according to the Package Naming Guidelines

http://fedoraproject.org/wiki/Packaging/NamingGuidelines

PASSED MUST HAVE's:

[ pass ] MUST rpmlint must be run on every package

http://fedoraproject.org/wiki/ParagNemade/CommonRpmlintErrors

== Deleting Saved Answers

$ ./spec_check.py php52 --delete php52's saved answers removed

You will be notified if a saved file does not exisit

$ ./spec_check.py php52 --delete There does not appear to be saved answers for php52