Refactor publish_persistent_comment method to include name parameter

This commit is contained in:
mrT23
2024-02-15 08:45:17 +02:00
parent 2f327c26e8
commit d2ad8b1dbd
4 changed files with 12 additions and 12 deletions

View File

@ -160,7 +160,7 @@ class BitbucketProvider(GitProvider):
def get_comment_url(self, comment):
return comment.data['links']['html']['href']
def publish_persistent_comment(self, pr_comment: str, initial_header: str, update_header: bool = True):
def publish_persistent_comment(self, pr_comment: str, initial_header: str, update_header: bool = True, name='review'):
try:
for comment in self.pr.comments():
body = comment.raw
@ -168,15 +168,15 @@ class BitbucketProvider(GitProvider):
latest_commit_url = self.get_latest_commit_url()
comment_url = self.get_comment_url(comment)
if update_header:
updated_header = f"{initial_header}\n\n### (review updated until commit {latest_commit_url})\n"
updated_header = f"{initial_header}\n\n### ({name.capitalize()} updated until commit {latest_commit_url})\n"
pr_comment_updated = pr_comment.replace(initial_header, updated_header)
else:
pr_comment_updated = pr_comment
get_logger().info(f"Persistent mode- updating comment {comment_url} to latest review message")
get_logger().info(f"Persistent mode - updating comment {comment_url} to latest {name} message")
d = {"content": {"raw": pr_comment_updated}}
response = comment._update_data(comment.put(None, data=d))
self.publish_comment(
f"**[Persistent review]({comment_url})** updated to latest commit {latest_commit_url}")
f"**[Persistent {name}]({comment_url})** updated to latest commit {latest_commit_url}")
return
except Exception as e:
get_logger().exception(f"Failed to update persistent review, error: {e}")