34 lines
1.3 KiB
SQL
34 lines
1.3 KiB
SQL
-- PostgreSQL initialization for StellaOps air-gap deployment
|
|
-- This script runs automatically on first container start
|
|
|
|
-- Enable pg_stat_statements extension for query performance analysis
|
|
CREATE EXTENSION IF NOT EXISTS pg_stat_statements;
|
|
|
|
-- Enable other useful extensions
|
|
CREATE EXTENSION IF NOT EXISTS pg_trgm; -- Fuzzy text search
|
|
CREATE EXTENSION IF NOT EXISTS btree_gin; -- GIN indexes for scalar types
|
|
CREATE EXTENSION IF NOT EXISTS pgcrypto; -- Cryptographic functions
|
|
|
|
-- Create schemas for all modules
|
|
-- Migrations will create tables within these schemas
|
|
CREATE SCHEMA IF NOT EXISTS authority;
|
|
CREATE SCHEMA IF NOT EXISTS vuln;
|
|
CREATE SCHEMA IF NOT EXISTS vex;
|
|
CREATE SCHEMA IF NOT EXISTS scheduler;
|
|
CREATE SCHEMA IF NOT EXISTS notify;
|
|
CREATE SCHEMA IF NOT EXISTS policy;
|
|
CREATE SCHEMA IF NOT EXISTS concelier;
|
|
CREATE SCHEMA IF NOT EXISTS audit;
|
|
CREATE SCHEMA IF NOT EXISTS unknowns;
|
|
|
|
-- Grant usage to application user (assumes POSTGRES_USER is the app user)
|
|
GRANT USAGE ON SCHEMA authority TO PUBLIC;
|
|
GRANT USAGE ON SCHEMA vuln TO PUBLIC;
|
|
GRANT USAGE ON SCHEMA vex TO PUBLIC;
|
|
GRANT USAGE ON SCHEMA scheduler TO PUBLIC;
|
|
GRANT USAGE ON SCHEMA notify TO PUBLIC;
|
|
GRANT USAGE ON SCHEMA policy TO PUBLIC;
|
|
GRANT USAGE ON SCHEMA concelier TO PUBLIC;
|
|
GRANT USAGE ON SCHEMA audit TO PUBLIC;
|
|
GRANT USAGE ON SCHEMA unknowns TO PUBLIC;
|