#!/usr/bin/python # Copyright 2011 Lars Wirzenius # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . import cliapp import logging import subprocess __version__ = '0.0' class Unperish(cliapp.Application): def cmd_version(self, args): self.output.write('%s\n' % self.get_upstream_version()) def get_upstream_version(self): return self.runcmd('python', 'setup.py', '--version').strip() def runcmd(self, *argv, **kwargs): logging.debug('runcmd: %s' % repr(argv)) p = subprocess.Popen(argv, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, **kwargs) out, err = p.communicate('') if p.returncode: raise cliapp.AppException('command failed: %s\n%s' % (argv, err)) return out if __name__ == '__main__': Unperish(version=__version__).run()