first commit
This commit is contained in:
commit
32a7ba8e8f
168 files changed
+123856
No files matched your search
@@ -0,0 +1,80 @@
|
||||
CREATE TABLE IF NOT EXISTS users (
|
||||
id INTEGER PRIMARY KEY,
|
||||
username TEXT NOT NULL UNIQUE,
|
||||
password_hash TEXT NOT NULL,
|
||||
created_at TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
preferred_language TEXT NOT NULL DEFAULT 'en',
|
||||
preferred_font TEXT NOT NULL DEFAULT 'default'
|
||||
);
|
||||
CREATE TABLE IF NOT EXISTS routers (
|
||||
id INTEGER PRIMARY KEY,
|
||||
owner_id INTEGER NOT NULL REFERENCES users(id),
|
||||
name TEXT NOT NULL,
|
||||
device_type TEXT NOT NULL DEFAULT 'routeros',
|
||||
host TEXT NOT NULL,
|
||||
port INTEGER NOT NULL DEFAULT 22,
|
||||
ssh_user TEXT NOT NULL DEFAULT 'admin',
|
||||
ssh_key TEXT,
|
||||
ssh_password TEXT,
|
||||
last_connection_status INTEGER,
|
||||
last_connection_tested_at TEXT,
|
||||
last_connection_error TEXT,
|
||||
last_connection_hostname TEXT,
|
||||
last_connection_model TEXT,
|
||||
last_connection_version TEXT,
|
||||
last_connection_uptime TEXT,
|
||||
last_connection_transport TEXT,
|
||||
last_connection_server TEXT,
|
||||
last_connection_auth_mode TEXT,
|
||||
last_connection_http_status TEXT,
|
||||
last_connection_backup_available INTEGER,
|
||||
disable_all_backups INTEGER NOT NULL DEFAULT 0,
|
||||
disable_export_backups INTEGER NOT NULL DEFAULT 0,
|
||||
disable_binary_backups INTEGER NOT NULL DEFAULT 0,
|
||||
disable_ping INTEGER NOT NULL DEFAULT 0,
|
||||
created_at TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
CREATE TABLE IF NOT EXISTS backups (
|
||||
id INTEGER PRIMARY KEY,
|
||||
router_id INTEGER NOT NULL REFERENCES routers(id) ON DELETE CASCADE,
|
||||
file_path TEXT NOT NULL,
|
||||
file_name TEXT NOT NULL,
|
||||
backup_type TEXT NOT NULL DEFAULT 'export',
|
||||
checksum TEXT,
|
||||
created_at TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
CREATE TABLE IF NOT EXISTS operation_logs (
|
||||
id INTEGER PRIMARY KEY,
|
||||
message TEXT NOT NULL,
|
||||
timestamp TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
CREATE TABLE IF NOT EXISTS global_settings (
|
||||
id INTEGER PRIMARY KEY,
|
||||
backup_retention_days INTEGER DEFAULT 7,
|
||||
log_retention_days INTEGER DEFAULT 7,
|
||||
export_cron TEXT DEFAULT '',
|
||||
binary_cron TEXT DEFAULT '',
|
||||
retention_cron TEXT DEFAULT '',
|
||||
enable_auto_export INTEGER DEFAULT 0,
|
||||
connection_test_interval_minutes INTEGER DEFAULT 0,
|
||||
global_ssh_key TEXT,
|
||||
default_switchos_username TEXT,
|
||||
default_switchos_password TEXT,
|
||||
pushover_token TEXT,
|
||||
pushover_userkey TEXT,
|
||||
notify_failures_only INTEGER DEFAULT 1,
|
||||
smtp_host TEXT,
|
||||
smtp_port INTEGER DEFAULT 587,
|
||||
smtp_login TEXT,
|
||||
smtp_password TEXT,
|
||||
smtp_notifications_enabled INTEGER DEFAULT 0,
|
||||
recipient_email TEXT
|
||||
);
|
||||
CREATE INDEX IF NOT EXISTS ix_routers_owner_id ON routers(owner_id);
|
||||
CREATE INDEX IF NOT EXISTS ix_backups_router_id ON backups(router_id);
|
||||
CREATE INDEX IF NOT EXISTS ix_backups_created_at ON backups(created_at);
|
||||
CREATE INDEX IF NOT EXISTS ix_operation_logs_timestamp ON operation_logs(timestamp);
|
||||
CREATE TABLE IF NOT EXISTS rust_schema_migrations (
|
||||
version INTEGER PRIMARY KEY,
|
||||
applied_at TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
Reference in new issue
Block a user