From fbc2b8237a46d417f18be8938a1653945e189c54 Mon Sep 17 00:00:00 2001 From: Daniel Firth Date: Fri, 20 Dec 2013 15:47:10 +0000 Subject: Replaces Tempdir with fs.tempfs.TempFS --- morphlib/plugins/artifact_inspection_plugin.py | 31 ++++++++++++++------------ 1 file changed, 17 insertions(+), 14 deletions(-) (limited to 'morphlib/plugins/artifact_inspection_plugin.py') diff --git a/morphlib/plugins/artifact_inspection_plugin.py b/morphlib/plugins/artifact_inspection_plugin.py index 9181d488..6eeece77 100644 --- a/morphlib/plugins/artifact_inspection_plugin.py +++ b/morphlib/plugins/artifact_inspection_plugin.py @@ -19,6 +19,9 @@ import glob import json import os import re +import contextlib + +import fs.tempfs import morphlib @@ -109,25 +112,25 @@ class AutotoolsVersionGuesser(ProjectVersionGuesser): return None def _check_autoconf_package_version(self, repo, ref, filename, data): - tempdir = morphlib.tempdir.Tempdir(self.app.settings['tempdir']) - with open(tempdir.join(filename), 'w') as f: - f.write(data) - exit_code, output, errors = self.app.runcmd_unchecked( + with contextlib.closing(fs.tempfs.TempFS( + temp_dir=self.app.settings['tempdir'])) as tempdir: + with open(tempdir.getsyspath(filename), 'w') as f: + f.write(data) + exit_code, output, errors = self.app.runcmd_unchecked( ['autoconf', filename], ['grep', '^PACKAGE_VERSION='], ['cut', '-d=', '-f2'], ['sed', "s/'//g"], - cwd=tempdir.dirname) - tempdir.remove() - version = None - if output: - output = output.strip() - if output and output[0].isdigit(): - version = output - if exit_code != 0: - self.app.status( + cwd=tempdir.root_path) + version = None + if output: + output = output.strip() + if output and output[0].isdigit(): + version = output + if exit_code != 0: + self.app.status( msg='%(repo)s: Failed to detect version from ' - '%(ref)s:%(filename)s', + '%(ref)s:%(filename)s', repo=repo, ref=ref, filename=filename, chatty=True) return version -- cgit v1.2.1