def test_from_xml_gav(self, doc): a = Artifact.from_xml_element(doc) self.assertEqual(a.groupId, "g") self.assertEqual(a.artifactId, "a") self.assertEqual(a.extension, "jar") self.assertEqual(a.classifier, "") self.assertEqual(a.version, "v")
def test_from_xml_whitespace(self, doc): a = Artifact.from_xml_element(doc) self.assertEqual(a.groupId, "g") self.assertEqual(a.artifactId, "a") self.assertEqual(a.extension, "e") self.assertEqual(a.classifier, "c") self.assertEqual(a.version, "v")
def compiled(self, project_dir, spec, sack): if(project_dir / ".xmvn-builddep").is_file(): try: et = etree.parse(str(project_dir / ".xmvn-builddep")).getroot() deps = et.findall('./dependency') for dep in deps: art = Artifact.from_xml_element(dep) spec.BuildRequires.add(art.get_rpm_str(art.version)) except (ArtifactValidationException, ArtifactFormatException) as e: logging.warning("Exception during maven dependency generation" "{e}: Provided artifact strings were invalid." .format(e=e)) return
def compiled(self, project_dir, spec, sack): """ After generation of dependencies (build) parses builddep file and creates Maven project build dependencies """ if (project_dir / ".xmvn-builddep").is_file(): try: et = etree.parse(str(project_dir / ".xmvn-builddep")).getroot() deps = et.findall('./dependency') for dep in deps: art = Artifact.from_xml_element(dep) if sack.query().filter( provides=art.get_rpm_str(art.version)): spec.BuildRequires.add(art.get_rpm_str(art.version)) except (ArtifactValidationException, ArtifactFormatException) as e: logging.warning( "Exception during maven dependency generation" "{e}: Provided artifact strings were invalid.".format(e=e)) return
def test_from_xml_noa(self, doc): Artifact.from_xml_element(doc)
class SaneParser(optparse.OptionParser): def format_epilog(self, formatter): return self.epilog usage = "usage: %prog [options] <builddep file>" epilog = """ %prog generates RPM requires from builddep file generated by XMvn during package build """ if __name__ == "__main__": parser = SaneParser(usage=usage, epilog=epilog) (options, args) = parser.parse_args() if len(args) != 1: parser.error("Exactly 1 argument is required") try: et = etree.parse(args[0]).getroot() deps = et.findall('./dependency') for dep in deps: art = Artifact.from_xml_element(dep) print(art.get_rpm_str(compat_ver=art.version)) except (ArtifactValidationException, ArtifactFormatException) as e: parser.error("{e}: Provided artifact strings were invalid. " "Please see help and check your arguments".format(e=e)) sys.exit(1) except JavaPackagesToolsException as e: sys.exit(e)
class SaneParser(optparse.OptionParser): def format_epilog(self, formatter): return self.epilog usage = "usage: %prog [options] <builddep file>" epilog = """ %prog generates RPM requires from builddep file generated by XMvn during package build """ if __name__ == "__main__": parser = SaneParser(usage=usage, epilog=epilog) sys.argv = args_to_unicode(sys.argv) (options, args) = parser.parse_args() if len(args) != 1: parser.error("Exactly 1 argument is required") try: et = etree.parse(args[0]).getroot() deps = et.findall('./dependency') for dep in deps: art = Artifact.from_xml_element(dep) print(art.get_rpm_str(compat_ver=art.version)) except (ArtifactValidationException, ArtifactFormatException) as e: parser.error("{e}: Provided artifact strings were invalid. " "Please see help and check your arguments".format(e=e)) sys.exit(1) except JavaPackagesToolsException as e: sys.exit(e)