173 lines
6.2 KiB
HTML
173 lines
6.2 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://msys2autobuildcontroller.pythonanywhere.com">here</a>.
|
|
<br>
|
|
They still get manually signed and uploaded to the pacman repo after
|
|
they are built, so please be patient :)
|
|
</p>
|
|
|
|
<form class="row g-2 align-items-center" action="{{ url_for('queue') }}" method="get">
|
|
<div class="col-auto">
|
|
Repositories:
|
|
</div>
|
|
|
|
<div class="col-auto">
|
|
<select name="repo" class="form-select form-select-sm" onchange="this.form.submit()">
|
|
<option {{ "selected" if not repo_filter or "" }} value="">All</option>
|
|
{% for r in repos|sort(attribute='name') %}
|
|
<option value="{{ r.name }}" {{ "selected" if repo_filter == r.name or "" }}>{{ r.name }}</option>
|
|
{% endfor %}
|
|
</select>
|
|
</div>
|
|
|
|
<div class="col-auto ms-auto">
|
|
<button type="button" id="refresh-button"
|
|
class="btn btn-sm btn-outline-secondary">
|
|
Request refresh
|
|
</button>
|
|
</div>
|
|
|
|
<script type="module">
|
|
let button = document.getElementById('refresh-button');
|
|
button.addEventListener('click', () => {
|
|
fetch('/api/trigger_update', {method: 'POST'});
|
|
});
|
|
</script>
|
|
</form>
|
|
|
|
<br>
|
|
|
|
<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 (srcpkg, s, p, status) in updates %}
|
|
<tr>
|
|
<td class="mytooltip">
|
|
<a href="{{ srcpkg.history_url }}">{{ srcpkg.date.split()[0] }}</a>
|
|
<template class="mytooltip-content">
|
|
{{ srcpkg.date }} <span class="text-muted">(UTC)</span>
|
|
</template>
|
|
</td>
|
|
{% if s %}
|
|
<td><a href="{{ url_for('base', base_name=s.name) }}">{{ s.name }}</a></td>
|
|
{% else %}
|
|
<td><a href="{{ srcpkg.source_url }}">{{ srcpkg.pkgbase }}</a></td>
|
|
{% endif %}
|
|
{% if p %}
|
|
<td class="text-version">{{ p.version }}</td>
|
|
{% else %}
|
|
<td>-</td>
|
|
{% endif %}
|
|
<td>→</td>
|
|
<td class="text-version">{{ srcpkg.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>
|
|
{% if s.details %}
|
|
{{ s.details }}
|
|
{% endif %}</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 s, p, note in removals %}
|
|
<tr>
|
|
<td class="mytooltip">
|
|
<a href="{{ s.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 note %}
|
|
<td class="text-danger">Required by: {{ note }}</td>
|
|
{% else %}
|
|
<td class="text-success">Ready for removal</td>
|
|
{% endif %}
|
|
</tr>
|
|
{% endfor %}
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
|
|
{% endblock %}
|