def inspect_artifact(uuid): try: metadata = Artifact.peek(ARTIFACTS[uuid]) except Exception: abort(404) return jsonify({'uuid': metadata.uuid, 'type': metadata.type})
def test_peek(self): artifact = Artifact.import_data(FourInts, [0, 0, 42, 1000]) fp = os.path.join(self.test_dir.name, 'artifact.qza') artifact.save(fp) metadata = Artifact.peek(fp) self.assertIsInstance(metadata, ResultMetadata) self.assertEqual(metadata.type, 'FourInts') self.assertEqual(metadata.uuid, str(artifact.uuid)) self.assertEqual(metadata.format, 'FourIntsDirectoryFormat')
def get_artifacts(): global ARTIFACTS ARTIFACTS = {} path = os.getcwd() artifact_paths = list(glob.glob(os.path.join(path, '*.qza'))) artifacts = [] for artifact_path in artifact_paths: try: metadata = Artifact.peek(artifact_path) name, _ = os.path.splitext(os.path.basename(artifact_path)) artifacts.append( _result_record(metadata, name, '.inspect_artifact')) ARTIFACTS[metadata.uuid] = artifact_path except Exception: pass # TODO: do better things when this happens return jsonify({'artifacts': artifacts})