roundabout,
created on Tuesday, 4 June 2024, 16:38:29 (1717519109),
received on Wednesday, 31 July 2024, 06:54:49 (1722408889)
Author identity: vlad <vlad.muntoiu@gmail.com>
01b0e470c316eb798c93251cdbfcc60c0ae2ae01
celery_tasks.py
@@ -58,7 +58,7 @@ def merge_heads(head_route, head_branch, base_route, base_branch, simulate=True)
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", base_route.lstrip("/"))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("/"))out, err = b"", b"" part_out, part_err = common.git_command(server_repo_location, b"", "remote", "add", "NEW", remote_url, return_err=True)
@@ -73,8 +73,8 @@ def merge_heads(head_route, head_branch, base_route, base_branch, simulate=True)
part_out, part_err = common.git_command(server_repo_location, b"", "checkout", f"{base_branch}", return_err=True) out += part_out err += part_err new_commits, part_err = common.git_command(server_repo_location, b"", "log", "--oneline", f"heads/{base_branch}..NEW/{head_branch}", "--", return_err=True)print(new_commits)new_commits, part_err = common.git_command(server_repo_location, b"", "log", "--pretty=format:\"%H\"", f"heads/{base_branch}..NEW/{head_branch}", "--", return_err=True) new_commits = new_commits.decode().splitlines()err += part_err if simulate:
@@ -97,7 +97,7 @@ def merge_heads(head_route, head_branch, base_route, base_branch, simulate=True)
else: # Copy the commits rows from the head repo to the base repo for commit in new_commits: commit_data = Commit.query.filter_by(repo_name=head_route, sha=commit.split())commit_data = Commit.query.filter_by(repo_name=head_route, sha=commit).first()db.session.expunge(commit_data) make_transient(commit_data)
@@ -107,6 +107,8 @@ def merge_heads(head_route, head_branch, base_route, base_branch, simulate=True)
commit_data.receive_date = datetime.now() db.session.add(commit_data) db.session.commit() return "merge_simulator" if simulate else "merge", out, err, head_route, head_branch, base_route, base_branch, merge_exit, new_commits
jinja_utils.py
@@ -9,6 +9,11 @@ def split(value: str, separator=" ", maxsplit: int = -1):
return value.split(separator, maxsplit) @app.template_filter("splitlines") def splitlines(value: str, keepends: bool = False): return value.splitlines(keepends=keepends) @app.template_filter("lstrip") def lstrip(value: str, characters=None): return value.lstrip(characters)
templates/task-monitor.html
@@ -14,7 +14,7 @@
<iconify-icon icon="mdi:check" style="font-size: 2em; color: var(--color-success);"></iconify-icon> {% trans %}Done{% endtrans %} {% else %} <iconify-icon icon="material-symbols:autorenew" style="animation: rotate 1000ms linear infinite; font-size: 2em; color: var(--color-info);"></iconify-icon><iconify-icon icon="material-symbols:autorenew" style="animation: rotate 750ms linear infinite; font-size: 2em; color: var(--color-info);"></iconify-icon>{% trans %}Running...{% endtrans %} {% endif %} </x-hbox>
@@ -61,10 +61,6 @@
{% endif %} {% else %} <h2>{% trans %}Merge simulation went well; continue?{% endtrans %}</h2> <p>{% trans num_commits=result.get()[8]|length %}{{ num_commits }} commits will be added.{% endtrans %}</p><pre>{{ result.get()[8] | decode }}</pre><a href="{{ result.get()[5] }}/prs/{{ request.args.get('pr-id') }}/merge" class="button">{% trans %}Merge{% endtrans %}</a> {% endif %} {% endif %}