aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Hunkeler <jhunkeler@users.noreply.github.com>2018-08-08 23:09:23 -0400
committerGitHub <noreply@github.com>2018-08-08 23:09:23 -0400
commit7a707d56776f41669ebbeb99ae51d1b94d957e0a (patch)
treed87017fd438d62edd6d4241775e2e8895cd61018
parentaad73bb6d561713c1855e9b3731e2e8f39cfd1f5 (diff)
parent4126394b6f9ba9c4c99a815c33eb2d7a027cc216 (diff)
downloadrambo-7a707d56776f41669ebbeb99ae51d1b94d957e0a.tar.gz
Merge pull request #13 from jhunkeler/handle-invalid-payloadHEAD1.0.0b6master
Short circuit rendering data against invalid payload
-rw-r--r--rambo/_version.py2
-rwxr-xr-xrambo/meta.py26
-rw-r--r--setup.py7
3 files changed, 26 insertions, 9 deletions
diff --git a/rambo/_version.py b/rambo/_version.py
index 744d9c7..bd3c1ce 100644
--- a/rambo/_version.py
+++ b/rambo/_version.py
@@ -1 +1 @@
-__version__ = '1.0.0b5'
+__version__ = '1.0.0b6'
diff --git a/rambo/meta.py b/rambo/meta.py
index 7b99386..2124df2 100755
--- a/rambo/meta.py
+++ b/rambo/meta.py
@@ -91,7 +91,13 @@ class Meta(object):
filename_hashing=False) # enables --old-build-string
# conda-build v3.x render() returns a list of tuples:
# [(MetaData, bool, bool)]
- self.metaobj = self.render_payload[0][0]
+ if not self.render_payload:
+ print('Skipping due to empty payload: Marking metadata as invalid')
+ else:
+ self.metaobj = self.render_payload[0][0]
+
+ if self.metaobj is None:
+ return
self.mdata = self.metaobj.meta
self.valid = self.is_valid()
@@ -148,11 +154,16 @@ class Meta(object):
numpy=self.versions['numpy'],
dirty=self.dirty)
if CONDA_BUILD_MAJOR_VERSION == '3':
+ if self.metaobj is None:
+ print('Not rendering canonical name')
+ return
+
output_file_path = conda_build.api.get_output_file_paths(
self.metaobj,
python=self.versions['python'],
numpy=self.versions['numpy'],
dirty=self.dirty)[0]
+
self.canonical_name = os.path.basename(output_file_path)
print('Package canonical name: {}\n\n'.format(
self.canonical_name))
@@ -345,12 +356,13 @@ class MetaSet(object):
versions=self.versions,
channel=self.channel,
dirty=self.dirty)
- if not m.metaobj.skip():
- if m.complete:
- self.metas.append(m)
- self.names.append(m.name)
- else:
- self.incomplete_metas.append(m)
+ if m.valid:
+ if not m.metaobj.skip():
+ if m.complete:
+ self.metas.append(m)
+ self.names.append(m.name)
+ else:
+ self.incomplete_metas.append(m)
def read_recipes(self, directory):
recipe_dirnames = os.listdir(directory)
diff --git a/setup.py b/setup.py
index 5cdc2fe..dc6d937 100644
--- a/setup.py
+++ b/setup.py
@@ -22,5 +22,10 @@ setup(
],
packages=find_packages(),
package_data={'': ['README.md', 'LICENSE.txt']},
- entry_points={'console_scripts': ['rambo=rambo.__main__:main'], }
+ entry_points={'console_scripts': ['rambo=rambo.__main__:main'],},
+ install_requires=[
+ 'jinja2',
+ 'pyyaml',
+ 'six'
+ ],
)