73 lines
2.4 KiB
HTML
73 lines
2.4 KiB
HTML
<!doctype html>
|
|
<html lang="zh-CN">
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
<title>GitLab Webhook 控制台</title>
|
|
<link rel="stylesheet" href="/static/app.css" />
|
|
</head>
|
|
<body>
|
|
<header class="topbar">
|
|
<div class="brand">
|
|
<span class="logo">⬢</span>
|
|
<div>
|
|
<h1>GitLab Webhook 控制台</h1>
|
|
<p class="subtitle">队列 / 执行日志 / 执行历史</p>
|
|
</div>
|
|
</div>
|
|
<div class="status">
|
|
<span id="conn-dot" class="dot dot-grey" title="连接状态"></span>
|
|
<span id="conn-text">连接中…</span>
|
|
<button id="refresh-btn" class="btn-ghost" type="button">立即刷新</button>
|
|
</div>
|
|
</header>
|
|
|
|
<main class="layout">
|
|
<section class="card" id="queue-card">
|
|
<header class="card-head">
|
|
<h2>① 等待中的队列</h2>
|
|
<span id="pending-count" class="badge">0</span>
|
|
</header>
|
|
<div id="pending-list" class="card-body pending-list">
|
|
<p class="empty">暂无等待任务</p>
|
|
</div>
|
|
</section>
|
|
|
|
<section class="card" id="running-card">
|
|
<header class="card-head">
|
|
<h2>② 正在执行</h2>
|
|
<span id="running-state" class="badge badge-grey">空闲</span>
|
|
</header>
|
|
<div id="running-body" class="card-body running-body">
|
|
<p class="empty">当前没有任务在执行</p>
|
|
</div>
|
|
</section>
|
|
|
|
<section class="card" id="history-card">
|
|
<header class="card-head">
|
|
<h2>③ 执行历史</h2>
|
|
<span class="muted small">按脚本分组,最多保留 20 条</span>
|
|
</header>
|
|
<div id="history-list" class="card-body history-list"></div>
|
|
</section>
|
|
</main>
|
|
|
|
<div id="log-modal" class="modal" hidden role="dialog" aria-labelledby="modal-title" aria-modal="true">
|
|
<div class="modal-backdrop" data-close></div>
|
|
<div class="modal-dialog">
|
|
<header class="modal-head">
|
|
<h3 id="modal-title">实时日志</h3>
|
|
<button class="btn-ghost" data-close type="button">关闭</button>
|
|
</header>
|
|
<pre id="modal-log" class="log-box modal-log">(等待脚本输出…)</pre>
|
|
<footer class="modal-foot">
|
|
<button id="log-autoscroll" class="btn-ghost active" type="button">自动滚动</button>
|
|
<span id="log-size" class="muted"></span>
|
|
</footer>
|
|
</div>
|
|
</div>
|
|
|
|
<script src="/static/app.js"></script>
|
|
</body>
|
|
</html>
|