54 lines
1.3 KiB
Go
54 lines
1.3 KiB
Go
package storage
|
|
|
|
const CreateSqlite = `
|
|
CREATE TABLE IF NOT EXISTS tokens (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
name TEXT NOT NULL,
|
|
last_name TEXT NOT NULL,
|
|
login TEXT NOT NULL UNIQUE,
|
|
password TEXT NOT NULL,
|
|
token TEXT NOT NULL UNIQUE,
|
|
permission_view BOOL NOT NULL,
|
|
permission_manage_agent BOOL NOT NULL,
|
|
permission_admin BOOL NOT NULL
|
|
);
|
|
`
|
|
|
|
const CreateRegistrationTokensTable = `
|
|
CREATE TABLE IF NOT EXISTS registration_tokens (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
token TEXT NOT NULL UNIQUE,
|
|
label TEXT NOT NULL,
|
|
used BOOL NOT NULL DEFAULT 0,
|
|
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
|
|
used_at DATETIME
|
|
);
|
|
`
|
|
|
|
const CreateJobsTable = `
|
|
CREATE TABLE IF NOT EXISTS jobs (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
agent_id TEXT NOT NULL,
|
|
command TEXT NOT NULL,
|
|
stdin TEXT,
|
|
stdout TEXT DEFAULT '',
|
|
stderr TEXT DEFAULT '',
|
|
status INTEGER DEFAULT 0,
|
|
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
|
|
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
`
|
|
|
|
const CreateLogsTable = `
|
|
CREATE TABLE IF NOT EXISTS logs (
|
|
timestamp DateTime64(3) DEFAULT now(),
|
|
level LowCardinality(String),
|
|
service LowCardinality(String),
|
|
agent LowCardinality(String),
|
|
message String
|
|
) ENGINE = MergeTree()
|
|
ORDER BY (timestamp, level, service, agent)
|
|
TTL timestamp + INTERVAL 30 DAY
|
|
SETTINGS index_granularity = 8192
|
|
`
|