diff options
author | Hans Ulrich Niedermann <hun@n-dimensional.de> | 2011-02-05 01:25:15 +0100 |
---|---|---|
committer | Hans Ulrich Niedermann <hun@n-dimensional.de> | 2011-02-05 01:25:15 +0100 |
commit | 25e7ca228a2bdde4cd94731a3113f48c02418631 (patch) | |
tree | 7531ae45a1ed6a6c5822912790edd177d41df2ca | |
parent | 0f49c4e1336138ee8909bc76ad636878d067e60e (diff) | |
parent | 357ae922fa3621b76ca5209524285d310cd869a1 (diff) | |
download | fedora-packager-5/ALL.tar.gz fedora-packager-5/ALL.tar.xz fedora-packager-5/ALL.zip |
Merge branch 'new-command/verify-files' into 5/ALL5/ALL
Conflicts:
src/fedpkg.bash
-rw-r--r-- | src/fedpkg.bash | 2 | ||||
-rwxr-xr-x | src/fedpkg.py | 14 | ||||
-rw-r--r-- | src/pyfedpkg/__init__.py | 13 |
3 files changed, 28 insertions, 1 deletions
diff --git a/src/fedpkg.bash b/src/fedpkg.bash index da37740..134785c 100644 --- a/src/fedpkg.bash +++ b/src/fedpkg.bash @@ -37,7 +37,7 @@ _fedpkg() local options_value="--dist --user --path" local commands="build chain-build ci clean clog clone co commit compile diff gimmespec giturl help \ import initial-merge install lint local mockbuild new new-sources patch prep pull push retire scratch-build sources \ - srpm switch-branch tag tag-request unused-patches update upload verrel" + srpm switch-branch tag tag-request unused-patches update upload verify-files verrel" # parse main options and get command diff --git a/src/fedpkg.py b/src/fedpkg.py index fd16f49..4086562 100755 --- a/src/fedpkg.py +++ b/src/fedpkg.py @@ -500,6 +500,14 @@ def diff(args): log.error('Could not diff: %s' % e) sys.exit(1) +def verify_files(args): + try: + mymodule = pyfedpkg.PackageModule(args.path, args.dist) + return mymodule.verify_files() + except pyfedpkg.FedpkgError, e: + log.error('Could not verify %%files list: %s' % e) + sys.exit(1) + def export(args): # not implimented; not planned log.warning('Not implimented yet, got %s' % args) @@ -1013,6 +1021,12 @@ packages will be built sequentially. help = 'short-circuit compile') parser_compile.set_defaults(command = compile) + # Verify %files list locally + parser_verify_files = subparsers.add_parser('verify-files', + help='Locally verify %%files section', + description="Locally run 'rpmbuild -bl' to verify the spec file's %files sections. This is useful after a successful run of 'fedpkg install' or after a 'fedpkg local' run which failed due to %files list inaccuracies.") + parser_verify_files.set_defaults(command = verify_files) + # export the module; not planned #parser_export = subparsers.add_parser('export', # help = 'Create a clean export') diff --git a/src/pyfedpkg/__init__.py b/src/pyfedpkg/__init__.py index 6b9682e..b32542a 100644 --- a/src/pyfedpkg/__init__.py +++ b/src/pyfedpkg/__init__.py @@ -1328,6 +1328,19 @@ class PackageModule: _run_command(cmd, shell=True) return + def verify_files(self): + """Run rpmbuild -bl on a module to verify the %files section""" + + # Get the sources + sources(self.path) + # setup the rpm command + cmd = ['rpmbuild'] + cmd.extend(self.rpmdefines) + cmd.extend(['-bl', os.path.join(self.path, self.spec)]) + # Run the command + _run_command(cmd, shell=True) + return + def getver(self): """Return the version-release of a package module.""" |