Example #1
0
def get_external_deps(conf_obj, archive=False):

    if archive: external_url_path = "../../../../external_packages"
    else: external_url_path = "../../external_packages"

    return_text = ""

    external_rpms = glob.glob("../external_packages/%s/*.rpm" % conf_obj.name)
    external_src_rpms = glob.glob("../external_packages/%s/*.src.rpm" %
                                  conf_obj.name)

    # For the RPMS
    if external_rpms:
        return_text += "<h3>External Dependencies</h3>\n"
        return_text += "<ul>\n"
        for i in external_rpms:

            i = os.path.basename(i)

            if re.compile("\.src\.rpm").search(i):
                continue

            (NAME, DESC) = rpm_utils.rpm_query(['NAME', 'SUMMARY'],
                                               '../external_packages/%s/%s' %
                                               (conf_obj.name, i))
            return_text += "<li><a href='%s/%s/%s'>%s</a> -- %s</li>\n" % (
                external_url_path, conf_obj.name, i, NAME, DESC)
        return_text += "</ul>\n"

    # For the source RPMS
    if external_src_rpms:
        return_text += "<p>Source RPMS: \n"
        for i in external_src_rpms:

            i = os.path.basename(i)

            NAME = rpm_utils.rpm_query(
                'NAME', '../external_packages/%s/%s' % (conf_obj.name, i))
            return_text += "<a href='%s/%s/%s'>%s</a> \n" % (
                external_url_path, conf_obj.name, i, NAME)

        return_text += "</p>\n"

    return return_text
Example #2
0
def get_external_deps(conf_obj, archive=False):

	if archive:	external_url_path = "../../../../external_packages"
	else:		external_url_path = "../../external_packages"

	return_text = ""

	external_rpms = glob.glob("../external_packages/%s/*.rpm" % conf_obj.name)
	external_src_rpms = glob.glob("../external_packages/%s/*.src.rpm" % conf_obj.name)
	
	# For the RPMS
	if external_rpms:
		return_text += "<h3>External Dependencies</h3>\n"
		return_text += "<ul>\n"
		for i in external_rpms:

			i = os.path.basename(i)

			if re.compile("\.src\.rpm").search(i):
				continue

			(NAME, DESC) = rpm_utils.rpm_query(['NAME', 'SUMMARY'], '../external_packages/%s/%s' % (conf_obj.name, i) )
			return_text += "<li><a href='%s/%s/%s'>%s</a> -- %s</li>\n" % (external_url_path, conf_obj.name, i, NAME, DESC)
		return_text += "</ul>\n"

	# For the source RPMS
	if external_src_rpms:
		return_text += "<p>Source RPMS: \n"
		for i in external_src_rpms:

			i = os.path.basename(i)

			NAME = rpm_utils.rpm_query('NAME', '../external_packages/%s/%s' % (conf_obj.name, i) )
			return_text += "<a href='%s/%s/%s'>%s</a> \n" % (external_url_path, conf_obj.name, i, NAME)

		return_text += "</p>\n"

	return return_text
Example #3
0
            # If there are more than one rpms to be in the zip file
            if len(RPMS) > 1 and not skip_zip:
                print "Creating zip: " + zipname
                # rpms are compressed anyways -- doing any compression is a waste of time
                os.system("zip -j -0 %s %s" % (zip_filename, " ".join(RPMS)))

                out.write(
                    "<p><a href='%s.zip'><img src='%s/zip-icon.png' />All of these RPMs in a ZIP file</a></p>\n"
                    % (zipname, webroot_path))

            out.write("<ul>\n")
            arc_out.write("<ul>\n")

            for i in RPMS:
                (NAME, DESC) = rpm_utils.rpm_query(['NAME', 'SUMMARY'], i)
                out.write("<li><a href='../../%s/%s'>%s</a> -- %s</li>\n" %
                          (package_src_url, i, NAME, DESC))
                arc_out.write(
                    "<li><a href='../../../../%s/%s'>%s</a> -- %s</li>\n" %
                    (package_src_url, i, NAME, DESC))

            out.write("</ul>\n")
            arc_out.write("</ul>\n")

            # Print links to spec files
            if len(SPECS) == 0:
                continue

            out.write("<p>RPM Spec files: \n")
            arc_out.write("<p>RPM Spec files: \n")
