diff options
author | Joseph Hunkeler <jhunkeler@gmail.com> | 2015-06-25 20:05:53 -0400 |
---|---|---|
committer | Joseph Hunkeler <jhunkeler@gmail.com> | 2015-06-25 20:05:53 -0400 |
commit | 7a6e2eb89669034fa1398c2745ad18d86a78a03a (patch) | |
tree | a666e009dd8abb246d8378f6d6469c7abbcddd6f /cbc | |
parent | 574634487927a156d9f245bb9eab6c3b00af65ed (diff) | |
download | cbc-7a6e2eb89669034fa1398c2745ad18d86a78a03a.tar.gz |
* Incorporate script generation. *Replace manual requirements conversion with an automatic method.
Diffstat (limited to 'cbc')
-rw-r--r-- | cbc/meta.py | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/cbc/meta.py b/cbc/meta.py index def9b1e..f7065c8 100644 --- a/cbc/meta.py +++ b/cbc/meta.py @@ -14,6 +14,7 @@ from .exceptions import MetaDataError class MetaData(object):
def __init__(self, filename, env):
+ filename = os.path.abspath(filename)
if not os.path.exists(filename):
raise OSError('"{0}" does not exist.'.format(filename));
@@ -39,9 +40,10 @@ class MetaData(object): #if not self.local['requirements']['build']:
# raise MetaDataError('Incomplete or missing "requirements" section: self.local[\'requirements\'] ', self.local['requirements']['build'])
-
- self.local['requirements']['build'] = self.config.getlist('requirements', 'build')
- self.local['requirements']['run'] = self.config.getlist('requirements', 'run')
+
+ # Convert requirements to lists
+ for section in self.local['requirements'].keys():
+ self.local['requirements'][section] = self.config.getlist('requirements', section)
self.local_metadata = {}
for keyword in self.keywords:
@@ -52,7 +54,16 @@ class MetaData(object): self.conda_metadata = self.scrub(self.local, self.keywords)
def run(self):
- self.conda_write_meta()
+ self.render_scripts()
+
+ def render_scripts(self):
+ for maskkey, maskval in self.env.config['script'].items():
+ for metakey, metaval in self.compile().items():
+ if metakey in maskkey:
+ with open(maskval, 'w+') as metafile:
+ print("Writing: {0}".format(maskval))
+ metafile.write(metaval)
+
def compile(self):
compiled = {}
|