def main(self, name, metadata_path): self.setup_logger() self.log.info("Registering new application using metadata at " "%s" % metadata_path) try: with open(metadata_path) as m: meta = m.read() MetadataConfig.from_file(metadata_path) except: self.log.error("Invalid metadata in %s" % metadata_path) return ExitCodes.command_error self.api_connect(self.parent.config.server.login, self.parent.config.server.apikey, self.parent.config.server.url) try: self.api.application.post({'name': name, 'metadata': meta}) except SlumberHttpBaseException as e: self.handle_error(e) return ExitCodes.command_error else: self.log.info("Application '%s' created successfully" % name)
def main(self, name, metadata_path): self.setup_logger() self.log.info("Registering new application using metadata at " "%s" % metadata_path) meta = MetadataConfig.from_file(metadata_path) self.api_connect(self.parent.config.server.login, self.parent.config.server.apikey, self.parent.config.server.url) try: resp = self.api.application.get(name=name) except SlumberHttpBaseException as e: self.handle_error(e) else: if not resp.get('objects'): self.log.error("No such application registered: %s" % name) return ExitCodes.notfound_error app = resp['objects'][0] try: self.api.application(app['id']).patch( {'metadata': meta.dump_string()}) except SlumberHttpBaseException as e: self.handle_error(e) else: self.log.info("Application '%s' metadata updated " "successfully" % name)
def test_builder(builder_config): metadata_path = os.path.join(os.path.dirname(__file__), 'mock_metadata.yml') metadata = MetadataConfig.from_file(metadata_path) builder = Builder(builder_config, metadata) for build_result in builder.build_package(): continue assert build_result.progress == 100 assert build_result.parent is None assert build_result.interpreter_version == '1.8.7' assert build_result.filename assert build_result.checksum assert build_result.bytes > 0