diff options
author | Pedro Alvarez <pedro.alvarez@codethink.co.uk> | 2015-11-02 17:33:45 +0000 |
---|---|---|
committer | Pedro Alvarez <pedro.alvarez@codethink.co.uk> | 2015-11-02 17:33:45 +0000 |
commit | 398a7fa93a05b44adba1d7557b1ad4a24f466369 (patch) | |
tree | 0d29311eecdb4dd8dade15b88884b991fec0f82e /extensions/strip-gplv3.configure | |
parent | 8a575a776e7476cb3beb22bb6b71e269c6b55580 (diff) | |
parent | 6cb63998328664c5c234b5a5da7ea3a9026e4d2a (diff) | |
download | infrastructure-398a7fa93a05b44adba1d7557b1ad4a24f466369.tar.gz |
Merge tag 'baserock-15.34'
Conflicts:
README
clusters/release.morph
scripts/release-build
Change-Id: If289bcb168478405400c66717d7f33dcdde63cb6
Diffstat (limited to 'extensions/strip-gplv3.configure')
-rwxr-xr-x | extensions/strip-gplv3.configure | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/extensions/strip-gplv3.configure b/extensions/strip-gplv3.configure index c08061ad..bf28223d 100755 --- a/extensions/strip-gplv3.configure +++ b/extensions/strip-gplv3.configure @@ -21,12 +21,15 @@ to find the files created by that chunk, then remove them. ''' -import cliapp -import re -import os import json +import os +import re +import subprocess +import sys + +import writeexts -class StripGPLv3ConfigureExtension(cliapp.Application): +class StripGPLv3ConfigureExtension(writeexts.Extension): gplv3_chunks = [ ['autoconf', ''], ['automake', ''], @@ -57,7 +60,8 @@ class StripGPLv3ConfigureExtension(cliapp.Application): for chunk in self.gplv3_chunks: regex = os.path.join(meta_dir, "%s-[^-]\+\.meta" % chunk[0]) - artifacts = self.runcmd(['find', meta_dir, '-regex', regex]) + artifacts = subprocess.check_output(['busybox', 'find', meta_dir, + '-regex', regex]) for artifact in artifacts.split(): self.remove_chunk(target_root, artifact, chunk[1]) @@ -72,8 +76,8 @@ class StripGPLv3ConfigureExtension(cliapp.Application): chunk_meta_data = json.load(f) if not 'contents' in chunk_meta_data: - raise cliapp.AppError('Chunk %s does not have a "contents" list' - % chunk) + raise writeexts.ExtensionError( + 'Chunk %s does not have a "contents" list' % chunk) updated_contents = [] for content_entry in reversed(chunk_meta_data['contents']): pat = re.compile(pattern) @@ -85,8 +89,8 @@ class StripGPLv3ConfigureExtension(cliapp.Application): def remove_content_entry(self, target_root, content_entry): entry_path = os.path.join(target_root, './' + content_entry) if not entry_path.startswith(target_root): - raise cliapp.AppException('%s is not in %s' - % (entry_path, target_root)) + raise writeexts.ExtensionError( + '%s is not in %s' % (entry_path, target_root)) if os.path.exists(entry_path): if os.path.islink(entry_path): os.unlink(entry_path) @@ -96,6 +100,7 @@ class StripGPLv3ConfigureExtension(cliapp.Application): if not os.listdir(entry_path): os.rmdir(entry_path) else: - raise cliapp.AppException('%s is not a link, file or directory' - % entry_path) -StripGPLv3ConfigureExtension().run() + raise writeexts.ExtensionError( + '%s is not a link, file or directory' % entry_path) + +StripGPLv3ConfigureExtension().run(sys.argv[1:]) |