Revamp Job flow
This commit is contained in:
parent
945afdfbbe
commit
4a0a4b29a5
86 changed files with 592 additions and 608 deletions
56
lib/server/database/queries/alerting.js
Normal file
56
lib/server/database/queries/alerting.js
Normal file
|
@ -0,0 +1,56 @@
|
|||
import pg from "../postgres.js";
|
||||
import { silencedMock } from "../mocks/alerting-mock.js";
|
||||
import moment from "moment";
|
||||
// Imports
|
||||
import {
|
||||
insertQuery,
|
||||
selectWhereAnyQuery,
|
||||
updateWhereAnyQuery,
|
||||
deleteQuery,
|
||||
} from "../pg-query.js";
|
||||
// Constants
|
||||
const table = "alerting";
|
||||
const PG_DISABLED = process.env.POSTGRES_DISABLED;
|
||||
|
||||
export const upsertAlertSilence = async (silence) => {
|
||||
const {
|
||||
id,
|
||||
name,
|
||||
class: className,
|
||||
method,
|
||||
expires: duration,
|
||||
keepExpires,
|
||||
} = silence;
|
||||
const { h, m } = duration;
|
||||
const expires = moment().add(h, "hours").add(m, "minutes").utc().format();
|
||||
const entry = {
|
||||
name,
|
||||
class: className,
|
||||
method,
|
||||
expires: keepExpires ? undefined : expires,
|
||||
};
|
||||
const asUpdate = {};
|
||||
for (var k of Object.keys(entry))
|
||||
asUpdate[k] = entry[k] === "*" ? null : entry[k];
|
||||
var query = id
|
||||
? updateWhereAnyQuery(table, asUpdate, { id })
|
||||
: insertQuery(table, entry);
|
||||
return pg.query(query);
|
||||
};
|
||||
|
||||
export const deleteAlertSilence = async (silence) => {
|
||||
const { id } = silence;
|
||||
const query = deleteQuery(table, { id });
|
||||
return pg.query(query);
|
||||
};
|
||||
|
||||
// Queries
|
||||
export const getSilencedTests = async () => {
|
||||
if (PG_DISABLED) return silencedMock();
|
||||
const query = `SELECT * from ${table}`;
|
||||
const silenced = await pg.query(query);
|
||||
silenced.forEach((t, i) => {
|
||||
for (var k of Object.keys(t)) silenced[i][k] = t[k] === null ? "*" : t[k];
|
||||
});
|
||||
return silenced;
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue