mirror of
https://github.com/Icinga/icingaweb2-module-director.git
synced 2025-07-31 01:34:12 +02:00
IcingaObjects: add new "disabled" property
This commit is contained in:
parent
b22f12cf55
commit
5b3b5cbfb8
@ -15,6 +15,7 @@ class IcingaApiUser extends IcingaObject
|
||||
'id' => null,
|
||||
'object_name' => null,
|
||||
'object_type' => null,
|
||||
'disabled' => 'n',
|
||||
'password' => null,
|
||||
'client_dn' => null,
|
||||
'permissions' => null,
|
||||
|
@ -13,11 +13,12 @@ class IcingaCommand extends IcingaObject
|
||||
protected $defaultProperties = array(
|
||||
'id' => null,
|
||||
'object_name' => null,
|
||||
'object_type' => null,
|
||||
'disabled' => 'n',
|
||||
'methods_execute' => null,
|
||||
'command' => null,
|
||||
'timeout' => null,
|
||||
'zone_id' => null,
|
||||
'object_type' => null,
|
||||
);
|
||||
|
||||
protected $supportsCustomVars = true;
|
||||
|
@ -12,10 +12,11 @@ class IcingaEndpoint extends IcingaObject
|
||||
'id' => null,
|
||||
'zone_id' => null,
|
||||
'object_name' => null,
|
||||
'object_type' => null,
|
||||
'disabled' => 'n',
|
||||
'host' => null,
|
||||
'port' => null,
|
||||
'log_duration' => null,
|
||||
'object_type' => null,
|
||||
'apiuser_id' => null,
|
||||
);
|
||||
|
||||
|
@ -12,6 +12,8 @@ class IcingaHost extends IcingaObject
|
||||
protected $defaultProperties = array(
|
||||
'id' => null,
|
||||
'object_name' => null,
|
||||
'object_type' => null,
|
||||
'disabled' => 'n',
|
||||
'display_name' => null,
|
||||
'address' => null,
|
||||
'address6' => null,
|
||||
@ -36,7 +38,6 @@ class IcingaHost extends IcingaObject
|
||||
'action_url' => null,
|
||||
'icon_image' => null,
|
||||
'icon_image_alt' => null,
|
||||
'object_type' => null,
|
||||
'has_agent' => null,
|
||||
'master_should_connect' => null,
|
||||
'accept_config' => null,
|
||||
|
@ -11,7 +11,8 @@ class IcingaHostGroup extends IcingaObject
|
||||
protected $defaultProperties = array(
|
||||
'id' => null,
|
||||
'object_name' => null,
|
||||
'display_name' => null,
|
||||
'object_type' => null,
|
||||
'disabled' => 'n',
|
||||
'display_name' => null,
|
||||
);
|
||||
}
|
||||
|
@ -219,6 +219,11 @@ abstract class IcingaObject extends DbObject implements IcingaConfigRenderer
|
||||
}
|
||||
}
|
||||
|
||||
protected function setDisabled($disabled)
|
||||
{
|
||||
return parent::set($this->normalizeBoolean($disabled));
|
||||
}
|
||||
|
||||
public function markForRemoval($remove = true)
|
||||
{
|
||||
$this->shouldBeRemoved = $remove;
|
||||
@ -740,6 +745,12 @@ abstract class IcingaObject extends DbObject implements IcingaConfigRenderer
|
||||
}
|
||||
}
|
||||
|
||||
// Disabled is a virtual property
|
||||
protected function renderDisabled()
|
||||
{
|
||||
return '';
|
||||
}
|
||||
|
||||
protected function renderProperties()
|
||||
{
|
||||
$out = '';
|
||||
|
@ -9,6 +9,8 @@ class IcingaService extends IcingaObject
|
||||
protected $defaultProperties = array(
|
||||
'id' => null,
|
||||
'object_name' => null,
|
||||
'object_type' => null,
|
||||
'disabled' => 'n',
|
||||
'display_name' => null,
|
||||
'host_id' => null,
|
||||
'check_command_id' => null,
|
||||
@ -32,7 +34,6 @@ class IcingaService extends IcingaObject
|
||||
'action_url' => null,
|
||||
'icon_image' => null,
|
||||
'icon_image_alt' => null,
|
||||
'object_type' => null,
|
||||
'use_agent' => null,
|
||||
);
|
||||
|
||||
|
@ -11,7 +11,8 @@ class IcingaServiceGroup extends IcingaObject
|
||||
protected $defaultProperties = array(
|
||||
'id' => null,
|
||||
'object_name' => null,
|
||||
'display_name' => null,
|
||||
'object_type' => null,
|
||||
'disabled' => 'n',
|
||||
'display_name' => null,
|
||||
);
|
||||
}
|
||||
|
@ -10,9 +10,10 @@ class IcingaTimePeriod extends IcingaObject
|
||||
'id' => null,
|
||||
'zone_id' => null,
|
||||
'object_name' => null,
|
||||
'object_type' => null,
|
||||
'disabled' => 'n',
|
||||
'display_name' => null,
|
||||
'update_method' => null,
|
||||
'object_type' => null,
|
||||
);
|
||||
|
||||
protected $supportsImports = true;
|
||||
|
@ -9,13 +9,14 @@ class IcingaUser extends IcingaObject
|
||||
protected $defaultProperties = array(
|
||||
'id' => null,
|
||||
'object_name' => null,
|
||||
'object_type' => null,
|
||||
'disabled' => 'n',
|
||||
'display_name' => null,
|
||||
'email' => null,
|
||||
'pager' => null,
|
||||
'enable_notifications' => null,
|
||||
'period_id' => null,
|
||||
'zone_id' => null,
|
||||
'object_type' => null,
|
||||
);
|
||||
|
||||
protected $supportsGroups = true;
|
||||
|
@ -11,8 +11,9 @@ class IcingaUserGroup extends IcingaObject
|
||||
protected $defaultProperties = array(
|
||||
'id' => null,
|
||||
'object_name' => null,
|
||||
'display_name' => null,
|
||||
'object_type' => null,
|
||||
'disabled' => 'n',
|
||||
'display_name' => null,
|
||||
'zone_id' => null,
|
||||
);
|
||||
}
|
||||
|
@ -12,6 +12,7 @@ class IcingaZone extends IcingaObject
|
||||
'id' => null,
|
||||
'object_name' => null,
|
||||
'object_type' => null,
|
||||
'disabled' => 'n',
|
||||
'parent_id' => null,
|
||||
'is_global' => 'n',
|
||||
);
|
||||
|
37
schema/mysql-migrations/upgrade_65.sql
Normal file
37
schema/mysql-migrations/upgrade_65.sql
Normal file
@ -0,0 +1,37 @@
|
||||
ALTER TABLE icinga_zone
|
||||
ADD COLUMN disabled ENUM('y', 'n') NOT NULL DEFAULT 'n' AFTER object_type;
|
||||
|
||||
ALTER TABLE icinga_timeperiod
|
||||
ADD COLUMN disabled ENUM('y', 'n') NOT NULL DEFAULT 'n' AFTER object_type;
|
||||
|
||||
ALTER TABLE icinga_command
|
||||
ADD COLUMN disabled ENUM('y', 'n') NOT NULL DEFAULT 'n' AFTER object_type;
|
||||
|
||||
ALTER TABLE icinga_apiuser
|
||||
ADD COLUMN disabled ENUM('y', 'n') NOT NULL DEFAULT 'n' AFTER object_type;
|
||||
|
||||
ALTER TABLE icinga_endpoint
|
||||
ADD COLUMN disabled ENUM('y', 'n') NOT NULL DEFAULT 'n' AFTER object_type;
|
||||
|
||||
ALTER TABLE icinga_host
|
||||
ADD COLUMN disabled ENUM('y', 'n') NOT NULL DEFAULT 'n' AFTER object_type;
|
||||
|
||||
ALTER TABLE icinga_service
|
||||
ADD COLUMN disabled ENUM('y', 'n') NOT NULL DEFAULT 'n' AFTER object_type;
|
||||
|
||||
ALTER TABLE icinga_hostgroup
|
||||
ADD COLUMN disabled ENUM('y', 'n') NOT NULL DEFAULT 'n' AFTER object_type;
|
||||
|
||||
ALTER TABLE icinga_servicegroup
|
||||
ADD COLUMN disabled ENUM('y', 'n') NOT NULL DEFAULT 'n' AFTER object_type;
|
||||
|
||||
ALTER TABLE icinga_user
|
||||
ADD COLUMN disabled ENUM('y', 'n') NOT NULL DEFAULT 'n' AFTER object_type;
|
||||
|
||||
ALTER TABLE icinga_usergroup
|
||||
ADD COLUMN disabled ENUM('y', 'n') NOT NULL DEFAULT 'n' AFTER object_type;
|
||||
|
||||
INSERT INTO director_schema_migration
|
||||
SET migration_time = NOW(),
|
||||
schema_version = 65;
|
||||
|
@ -162,6 +162,7 @@ CREATE TABLE icinga_zone (
|
||||
parent_id INT(10) UNSIGNED DEFAULT NULL,
|
||||
object_name VARCHAR(255) NOT NULL,
|
||||
object_type ENUM('object', 'template', 'external_object') NOT NULL,
|
||||
disabled ENUM('y', 'n') NOT NULL DEFAULT 'n',
|
||||
is_global ENUM('y', 'n') NOT NULL DEFAULT 'n',
|
||||
PRIMARY KEY (id),
|
||||
UNIQUE INDEX object_name (object_name),
|
||||
@ -197,6 +198,7 @@ CREATE TABLE icinga_timeperiod (
|
||||
update_method VARCHAR(64) DEFAULT NULL COMMENT 'Usually LegacyTimePeriod',
|
||||
zone_id INT(10) UNSIGNED DEFAULT NULL,
|
||||
object_type ENUM('object', 'template') NOT NULL,
|
||||
disabled ENUM('y', 'n') NOT NULL DEFAULT 'n',
|
||||
PRIMARY KEY (id),
|
||||
UNIQUE INDEX object_name (object_name, zone_id),
|
||||
CONSTRAINT icinga_timeperiod_zone
|
||||
@ -243,14 +245,15 @@ CREATE TABLE icinga_timeperiod_range (
|
||||
CREATE TABLE icinga_command (
|
||||
id INT(10) UNSIGNED AUTO_INCREMENT NOT NULL,
|
||||
object_name VARCHAR(255) NOT NULL,
|
||||
object_type ENUM('object', 'template', 'external_object') NOT NULL
|
||||
COMMENT 'external_object is an attempt to work with existing commands',
|
||||
disabled ENUM('y', 'n') NOT NULL DEFAULT 'n',
|
||||
methods_execute VARCHAR(64) DEFAULT NULL,
|
||||
command TEXT DEFAULT NULL,
|
||||
-- env text DEFAULT NULL,
|
||||
-- vars text DEFAULT NULL,
|
||||
timeout SMALLINT UNSIGNED DEFAULT NULL,
|
||||
zone_id INT(10) UNSIGNED DEFAULT NULL,
|
||||
object_type ENUM('object', 'template', 'external_object') NOT NULL
|
||||
COMMENT 'external_object is an attempt to work with existing commands',
|
||||
PRIMARY KEY (id),
|
||||
UNIQUE INDEX object_name (object_name, zone_id),
|
||||
CONSTRAINT icinga_command_zone
|
||||
@ -335,6 +338,7 @@ CREATE TABLE icinga_apiuser (
|
||||
id INT(10) UNSIGNED AUTO_INCREMENT NOT NULL,
|
||||
object_name VARCHAR(255) NOT NULL,
|
||||
object_type ENUM('object', 'template', 'external_object') NOT NULL,
|
||||
disabled ENUM('y', 'n') NOT NULL DEFAULT 'n',
|
||||
password VARCHAR(255) DEFAULT NULL,
|
||||
client_dn VARCHAR(64) DEFAULT NULL,
|
||||
permissions TEXT DEFAULT NULL COMMENT 'JSON-encoded permissions',
|
||||
@ -345,10 +349,11 @@ CREATE TABLE icinga_endpoint (
|
||||
id INT(10) UNSIGNED AUTO_INCREMENT NOT NULL,
|
||||
zone_id INT(10) UNSIGNED DEFAULT NULL,
|
||||
object_name VARCHAR(255) NOT NULL,
|
||||
object_type ENUM('object', 'template', 'external_object') NOT NULL,
|
||||
disabled ENUM('y', 'n') NOT NULL DEFAULT 'n',
|
||||
host VARCHAR(255) DEFAULT NULL COMMENT 'IP address / hostname of remote node',
|
||||
port SMALLINT UNSIGNED DEFAULT NULL COMMENT '5665 if not set',
|
||||
log_duration VARCHAR(32) DEFAULT NULL COMMENT '1d if not set',
|
||||
object_type ENUM('object', 'template', 'external_object') NOT NULL,
|
||||
apiuser_id INT(10) UNSIGNED DEFAULT NULL,
|
||||
PRIMARY KEY (id),
|
||||
UNIQUE INDEX object_name (object_name),
|
||||
@ -385,6 +390,8 @@ CREATE TABLE icinga_endpoint_inheritance (
|
||||
CREATE TABLE icinga_host (
|
||||
id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
object_name VARCHAR(255) NOT NULL,
|
||||
object_type ENUM('object', 'template') NOT NULL,
|
||||
disabled ENUM('y', 'n') NOT NULL DEFAULT 'n',
|
||||
display_name VARCHAR(255) DEFAULT NULL,
|
||||
address VARCHAR(64) DEFAULT NULL,
|
||||
address6 VARCHAR(45) DEFAULT NULL,
|
||||
@ -409,7 +416,6 @@ CREATE TABLE icinga_host (
|
||||
action_url VARCHAR(255) DEFAULT NULL,
|
||||
icon_image VARCHAR(255) DEFAULT NULL,
|
||||
icon_image_alt VARCHAR(255) DEFAULT NULL,
|
||||
object_type ENUM('object', 'template') NOT NULL,
|
||||
has_agent ENUM('y', 'n') DEFAULT NULL,
|
||||
master_should_connect ENUM('y', 'n') DEFAULT NULL,
|
||||
accept_config ENUM('y', 'n') DEFAULT NULL,
|
||||
@ -495,6 +501,8 @@ CREATE TABLE icinga_host_var (
|
||||
CREATE TABLE icinga_service (
|
||||
id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
object_name VARCHAR(255) NOT NULL,
|
||||
object_type ENUM('object', 'template', 'apply') NOT NULL,
|
||||
disabled ENUM('y', 'n') NOT NULL DEFAULT 'n',
|
||||
display_name VARCHAR(255) DEFAULT NULL,
|
||||
host_id INT(10) UNSIGNED DEFAULT NULL,
|
||||
check_command_id INT(10) UNSIGNED DEFAULT NULL,
|
||||
@ -518,7 +526,6 @@ CREATE TABLE icinga_service (
|
||||
action_url VARCHAR(255) DEFAULT NULL,
|
||||
icon_image VARCHAR(255) DEFAULT NULL,
|
||||
icon_image_alt VARCHAR(255) DEFAULT NULL,
|
||||
object_type ENUM('object', 'template', 'apply') NOT NULL,
|
||||
use_agent ENUM('y', 'n') DEFAULT NULL,
|
||||
PRIMARY KEY (id),
|
||||
-- UNIQUE INDEX object_name (object_name, zone_id),
|
||||
@ -635,8 +642,9 @@ CREATE TABLE icinga_host_service (
|
||||
CREATE TABLE icinga_hostgroup (
|
||||
id INT(10) UNSIGNED AUTO_INCREMENT NOT NULL,
|
||||
object_name VARCHAR(255) NOT NULL,
|
||||
display_name VARCHAR(255) DEFAULT NULL,
|
||||
object_type ENUM('object', 'template') NOT NULL,
|
||||
disabled ENUM('y', 'n') NOT NULL DEFAULT 'n',
|
||||
display_name VARCHAR(255) DEFAULT NULL,
|
||||
PRIMARY KEY (id),
|
||||
UNIQUE INDEX object_name (object_name),
|
||||
KEY search_idx (display_name)
|
||||
@ -664,8 +672,9 @@ CREATE TABLE icinga_hostgroup_inheritance (
|
||||
CREATE TABLE icinga_servicegroup (
|
||||
id INT(10) UNSIGNED AUTO_INCREMENT NOT NULL,
|
||||
object_name VARCHAR(255) DEFAULT NULL,
|
||||
display_name VARCHAR(255) DEFAULT NULL,
|
||||
object_type ENUM('object', 'template') NOT NULL,
|
||||
disabled ENUM('y', 'n') NOT NULL DEFAULT 'n',
|
||||
display_name VARCHAR(255) DEFAULT NULL,
|
||||
PRIMARY KEY (id),
|
||||
UNIQUE INDEX object_name (object_name),
|
||||
KEY search_idx (display_name)
|
||||
@ -740,13 +749,14 @@ CREATE TABLE icinga_hostgroup_parent (
|
||||
CREATE TABLE icinga_user (
|
||||
id INT(10) UNSIGNED AUTO_INCREMENT NOT NULL,
|
||||
object_name VARCHAR(255) DEFAULT NULL,
|
||||
object_type ENUM('object', 'template') NOT NULL,
|
||||
disabled ENUM('y', 'n') NOT NULL DEFAULT 'n',
|
||||
display_name VARCHAR(255) DEFAULT NULL,
|
||||
email VARCHAR(255) DEFAULT NULL,
|
||||
pager VARCHAR(255) DEFAULT NULL,
|
||||
enable_notifications ENUM('y', 'n') DEFAULT NULL,
|
||||
period_id INT(10) UNSIGNED DEFAULT NULL,
|
||||
zone_id INT(10) UNSIGNED DEFAULT NULL,
|
||||
object_type ENUM('object', 'template') NOT NULL,
|
||||
PRIMARY KEY (id),
|
||||
UNIQUE INDEX object_name (object_name, zone_id),
|
||||
CONSTRAINT icinga_user_zone
|
||||
@ -834,9 +844,10 @@ CREATE TABLE icinga_user_var (
|
||||
CREATE TABLE icinga_usergroup (
|
||||
id INT(10) UNSIGNED AUTO_INCREMENT NOT NULL,
|
||||
object_name VARCHAR(255) NOT NULL,
|
||||
object_type ENUM('object', 'template') NOT NULL,
|
||||
disabled ENUM('y', 'n') NOT NULL DEFAULT 'n',
|
||||
display_name VARCHAR(255) DEFAULT NULL,
|
||||
zone_id INT(10) UNSIGNED DEFAULT NULL,
|
||||
object_type ENUM('object', 'template') NOT NULL,
|
||||
PRIMARY KEY (id),
|
||||
UNIQUE INDEX object_name (object_name, zone_id),
|
||||
KEY search_idx (display_name)
|
||||
|
Loading…
x
Reference in New Issue
Block a user