From: Mathieu Dubois-Briand Date: Thu, 8 Jan 2026 14:45:42 +0000 (+0100) Subject: oeqa/gitarchive: Fix git push URL parameter X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=024f08629feeec8198d1e489633e475959754cfe;p=thirdparty%2Fopenembedded%2Fopenembedded-core.git oeqa/gitarchive: Fix git push URL parameter The gitarchive() function takes a `push` parameter than can be either a boolean or a string. But this parameter is then passed to expand_tag_strings(), which clearly expect it to be a string if it is defined. Split this in two arguments: a `push` boolean value and a `push_remote` optional string. Signed-off-by: Mathieu Dubois-Briand Signed-off-by: Richard Purdie --- diff --git a/meta/lib/oeqa/selftest/cases/gitarchivetests.py b/meta/lib/oeqa/selftest/cases/gitarchivetests.py index 71382089c1..dcf0eb3be5 100644 --- a/meta/lib/oeqa/selftest/cases/gitarchivetests.py +++ b/meta/lib/oeqa/selftest/cases/gitarchivetests.py @@ -74,7 +74,7 @@ class GitArchiveTests(OESelftestTestCase): "Results of {branch}:{commit}", "branch: {branch}\ncommit: {commit}", "{branch}", False, "{branch}/{commit_count}-g{commit}/{tag_number}", 'Test run #{tag_number} of {branch}:{commit}', '', - [], [], False, keywords, logger) + [], [], False, None, keywords, logger) self.assertTrue(tag_exists(git_obj, target_tag), msg=f"Tag {target_tag} has not been created") delete_fake_repository(path) @@ -88,7 +88,7 @@ class GitArchiveTests(OESelftestTestCase): "Results of {branch}:{commit}", "branch: {branch}\ncommit: {commit}", "{branch}", False, "{branch}/{commit_count}-g{commit}/{tag_number}", 'Test run #{tag_number} of {branch}:{commit}', '', - [], [], False, keywords, logger) + [], [], False, None, keywords, logger) self.assertTrue(tag_exists(git_obj, second_tag), msg=f"Second tag {second_tag} has not been created") delete_fake_repository(path) diff --git a/meta/lib/oeqa/utils/gitarchive.py b/meta/lib/oeqa/utils/gitarchive.py index 7e1d505748..6ec17d3695 100644 --- a/meta/lib/oeqa/utils/gitarchive.py +++ b/meta/lib/oeqa/utils/gitarchive.py @@ -162,7 +162,7 @@ def expand_tag_strings(repo, name_pattern, msg_subj_pattern, msg_body_pattern, msg_body = format_str(msg_body_pattern, keyws) return tag_name, msg_subj + '\n\n' + msg_body -def gitarchive(data_dir, git_dir, no_create, bare, commit_msg_subject, commit_msg_body, branch_name, no_tag, tagname, tag_msg_subject, tag_msg_body, exclude, notes, push, keywords, log): +def gitarchive(data_dir, git_dir, no_create, bare, commit_msg_subject, commit_msg_body, branch_name, no_tag, tagname, tag_msg_subject, tag_msg_body, exclude, notes, push, push_remote, keywords, log): if not os.path.isdir(data_dir): raise ArchiveError("Not a directory: {}".format(data_dir)) @@ -179,7 +179,7 @@ def gitarchive(data_dir, git_dir, no_create, bare, commit_msg_subject, commit_ms tag_name, tag_msg = expand_tag_strings(data_repo, tagname, tag_msg_subject, tag_msg_body, - push, log, keywords) + push_remote, log, keywords) # Commit data commit = git_commit_data(data_repo, data_dir, branch_name, @@ -195,10 +195,10 @@ def gitarchive(data_dir, git_dir, no_create, bare, commit_msg_subject, commit_ms cmd = ['push', '--tags'] # If no remote is given we push with the default settings from # gitconfig - if push is not True: + if push_remote is not None: notes_refs = ['refs/notes/' + ref.format(branch_name=branch_name) for ref, _ in notes] - cmd.extend([push, branch_name] + notes_refs) + cmd.extend([push_remote, branch_name] + notes_refs) log.info("Pushing data to remote") data_repo.run_cmd(cmd) diff --git a/scripts/lib/resulttool/store.py b/scripts/lib/resulttool/store.py index b143334e69..f3caafaff8 100644 --- a/scripts/lib/resulttool/store.py +++ b/scripts/lib/resulttool/store.py @@ -82,7 +82,7 @@ def store(args, logger): "Results of {branch}:{commit}", "branch: {branch}\ncommit: {commit}", "{branch}", False, "{branch}/{commit_count}-g{commit}/{tag_number}", 'Test run #{tag_number} of {branch}:{commit}', '', - excludes, [], False, keywords, logger) + excludes, [], False, None, keywords, logger) if args.logfile_archive: logdir = args.logfile_archive + "/" + tagname