icingaweb2-module-director/schema/mysql-migrations/upgrade_175.sql

485 lines
17 KiB
SQL

CREATE TABLE director_branch (
uuid VARBINARY(16) NOT NULL,
owner VARCHAR(255) NOT NULL,
branch_name VARCHAR(255) NOT NULL,
description TEXT DEFAULT NULL,
ts_merge_request BIGINT DEFAULT NULL,
PRIMARY KEY(uuid),
UNIQUE KEY (branch_name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE director_branch_activity (
timestamp_ns BIGINT(20) NOT NULL,
object_uuid VARBINARY(16) NOT NULL,
branch_uuid VARBINARY(16) NOT NULL,
action ENUM ('create', 'modify', 'delete') NOT NULL,
object_table VARCHAR(64) NOT NULL,
author VARCHAR(255) NOT NULL,
former_properties LONGTEXT NOT NULL, -- json-encoded
modified_properties LONGTEXT NOT NULL,
PRIMARY KEY (timestamp_ns),
INDEX object_uuid (object_uuid),
INDEX branch_uuid (branch_uuid),
CONSTRAINT branch_activity_branch
FOREIGN KEY branch (branch_uuid)
REFERENCES director_branch (uuid)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE branched_icinga_host (
uuid VARBINARY(16) NOT NULL,
branch_uuid VARBINARY(16) NOT NULL,
branch_created ENUM('y', 'n') NOT NULL DEFAULT 'n',
branch_deleted ENUM('y', 'n') NOT NULL DEFAULT 'n',
object_name VARCHAR(255) DEFAULT NULL,
object_type ENUM('object', 'template') DEFAULT NULL,
disabled ENUM('y', 'n') DEFAULT NULL,
display_name VARCHAR(255) DEFAULT NULL,
address VARCHAR(255) DEFAULT NULL,
address6 VARCHAR(45) DEFAULT NULL,
check_command VARCHAR(255) DEFAULT NULL,
max_check_attempts MEDIUMINT UNSIGNED DEFAULT NULL,
check_period VARCHAR(255) DEFAULT NULL,
check_interval VARCHAR(8) DEFAULT NULL,
retry_interval VARCHAR(8) DEFAULT NULL,
check_timeout SMALLINT UNSIGNED DEFAULT NULL,
enable_notifications ENUM('y', 'n') DEFAULT NULL,
enable_active_checks ENUM('y', 'n') DEFAULT NULL,
enable_passive_checks ENUM('y', 'n') DEFAULT NULL,
enable_event_handler ENUM('y', 'n') DEFAULT NULL,
enable_flapping ENUM('y', 'n') DEFAULT NULL,
enable_perfdata ENUM('y', 'n') DEFAULT NULL,
event_command VARCHAR(255) DEFAULT NULL,
flapping_threshold_high SMALLINT UNSIGNED DEFAULT NULL,
flapping_threshold_low SMALLINT UNSIGNED DEFAULT NULL,
volatile ENUM('y', 'n') DEFAULT NULL,
zone VARCHAR(255) DEFAULT NULL,
command_endpoint VARCHAR(255) DEFAULT NULL,
notes TEXT DEFAULT NULL,
notes_url VARCHAR(255) DEFAULT NULL,
action_url VARCHAR(255) DEFAULT NULL,
icon_image VARCHAR(255) DEFAULT NULL,
icon_image_alt VARCHAR(255) DEFAULT NULL,
has_agent ENUM('y', 'n') DEFAULT NULL,
master_should_connect ENUM('y', 'n') DEFAULT NULL,
accept_config ENUM('y', 'n') DEFAULT NULL,
api_key VARCHAR(40) DEFAULT NULL,
imports TEXT DEFAULT NULL,
`groups` TEXT DEFAULT NULL,
vars MEDIUMTEXT DEFAULT NULL,
set_null TEXT DEFAULT NULL,
PRIMARY KEY (branch_uuid, uuid),
UNIQUE INDEX branch_object_name (branch_uuid, object_name),
INDEX search_object_name (object_name),
INDEX search_display_name (display_name),
CONSTRAINT icinga_host_branch
FOREIGN KEY branch (branch_uuid)
REFERENCES director_branch (uuid)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE branched_icinga_hostgroup (
uuid VARBINARY(16) NOT NULL,
branch_uuid VARBINARY(16) NOT NULL,
branch_created ENUM('y', 'n') NOT NULL DEFAULT 'n',
branch_deleted ENUM('y', 'n') NOT NULL DEFAULT 'n',
object_name VARCHAR(255) DEFAULT NULL,
object_type ENUM('object', 'template', 'external_object') DEFAULT NULL,
disabled ENUM('y', 'n') DEFAULT NULL,
display_name VARCHAR(255) DEFAULT NULL,
assign_filter TEXT DEFAULT NULL,
imports TEXT DEFAULT NULL,
set_null TEXT DEFAULT NULL,
PRIMARY KEY (branch_uuid, uuid),
UNIQUE INDEX branch_object_name (branch_uuid, object_name),
INDEX search_object_name (object_name),
INDEX search_display_name (display_name),
CONSTRAINT icinga_hostgroup_branch
FOREIGN KEY branch (branch_uuid)
REFERENCES director_branch (uuid)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE branched_icinga_servicegroup (
uuid VARBINARY(16) NOT NULL,
branch_uuid VARBINARY(16) NOT NULL,
branch_created ENUM('y', 'n') NOT NULL DEFAULT 'n',
branch_deleted ENUM('y', 'n') NOT NULL DEFAULT 'n',
object_name VARCHAR(255) DEFAULT NULL,
object_type ENUM('object', 'template', 'external_object') DEFAULT NULL,
disabled ENUM('y', 'n') DEFAULT NULL,
display_name VARCHAR(255) DEFAULT NULL,
assign_filter TEXT DEFAULT NULL,
imports TEXT DEFAULT NULL,
set_null TEXT DEFAULT NULL,
PRIMARY KEY (branch_uuid, uuid),
UNIQUE INDEX branch_object_name (branch_uuid, object_name),
INDEX search_object_name (object_name),
INDEX search_display_name (display_name),
CONSTRAINT icinga_servicegroup_branch
FOREIGN KEY branch (branch_uuid)
REFERENCES director_branch (uuid)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE branched_icinga_usergroup (
uuid VARBINARY(16) NOT NULL,
branch_uuid VARBINARY(16) NOT NULL,
branch_created ENUM('y', 'n') NOT NULL DEFAULT 'n',
branch_deleted ENUM('y', 'n') NOT NULL DEFAULT 'n',
object_name VARCHAR(255) DEFAULT NULL,
object_type ENUM('object', 'template') DEFAULT NULL,
disabled ENUM('y', 'n') DEFAULT NULL,
display_name VARCHAR(255) DEFAULT NULL,
imports TEXT DEFAULT NULL,
set_null TEXT DEFAULT NULL,
PRIMARY KEY (branch_uuid, uuid),
UNIQUE INDEX branch_object_name (branch_uuid, object_name),
INDEX search_object_name (object_name),
INDEX search_display_name (display_name),
CONSTRAINT icinga_usergroup_branch
FOREIGN KEY branch (branch_uuid)
REFERENCES director_branch (uuid)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE branched_icinga_user (
uuid VARBINARY(16) NOT NULL,
branch_uuid VARBINARY(16) NOT NULL,
branch_created ENUM('y', 'n') NOT NULL DEFAULT 'n',
branch_deleted ENUM('y', 'n') NOT NULL DEFAULT 'n',
object_name VARCHAR(255) DEFAULT NULL,
object_type ENUM('object', 'template') DEFAULT NULL,
disabled ENUM('y', 'n') DEFAULT NULL,
display_name VARCHAR(255) DEFAULT NULL,
email VARCHAR(255) DEFAULT NULL,
pager VARCHAR(255) DEFAULT NULL,
enable_notifications ENUM('y', 'n') DEFAULT NULL,
period VARCHAR(255) DEFAULT NULL,
zone VARCHAR(255) DEFAULT NULL,
states TEXT DEFAULT NULL,
types TEXT DEFAULT NULL,
imports TEXT DEFAULT NULL,
`groups` TEXT DEFAULT NULL,
vars MEDIUMTEXT DEFAULT NULL,
set_null TEXT DEFAULT NULL,
PRIMARY KEY (branch_uuid, uuid),
UNIQUE INDEX branch_object_name (branch_uuid, object_name),
INDEX search_object_name (object_name),
INDEX search_display_name (display_name),
CONSTRAINT icinga_user_branch
FOREIGN KEY branch (branch_uuid)
REFERENCES director_branch (uuid)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE branched_icinga_zone (
uuid VARBINARY(16) NOT NULL,
branch_uuid VARBINARY(16) NOT NULL,
branch_created ENUM('y', 'n') NOT NULL DEFAULT 'n',
branch_deleted ENUM('y', 'n') NOT NULL DEFAULT 'n',
object_name VARCHAR(255) DEFAULT NULL,
parent VARCHAR(255) DEFAULT NULL,
object_type ENUM('object', 'template', 'external_object') DEFAULT NULL,
disabled ENUM('y', 'n') DEFAULT NULL,
is_global ENUM('y', 'n') DEFAULT NULL,
imports TEXT DEFAULT NULL,
set_null TEXT DEFAULT NULL,
PRIMARY KEY (branch_uuid, uuid),
UNIQUE INDEX branch_object_name (branch_uuid, object_name),
INDEX search_object_name (object_name),
CONSTRAINT icinga_zone_branch
FOREIGN KEY branch (branch_uuid)
REFERENCES director_branch (uuid)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE branched_icinga_timeperiod (
uuid VARBINARY(16) NOT NULL,
branch_uuid VARBINARY(16) NOT NULL,
branch_created ENUM('y', 'n') NOT NULL DEFAULT 'n',
branch_deleted ENUM('y', 'n') NOT NULL DEFAULT 'n',
object_name VARCHAR(255) DEFAULT NULL,
object_type ENUM('object', 'template') DEFAULT NULL,
disabled ENUM('y', 'n') DEFAULT NULL,
display_name VARCHAR(255) DEFAULT NULL,
update_method VARCHAR(64) DEFAULT NULL COMMENT 'Usually LegacyTimePeriod',
zone VARCHAR(255) DEFAULT NULL,
prefer_includes ENUM('y', 'n') DEFAULT NULL,
imports TEXT DEFAULT NULL,
ranges TEXT DEFAULT NULL,
set_null TEXT DEFAULT NULL,
PRIMARY KEY (branch_uuid, uuid),
UNIQUE INDEX branch_object_name (branch_uuid, object_name),
INDEX search_object_name (object_name),
INDEX search_display_name (display_name),
CONSTRAINT icinga_timeperiod_branch
FOREIGN KEY branch (branch_uuid)
REFERENCES director_branch (uuid)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE branched_icinga_command (
uuid VARBINARY(16) NOT NULL,
branch_uuid VARBINARY(16) NOT NULL,
branch_created ENUM('y', 'n') NOT NULL DEFAULT 'n',
branch_deleted ENUM('y', 'n') NOT NULL DEFAULT 'n',
object_name VARCHAR(255) DEFAULT NULL,
object_type ENUM('object', 'template', 'external_object') DEFAULT NULL,
disabled ENUM('y', 'n') DEFAULT NULL,
methods_execute VARCHAR(64) DEFAULT NULL,
command TEXT DEFAULT NULL,
is_string ENUM('y', 'n') NULL,
timeout SMALLINT UNSIGNED DEFAULT NULL,
zone VARCHAR(255) DEFAULT NULL,
imports TEXT DEFAULT NULL,
arguments TEXT DEFAULT NULL,
set_null TEXT DEFAULT NULL,
PRIMARY KEY (branch_uuid, uuid),
UNIQUE INDEX branch_object_name (branch_uuid, object_name),
INDEX search_object_name (object_name),
CONSTRAINT icinga_command_branch
FOREIGN KEY branch (branch_uuid)
REFERENCES director_branch (uuid)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE branched_icinga_apiuser (
uuid VARBINARY(16) NOT NULL,
branch_uuid VARBINARY(16) NOT NULL,
branch_created ENUM('y', 'n') NOT NULL DEFAULT 'n',
branch_deleted ENUM('y', 'n') NOT NULL DEFAULT 'n',
object_name VARCHAR(255) DEFAULT NULL,
object_type ENUM('object', 'template', 'external_object') DEFAULT NULL,
disabled ENUM('y', 'n') DEFAULT NULL,
password VARCHAR(255) DEFAULT NULL,
client_dn VARCHAR(64) DEFAULT NULL,
permissions TEXT DEFAULT NULL COMMENT 'JSON-encoded permissions',
set_null TEXT DEFAULT NULL,
PRIMARY KEY (branch_uuid, uuid),
UNIQUE INDEX branch_object_name (branch_uuid, object_name),
INDEX search_object_name (object_name),
CONSTRAINT icinga_apiuser_branch
FOREIGN KEY branch (branch_uuid)
REFERENCES director_branch (uuid)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE branched_icinga_endpoint (
uuid VARBINARY(16) NOT NULL,
branch_uuid VARBINARY(16) NOT NULL,
branch_created ENUM('y', 'n') NOT NULL DEFAULT 'n',
branch_deleted ENUM('y', 'n') NOT NULL DEFAULT 'n',
object_name VARCHAR(255) DEFAULT NULL,
object_type ENUM('object', 'template', 'external_object') DEFAULT NULL,
disabled ENUM('y', 'n') DEFAULT NULL,
zone VARCHAR(255) DEFAULT NULL,
host VARCHAR(255) DEFAULT NULL,
port SMALLINT UNSIGNED DEFAULT NULL,
log_duration VARCHAR(32) DEFAULT NULL,
apiuser VARCHAR(255) DEFAULT NULL,
imports TEXT DEFAULT NULL,
set_null TEXT DEFAULT NULL,
PRIMARY KEY (branch_uuid, uuid),
UNIQUE INDEX branch_object_name (branch_uuid, object_name),
INDEX search_object_name (object_name),
CONSTRAINT icinga_endpoint_branch
FOREIGN KEY branch (branch_uuid)
REFERENCES director_branch (uuid)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE branched_icinga_service (
uuid VARBINARY(16) NOT NULL,
branch_uuid VARBINARY(16) NOT NULL,
branch_created ENUM('y', 'n') NOT NULL DEFAULT 'n',
branch_deleted ENUM('y', 'n') NOT NULL DEFAULT 'n',
object_name VARCHAR(255) DEFAULT NULL,
object_type ENUM('object', 'template', 'apply') DEFAULT NULL,
disabled ENUM('y', 'n') DEFAULT NULL,
display_name VARCHAR(255) DEFAULT NULL,
host VARCHAR(255) DEFAULT NULL,
service_set VARCHAR(255) DEFAULT NULL,
check_command VARCHAR(255) DEFAULT NULL,
max_check_attempts MEDIUMINT UNSIGNED DEFAULT NULL,
check_period VARCHAR(255) DEFAULT NULL,
check_interval VARCHAR(8) DEFAULT NULL,
retry_interval VARCHAR(8) DEFAULT NULL,
check_timeout SMALLINT UNSIGNED DEFAULT NULL,
enable_notifications ENUM('y', 'n') DEFAULT NULL,
enable_active_checks ENUM('y', 'n') DEFAULT NULL,
enable_passive_checks ENUM('y', 'n') DEFAULT NULL,
enable_event_handler ENUM('y', 'n') DEFAULT NULL,
enable_flapping ENUM('y', 'n') DEFAULT NULL,
enable_perfdata ENUM('y', 'n') DEFAULT NULL,
event_command VARCHAR(255) DEFAULT NULL,
flapping_threshold_high SMALLINT UNSIGNED DEFAULT NULL,
flapping_threshold_low SMALLINT UNSIGNED DEFAULT NULL,
volatile ENUM('y', 'n') DEFAULT NULL,
zone VARCHAR(255) DEFAULT NULL,
command_endpoint VARCHAR(255) DEFAULT NULL,
notes TEXT DEFAULT NULL,
notes_url VARCHAR(255) DEFAULT NULL,
action_url VARCHAR(255) DEFAULT NULL,
icon_image VARCHAR(255) DEFAULT NULL,
icon_image_alt VARCHAR(255) DEFAULT NULL,
use_agent ENUM('y', 'n') DEFAULT NULL,
apply_for VARCHAR(255) DEFAULT NULL,
use_var_overrides ENUM('y', 'n') DEFAULT NULL,
assign_filter TEXT DEFAULT NULL,
-- template_choice VARCHAR(255) DEFAULT NULL,
imports TEXT DEFAULT NULL,
`groups` TEXT DEFAULT NULL,
vars MEDIUMTEXT DEFAULT NULL,
set_null TEXT DEFAULT NULL,
PRIMARY KEY (branch_uuid, uuid),
INDEX search_object_name (object_name),
INDEX search_display_name (display_name),
CONSTRAINT icinga_service_branch
FOREIGN KEY branch (branch_uuid)
REFERENCES director_branch (uuid)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE branched_icinga_notification (
uuid VARBINARY(16) NOT NULL,
branch_uuid VARBINARY(16) NOT NULL,
branch_created ENUM('y', 'n') NOT NULL DEFAULT 'n',
branch_deleted ENUM('y', 'n') NOT NULL DEFAULT 'n',
object_name VARCHAR(255) DEFAULT NULL,
object_type ENUM('object', 'template', 'apply') DEFAULT NULL,
disabled ENUM('y', 'n') DEFAULT NULL,
apply_to ENUM('host', 'service') DEFAULT NULL,
host VARCHAR(255) DEFAULT NULL,
service VARCHAR(255) DEFAULT NULL,
times_begin INT(10) UNSIGNED DEFAULT NULL,
times_end INT(10) UNSIGNED DEFAULT NULL,
notification_interval INT(10) UNSIGNED DEFAULT NULL,
command VARCHAR(255) DEFAULT NULL,
period VARCHAR(255) DEFAULT NULL,
zone VARCHAR(255) DEFAULT NULL,
assign_filter TEXT DEFAULT NULL,
states TEXT DEFAULT NULL,
types TEXT DEFAULT NULL,
users TEXT DEFAULT NULL,
usergroups TEXT DEFAULT NULL,
imports TEXT DEFAULT NULL,
vars MEDIUMTEXT DEFAULT NULL,
set_null TEXT DEFAULT NULL,
PRIMARY KEY (branch_uuid, uuid),
UNIQUE INDEX branch_object_name (branch_uuid, object_name),
INDEX search_object_name (object_name),
CONSTRAINT icinga_notification_branch
FOREIGN KEY branch (branch_uuid)
REFERENCES director_branch (uuid)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE branched_icinga_scheduled_downtime (
uuid VARBINARY(16) NOT NULL,
branch_uuid VARBINARY(16) NOT NULL,
branch_created ENUM('y', 'n') NOT NULL DEFAULT 'n',
branch_deleted ENUM('y', 'n') NOT NULL DEFAULT 'n',
object_name VARCHAR(255) DEFAULT NULL,
zone VARCHAR(255) DEFAULT NULL,
object_type ENUM('object', 'template', 'apply') DEFAULT NULL,
disabled ENUM('y', 'n') DEFAULT NULL,
apply_to ENUM('host', 'service') DEFAULT NULL,
assign_filter TEXT DEFAULT NULL,
author VARCHAR(255) DEFAULT NULL,
comment TEXT DEFAULT NULL,
fixed ENUM('y', 'n') DEFAULT NULL,
duration INT(10) UNSIGNED DEFAULT NULL,
with_services ENUM('y', 'n') NULL DEFAULT NULL,
imports TEXT DEFAULT NULL,
ranges TEXT DEFAULT NULL,
set_null TEXT DEFAULT NULL,
PRIMARY KEY (branch_uuid, uuid),
UNIQUE INDEX branch_object_name (branch_uuid, object_name),
INDEX search_object_name (object_name),
CONSTRAINT icinga_scheduled_downtime_branch
FOREIGN KEY branch (branch_uuid)
REFERENCES director_branch (uuid)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE branched_icinga_dependency (
uuid VARBINARY(16) NOT NULL,
branch_uuid VARBINARY(16) NOT NULL,
branch_created ENUM('y', 'n') NOT NULL DEFAULT 'n',
branch_deleted ENUM('y', 'n') NOT NULL DEFAULT 'n',
object_name VARCHAR(255) DEFAULT NULL,
object_type ENUM('object', 'template', 'apply') DEFAULT NULL,
disabled ENUM('y', 'n') DEFAULT NULL,
apply_to ENUM('host', 'service') DEFAULT NULL,
parent_host VARCHAR(255) DEFAULT NULL,
parent_host_var VARCHAR(128) DEFAULT NULL,
parent_service VARCHAR(255) DEFAULT NULL,
child_host VARCHAR(255) DEFAULT NULL,
child_service VARCHAR(255) DEFAULT NULL,
disable_checks ENUM('y', 'n') DEFAULT NULL,
disable_notifications ENUM('y', 'n') DEFAULT NULL,
ignore_soft_states ENUM('y', 'n') DEFAULT NULL,
period VARCHAR(255) DEFAULT NULL,
zone VARCHAR(255) DEFAULT NULL,
assign_filter TEXT DEFAULT NULL,
parent_service_by_name VARCHAR(255) DEFAULT NULL,
imports TEXT DEFAULT NULL,
set_null TEXT DEFAULT NULL,
PRIMARY KEY (branch_uuid, uuid),
UNIQUE INDEX branch_object_name (branch_uuid, object_name),
INDEX search_object_name (object_name),
CONSTRAINT icinga_dependency_branch
FOREIGN KEY branch (branch_uuid)
REFERENCES director_branch (uuid)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO director_schema_migration
(schema_version, migration_time)
VALUES (175, NOW());