Example #4
0
				os.unlink(zip_filename)

			# If there are more than one rpms to be in the zip file
			if len(RPMS) > 1 and not skip_zip:
				print "Creating zip: " + zipname
				# rpms are compressed anyways -- doing any compression is a waste of time
				os.system("zip -j -0 %s %s" % (zip_filename, " ".join(RPMS)) )
				
				out.write("<p><a href='%s.zip'><img src='%s/zip-icon.png' />All of these RPMs in a ZIP file</a></p>\n" % (zipname, webroot_path))


			out.write("<ul>\n")
			arc_out.write("<ul>\n")

			for i in RPMS:
				(NAME, DESC) = rpm_utils.rpm_query(['NAME', 'SUMMARY'], i)
				out.write("<li><a href='../../%s/%s'>%s</a> -- %s</li>\n" % (package_src_url, i, NAME, DESC) )
				arc_out.write("<li><a href='../../../../%s/%s'>%s</a> -- %s</li>\n" % (package_src_url, i, NAME, DESC) )
			
			out.write("</ul>\n")
			arc_out.write("</ul>\n")

			# Print links to spec files
			if len(SPECS) == 0:
				continue

			out.write("<p>RPM Spec files: \n")
			arc_out.write("<p>RPM Spec files: \n")
			for i in SPECS:
				NAME = os.path.basename(i)
				out.write("<a href='../../%s/%s'>%s</a> \n" % (package_src_url, i, NAME) )
Example #5
0
		for pack in packages_in_repo:
			pack_obj = packaging.package(distro_obj, os.path.basename(pack), bundle_obj=bundle_conf, package_basepath=package_src_dir)

			# Only if package is valid on this distro
			if pack_obj.valid_use_platform(distro_obj.name):
				rpms += pack_obj.get_files(fail_on_missing=False)

		# Get external rpms
		for rpm_file in glob.glob(os.path.join(package_src_dir, '..',  'external_packages', distro_obj.name, "*.rpm")):
			# Skip source rpms
			if not re.compile('\.src\.rpm').search(rpm_file):
				rpms.append(os.path.normpath(rpm_file))

		# Create hard links for all rpms
		for file in rpms:
			arch_dir = distro_obj.name + os.sep + rpm_utils.rpm_query('ARCH', file)
			if not os.path.exists(arch_dir):  distutils.dir_util.mkpath(arch_dir)

			# Hrm... seems the shutil.rmtree didn't work... ?
			link = arch_dir + os.sep + os.path.basename(file)
			if not os.path.exists(link):
				os.link(file, link)


		# Start creating repositories
		if utils.get_dict_var('RPM_MD_REPO', distro_obj.info):
			if os.system("createrepo " + distro_obj.name):
				print "Error. (Is createrepo installed?)"
				sys.exit(1)

			if utils.get_dict_var('YUM_INSTALL', distro_obj.info):
Example #6
0
            # Only if package is valid on this distro
            if pack_obj.valid_use_platform(distro_obj.name):
                rpms += pack_obj.get_files(fail_on_missing=False)

        # Get external rpms
        for rpm_file in glob.glob(
                os.path.join(package_src_dir, '..', 'external_packages',
                             distro_obj.name, "*.rpm")):
            # Skip source rpms
            if not re.compile('\.src\.rpm').search(rpm_file):
                rpms.append(os.path.normpath(rpm_file))

        # Create hard links for all rpms
        for file in rpms:
            arch_dir = distro_obj.name + os.sep + rpm_utils.rpm_query(
                'ARCH', file)
            if not os.path.exists(arch_dir):
                distutils.dir_util.mkpath(arch_dir)

            # Hrm... seems the shutil.rmtree didn't work... ?
            link = arch_dir + os.sep + os.path.basename(file)
            if not os.path.exists(link):
                os.link(file, link)

        # Start creating repositories
        if utils.get_dict_var('RPM_MD_REPO', distro_obj.info):
            if os.system("createrepo " + distro_obj.name):
                print "Error. (Is createrepo installed?)"
                sys.exit(1)

            if utils.get_dict_var('YUM_INSTALL', distro_obj.info):