Esempio n. 1
0
def getMacros(spec):

    err = ""
    macros = {}
    obj = SpecParser(spec)
    if not obj.parse():
        err = obj.getError()
        return err, {}, -1

    macros["project"] = obj.getMacro("project")
    macros["repo"] = obj.getMacro("repo")
    macros["provider"] = obj.getMacro("provider")
    macros["commit"] = obj.getMacro("commit")
    last_bug_id = obj.getBugIdFromLastChangelog()

    if macros["project"] == "":
        err = "Unable to detect project macro"
        return err, {}, -1

    if macros["repo"] == "":
        err = "Unable to detect repo macro"
        return err, {}, -1

    if macros["provider"] == "":
        err = "unable to detect provider macro"
        return err, {}, -1

    if macros["commit"] == "":
        err = "unable to detect commit macro"
        return err, {}, -1

    macros["ip"] = obj.getMacro("provider_prefix")

    if macros["ip"] == "":
        macros["ip"] = obj.getMacro("import_path")

    if macros["ip"] == "":
        err = "Unable to detect provider URL"
        return err, {}, -1

    return "", macros, last_bug_id
Esempio n. 2
0
            branches = list(set(branches) & set(Config().getUpdates()))

        mc.updateBranches(branches)

    if options.bbo or options.waitbbo or options.wait:
        # if no build specified, detect it from the current directory
        if len(args) < 1:
            fd = FilesDetector()
            fd.detect()
            specfile = fd.getSpecfile()
            if specfile == "":
                sys.stderr.write("Missing build name\n")
                exit(1)

            fp_obj.printInfo("Spec file detected: %s" % specfile)
            sp_obj = SpecParser(specfile)
            if not sp_obj.parse():
                sys.stderr.write(sp_obj.getError())
                exit(1)

            name = sp_obj.getTag("name")
            version = sp_obj.getTag("version")
            release = ".".join(sp_obj.getTag("release").split('.')[:-1])
            # N-V-R without tag (e.g. no fc22)
            build = "%s-%s-%s" % (name, version, release)
            fp_obj.printInfo("Build name constructed: %s" % build)
        else:
            build = args[0]

        if options.branches == "" and options.ebranches == "":
            branches = Config().getOverrides()
Esempio n. 3
0
    options, args = parser.parse_args()

    if len(args) != 1:
        print "Synopsis: [--user=USER|-u USER] [--skip-koji] SPEC"
        exit(1)
    specfile = args[0]

    user = options.user
    if user == "":
        user = Config().getFASUsername()

    if not os.path.exists(specfile):
        print "Spec file %s not found" % specfile
        exit(1)

    obj = SpecParser(specfile)
    if not obj.parse():
        print obj.getError()
        exit(1)

    provider = obj.getMacro("provider")
    repo = obj.getMacro("repo")
    commit = obj.getMacro("commit")
    summary = obj.getTag("summary")
    name = obj.getTag("name")

    print "Parsing %s file" % specfile
    print "  Provides: %s" % provider
    print "  Repo: %s" % repo
    print "  Commit: %s" % commit
    print "  Name: %s" % name
Esempio n. 4
0
def getMacros(spec, repoprefix):

	err = ""
	macros = {}
	obj = SpecParser(spec)
	if not obj.parse():
		err = obj.getError()
		return err, {}, -1

	if repoprefix == "":
		macros["project"] = obj.getMacro("project")
		macros["repo"] = obj.getMacro("repo")
		macros["provider"] = obj.getMacro("provider")
		macros["commit"] = obj.getMacro("commit")
		macros["ip"] = obj.getMacro("provider_prefix")
		if macros["ip"] == "":
			macros["ip"] = obj.getMacro("import_path")

	else:
		macros["project"] = obj.getMacro("%s_project" % repoprefix)
		macros["repo"] = obj.getMacro("%s_repo" % repoprefix)
		macros["provider"] = obj.getMacro("%s_provider" % repoprefix)
		macros["commit"] = obj.getMacro("%s_commit" % repoprefix)
		macros["ip"] = obj.getMacro("%s_provider_prefix" % repoprefix)
		if macros["ip"] == "":
			macros["ip"] = obj.getMacro("%s_import_path" % repoprefix)

	last_bug_id = obj.getBugIdFromLastChangelog()

	if macros["project"] == "":
		err = "Unable to detect project macro"
		return err, {}, -1

	if macros["repo"] == "":
		err = "Unable to detect repo macro"
		return err, {}, -1

	if macros["provider"] == "":
		err = "unable to detect provider macro"
		return err, {}, -1

	if macros["commit"] == "":
		err = "unable to detect commit macro"
		return err, {}, -1

	if macros["ip"] == "":
		err = "Unable to detect provider URL"
		return err, {}, -1

	return "", macros, last_bug_id
