roundabout,
created on Wednesday, 31 July 2024, 08:56:53 (1722416213),
received on Wednesday, 31 July 2024, 09:04:03 (1722416643)
Author identity: vlad <vlad.muntoiu@gmail.com>
56ee061de83b9b0f33d539258d3a3a008a8a45b6
app.py
@@ -1,4 +1,4 @@
__version__ = "0.5.1"__version__ = "0.5.2"import os import shutil
@@ -1771,7 +1771,8 @@ def repository_prs_merge(username, repository):
pull_request.base_route, pull_request.base_branch, pull_request.id, simulate=Truesimulate=True, username=flask.session.get("username")) task_result = worker.AsyncResult(result.id)
@@ -1807,7 +1808,8 @@ def repository_prs_merge_stage_two(username, repository, id):
pull_request.base_route, pull_request.base_branch, pull_request.id, simulate=Falsesimulate=False, username=flask.session.get("username")) task_result = worker.AsyncResult(result.id)
celery_tasks.py
@@ -41,7 +41,7 @@ def send_notification(user_notification_id):
"commit", username=user.username, commit=commit, url="https://" if config.suggest_https else "http://" + config.BASE_DOMAIN + "/repo/" + notification.data.get("repo") + "/commit/" + notification.data.get("commit")url=("https://" if config.suggest_https else "http://") + config.BASE_DOMAIN + "/repo/" + notification.data.get("repo") + "/commit/" + notification.data.get("commit")) case "post": post = db.session.get(Post, notification.data.get("post"))
@@ -52,7 +52,7 @@ def send_notification(user_notification_id):
"forum", username=user.username, post=post, url="https://" if config.suggest_https else "http://" + config.BASE_DOMAIN + "/repo/" + notification.data.get("repo") + "/post/" + notification.data.get("post")url=("https://" if config.suggest_https else "http://") + config.BASE_DOMAIN + "/repo/" + notification.data.get("repo") + "/post/" + notification.data.get("post")) case "pr": pr = db.session.get(PullRequest, notification.data.get("pr"))
@@ -63,7 +63,7 @@ def send_notification(user_notification_id):
"pr", username=user.username, pr=pr, url="https://" if config.suggest_https else "http://" + config.BASE_DOMAIN + notification.data.get("base") + "/prs/"url=("https://" if config.suggest_https else "http://") + config.BASE_DOMAIN + notification.data.get("base") + "/prs/") mail.sendmail(config.NOTIFICATION_EMAIL, user.email, message)
@@ -72,13 +72,16 @@ def send_notification(user_notification_id):
@shared_task(ignore_result=False) def merge_heads(head_route, head_branch, base_route, base_branch, pr_id, simulate=True):from models import Repo, Commit, PullRequestdef merge_heads(head_route, head_branch, base_route, base_branch, pr_id, simulate=True, username=None): from models import Repo, Commit, PullRequest, Userserver_repo_location = os.path.join(config.REPOS_PATH, base_route.lstrip("/")) pull_request = db.session.get(PullRequest, pr_id) if not os.path.isdir(server_repo_location): raise FileNotFoundError(f"Repo {server_repo_location} not found, cannot merge.") common.git_command(server_repo_location, b"", "config", "user.email", db.session.get(User, username).email or f"noreply@{config.BASE_DOMAIN}") common.git_command(server_repo_location, b"", "config", "user.name", username) if base_route == head_route: common.git_command(server_repo_location, b"", "checkout", f"{base_branch}") if simulate:
@@ -103,7 +106,7 @@ def merge_heads(head_route, head_branch, base_route, base_branch, pr_id, simulat
return "merge_simulator" if simulate else "merge", out, err, head_route, head_branch, base_route, base_branch, merge_exit, new_commits # Otherwise, we need to fetch the head repo. remote_url = "https://" if config.suggest_https else "http://" + os.path.join(config.BASE_DOMAIN + f":{config.port}" if config.port not in {80, 443} else "", "git", head_route.lstrip("/"))remote_url = ("https://" if config.suggest_https else "http://") + config.BASE_DOMAIN + (f":{config.port}" if config.port not in {80, 443} else "") + "/git" + head_routeout, err = b"", b"" part_out, part_err = common.git_command(server_repo_location, b"", "remote", "add", "NEW", remote_url, return_err=True)
@@ -215,7 +218,7 @@ def request_email_change(username, email):
username=username, code=request.code, new_email=email, url="https://" if config.suggest_https else "http://" + config.BASE_DOMAIN + "/settings/confirm-email/" + request.codeurl=("https://" if config.suggest_https else "http://") + config.BASE_DOMAIN + "/settings/confirm-email/" + request.code) with (SMTP(config.MAIL_SERVER) as mail):
config.py
@@ -153,7 +153,7 @@ footer = f"""
Made in Romania 🇷🇴 </p> <p> <a href="/about">Powered by Roundabout (alpha testing)</a><a href="/about">Powered by Roundabout (beta)</a></p> """