diff options
author | Lars Wirzenius <liw@liw.fi> | 2011-07-27 16:15:17 +0100 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2011-07-27 16:15:17 +0100 |
commit | e63ec5a283d2f49090bc3f14be82182d0750e9ab (patch) | |
tree | 1e4e2d15b7bdebc5d4184dc1d9e666b9994388a0 | |
parent | 7e2ed9ea1a4c538bc443a59dd1af065594b9ca6e (diff) | |
download | liw-automation-e63ec5a283d2f49090bc3f14be82182d0750e9ab.tar.gz |
Set defaults to be more useful for other people.
-rwxr-xr-x | scripts/pbuilder-create | 50 |
1 files changed, 20 insertions, 30 deletions
diff --git a/scripts/pbuilder-create b/scripts/pbuilder-create index 4ef5389..fb46c8c 100755 --- a/scripts/pbuilder-create +++ b/scripts/pbuilder-create @@ -25,26 +25,27 @@ import time class PbuilderCreate(cliapp.Application): def add_settings(self): - self.settings.string(['mirror', 'm'], 'use URL for mirror (%default)', - metavar='URL', default='http://mirror/debian') - self.settings.string_list(['release', 'r'], + self.settings.string(['mirror', 'm'], + 'use URL for mirror (%default)', + metavar='URL', + default='http://cdn.debian.net/debian') + self.settings.string_list(['release', 'r'], 'build tgz for RELEASE (%default)', metavar='RELEASE', - default=['squeeze', 'sid']) - self.settings.string_list(['arch', 'a'], + default=['unstable']) + arch = self.runcmd(['dpkg', '--print-architecture']).strip() + self.settings.string_list(['arch', 'a'], 'build tgz for ARCH (%default)', - metavar='ARCH', default=['amd64', 'i386']) - self.settings.string(['othermirror', 'o'], - 'also build tgz with pbuilder --othermirror, ' - 'set to empty to avoid this ' - '(%default)', - default='deb http://code.liw.fi/debian squeeze main') - self.settings.integer(['max-age'], + metavar='ARCH', default=arch) + self.settings.string_list(['othermirror', 'o'], + 'also build tgz with pbuilder ' + '--othermirror, set to empty to avoid ' + 'this (%default)') + self.settings.integer(['max-age'], 'trigger tgz update if older than N days ' '(%default)', metavar='N', default=1) - self.settings.boolean(['no-act', 'dry-run'], - 'just pretend') + self.settings.boolean(['no-act', 'dry-run'], 'just pretend') self.settings.boolean(['verbose'], 'print commands before executing') self.settings.string(['directory', 'd'], 'where to put tgz files (%default)', @@ -53,7 +54,7 @@ class PbuilderCreate(cliapp.Application): def process_args(self, args): for release in self.settings['release']: for arch in self.settings['arch']: - self.pbuilder(release, arch, 'debian', None) + self.pbuilder(release, arch, 'pristine', None) if self.settings['othermirror']: self.pbuilder(release, arch, 'custom', self.settings['othermirror']) @@ -77,6 +78,10 @@ class PbuilderCreate(cliapp.Application): '--logfile', tgz + '.log'] if othermirror: argv += ['--othermirror', othermirror] + if self.settings['verbose']: + print ' '. join(argv) + if self.settings['no-act']: + return self.runcmd(argv) def need_to_update_tgz(self, tgz): @@ -89,21 +94,6 @@ class PbuilderCreate(cliapp.Application): basename = '%s-%s-%s.tgz' % (release, arch, suffix) return os.path.join(self.settings['directory'], basename) - def runcmd(self, argv, *args, **kwargs): - logging.info('runcmd: %s' % argv) - if self.settings['verbose']: - print ' '. join(argv) - if self.settings['no-act']: - return - devnull = os.open('/dev/null', os.O_WRONLY) - p = subprocess.Popen(argv, stdout=subprocess.PIPE, - stderr=subprocess.STDOUT, *args, **kwargs) - out, err = p.communicate() - os.close(devnull) - if p.returncode: - raise cliapp.AppException('command failed: %s\n%s' % - (' '.join(argv), out)) - if __name__ == '__main__': PbuilderCreate().run() |