Files
msys2-web/app/templates/queue.html
Christoph Reiter 1178edde11 Sort repos by priority and not by name
Use the order of the repos in the config as the order for everything else.
selection inputs, package groupes etc
2024-09-15 15:42:14 +02:00

172 lines
6.5 KiB
HTML

{% extends "layout.html" %}
{% block title %}Pending Package Updates{% endblock %}
{% block inner_content %}
<div class="card mb-3">
<div class="card-header">
<h4 class="card-title">Pending Package Updates</h4>
<h6 class="card-subtitle mb-2 text-muted">
{{ updates|length }} packages which have a newer version in the Git
repository than in the pacman repository
</h6>
</div>
<div class="card-body overflow-auto">
<p class="text-muted">
Packages get automatically built via <a
href="https://github.com/msys2/msys2-autobuild/actions/workflows/build.yml">msys2/msys2-autobuild</a> and
<a href="https://github.com/msys2-arm/msys2-autobuild/actions/workflows/build.yml">msys2-arm/msys2-autobuild</a>.
Maintainers can control the build pipeline <a href="https://autobuildcontroller.msys2.org">here</a>.
<br>
After the packages are built they still need to be manually signed and uploaded to the pacman repo, so please be patient :)
</p>
<form class="row g-2 align-items-center" action="{{ url_for('queue') }}" method="get">
<div class="col-auto">
Build Types:
</div>
<div class="col-auto">
<select name="build_type" class="form-select form-select-sm" onchange="this.form.submit()">
<option {{ "selected" if not build_filter or "" }} value="">All</option>
{% for bt in build_types %}
<option value="{{ bt }}" {{ "selected" if build_filter == bt or "" }}>{{ bt }}</option>
{% endfor %}
</select>
</div>
</form>
<br>
{% if cycles %}
<p> Cycles:
{% for (a, b) in cycles %}
<a href="{{ url_for('base', base_name=a) }}">{{ a }}</a><a href="{{ url_for('base', base_name=b) }}">{{ b }}</a>{{ ", " if not loop.last else "" }}
{% endfor %}
</p>
{% endif %}
<table class="table table-hover table-sm">
<thead>
<tr>
<th>Update Date</th>
<th>Base Package</th>
<th>Repo Version</th>
<th></th>
<th>Git Version</th>
<th>Status</th>
</tr>
</thead>
<tbody>
{% for (srcinfo, s, p, status) in updates %}
<tr>
<td class="mytooltip">
<a href="{{ srcinfo.history_url }}">{{ srcinfo.date.split()[0] }}</a>
<template class="mytooltip-content">
{{ srcinfo.date }} <span class="text-muted">(UTC)</span>
</template>
</td>
{% if s %}
<td><a href="{{ url_for('base', base_name=s.name) }}">{{ srcinfo.pkgbase }}</a></td>
{% else %}
<td><a href="{{ srcinfo.source_url }}">{{ srcinfo.pkgbase }}</a></td>
{% endif %}
{% if p %}
<td class="text-version">{{ p.version }}</td>
{% else %}
<td>-</td>
{% endif %}
<td></td>
<td class="text-version">{{ srcinfo.build_version }}</td>
<td class="mytooltip text-{{ status[0].category or 'muted' }}">
{{ status[0].status }}
{% for s in status %}
<small class="text-muted">
{% if s.urls %}
<br>
{{ s.type }}:
{% for key, value in s.urls.items() -%}
{% if not loop.first %} / {% endif %}<a href="{{ s.urls[key] }}">{{ key }}</a>
{%- endfor -%}
{% endif %}
</small>
{% endfor %}
<template class="mytooltip-content">
<dl>
{% for s in status %}
<dt>{{ s.type }}: <span class="text-{{ s.category or 'muted' }}">{{ s.status }}</span></dt>
<dd><small class="text-muted">
{% if s.details %}
{{ s.details }}
{% endif %}</small></dd>
{% endfor %}
</dl>
</template>
</td>
</tr>
{% endfor %}
</tbody>
</table>
<p class="text-muted">
The packages above marked "Ready for upload" are also available in a
special <a href="https://repo.msys2.org/staging/">staging pacman
repo</a>. Note that using the staging repo might result in some packages
being broken from time to time as it can contain partial build results
of multi-package rebuilds. To use it add the following to the top of
<code>/etc/pacman.conf</code>:</p><pre><code>[staging]
Server = https://repo.msys2.org/staging/
SigLevel = Never</code></pre>
</div>
</div>
<div class="card mb-3">
<div class="card-header">
<h4 class="card-title">Pending Package Removals</h4>
<h6 class="card-subtitle mb-2 text-muted">
{{ removals|length }} packages which are in the pacman repository, but no
longer in the Git repository and can be removed
</h6>
</div>
<div class="card-body overflow-auto">
<table class="table table-hover table-sm">
<thead>
<tr>
<th>Update Date</th>
<th>Repo</th>
<th>Package</th>
<th>Status</th>
</tr>
</thead>
<tbody>
{% for p, rdepends in removals %}
<tr>
<td class="mytooltip">
<a href="{{ p.history_url }}">{{ (p.builddate|timestamp).split()[0] }}</a>
<template class="mytooltip-content">
{{ p.builddate|timestamp }} <span class="text-muted">(UTC)</span>
</template>
</td>
<td>{{ p.repo }}</td>
<td><a href="{{ package_url(p) }}">{{ p.name }}</a></td>
{% if rdepends %}
<td><span class="text-danger">Required by:</span>
<ul class="list-unstyled">
{% for rp, r in rdepends|rdepends_sort %}
<li><a href="{{ package_url(rp) }}">{{ rp.name }}</a>{% if r|rdepends_type %} <span class="text-muted">({{ r|rdepends_type|sort|join(', ') }})</span>{% endif %}</li>
{% endfor %}
</ul>
</td>
{% else %}
<td class="text-success">Ready for removal</td>
{% endif %}
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
{% endblock %}