Esempio n. 5
0
		if len(specfiles) != 1:
			print "Synopsis: [--user=USER|-u USER] [--skip-koji] SPEC"
			exit(1)
		specfile = specfiles[0]
	else:
		specfile = args[0]

	user = options.user
	if user == "":
		user = Config().getFASUsername()

	if not os.path.exists(specfile):
		print "Spec file %s not found" % specfile
		exit(1)

	obj = SpecParser(specfile)
	if not obj.parse():
		print obj.getError()
		exit(1)

	provider = obj.getMacro("provider")
	repo = obj.getMacro("repo")
	if provider == "google":
		commit = obj.getMacro("rev")
	else:
		commit = obj.getMacro("commit")
	summary = obj.getTag("summary")
	name = obj.getTag("name")

	print "Parsing %s file" % specfile
	print "  Provider: %s" % provider
Esempio n. 6
0
def getMacros(spec):

    err = ""
    macros = {}
    obj = SpecParser(spec)
    if not obj.parse():
        err = obj.getError()
        return err, {}, -1

    macros["project"] = obj.getMacro("project")
    macros["repo"] = obj.getMacro("repo")
    macros["provider"] = obj.getMacro("provider")
    macros["commit"] = obj.getMacro("commit")
    last_bug_id = obj.getBugIdFromLastChangelog()

    if macros["project"] == "":
        err = "Unable to detect project macro"
        return err, {}, -1

    if macros["repo"] == "":
        err = "Unable to detect repo macro"
        return err, {}, -1

    if macros["provider"] == "":
        err = "unable to detect provider macro"
        return err, {}, -1

    if macros["commit"] == "":
        err = "unable to detect commit macro"
        return err, {}, -1

    macros["ip"] = obj.getMacro("import_path")
    if macros["ip"] == "":
        macros["provider_tld"] = obj.getMacro("provider_tld")

        if macros["provider_tld"] == "":
            err = "Unable to detect provider_tld macro"
            return err, {}, -1

        macros["ip"] = "%s.%s/%s/%s" % (macros["provider"],
                                        macros["provider_tld"],
                                        macros["project"], macros["repo"])

    return "", macros, last_bug_id
Esempio n. 7
0
			branches = list(set(branches) & set(Config().getUpdates()))

		mc.updateBranches(branches)

	if options.bbo or options.waitbbo or options.wait:
		# if no build specified, detect it from the current directory
		if len(args) < 1:
			fd = FilesDetector()
			fd.detect()
			specfile = fd.getSpecfile()
			if specfile == "":
				sys.stderr.write("Missing build name\n")
				exit(1)

			fp_obj.printInfo("Spec file detected: %s" % specfile)
			sp_obj = SpecParser(specfile)
			if not sp_obj.parse():
				sys.stderr.write(sp_obj.getError())
				exit(1)

			name = sp_obj.getTag("name")
			version = sp_obj.getTag("version")
			release = ".".join( sp_obj.getTag("release").split('.')[:-1])
			# N-V-R without tag (e.g. no fc22)
			build = "%s-%s-%s" % (name, version, release)
			fp_obj.printInfo("Build name constructed: %s" % build)
		else:
			build = args[0]

		if options.branches == "" and options.ebranches == "":
			branches = Config().getOverrides()