Revamp Job flow
This commit is contained in:
parent
945afdfbbe
commit
4a0a4b29a5
86 changed files with 592 additions and 608 deletions
41
lib/server/routes/alerting-route.js
Normal file
41
lib/server/routes/alerting-route.js
Normal file
|
@ -0,0 +1,41 @@
|
|||
import { Router, json as jsonMiddleware } from "express";
|
||||
import {
|
||||
getSilencedTests,
|
||||
upsertAlertSilence,
|
||||
deleteAlertSilence,
|
||||
} from "../database/queries/alerting.js";
|
||||
const router = Router();
|
||||
|
||||
// Apply Middlewares
|
||||
router.use(jsonMiddleware());
|
||||
|
||||
// Get Routes
|
||||
router.get("/silenced", (req, res) => {
|
||||
getSilencedTests().then((t) => res.send(t));
|
||||
});
|
||||
|
||||
// Post Routes
|
||||
router.post("/silence", (req, res) => {
|
||||
const { name, class: className, method, expires, keepExpires } = req.body;
|
||||
if (!name || !className || !method)
|
||||
return res
|
||||
.status(400)
|
||||
.send("'name', 'class', and 'method' are all required Fields!");
|
||||
if (expires === null)
|
||||
return deleteAlertSilence(req.body)
|
||||
.then(() => res.sendStatus(200))
|
||||
.catch((e) => res.status(500).send(e));
|
||||
const { h, m } = keepExpires ? {} : expires;
|
||||
if (!keepExpires && (h == null || m == null))
|
||||
return res.status(400).send("Both 'h' and 'm' are required fields!");
|
||||
if (!keepExpires && (h < 0 || m < 0))
|
||||
return res
|
||||
.status(400)
|
||||
.send("'h' and 'm' must be greater than or equal to 0!");
|
||||
// TODO set max times as well
|
||||
if (!keepExpires && (h > 72 || m > 59))
|
||||
res.status(400).send("'h' and 'm' must not exceed the set maxes!");
|
||||
upsertAlertSilence(req.body).then(() => res.sendStatus(200));
|
||||
});
|
||||
|
||||
export default router;
|
Loading…
Add table
Add a link
Reference in a new issue