Commit graph

5 commits

Author SHA1 Message Date
Ravi Srinivasa
3d118e368b
Show correct notificiation upon adding new custom variables to the object 2026-05-15 13:41:01 +02:00
Ravi Srinivasa
3404ab9a43
multipart update fix with reload problem 2026-05-15 13:41:01 +02:00
Ravi Srinivasa
f7fa67450b
Dicitionary support with multipart update 2026-05-15 13:41:01 +02:00
Ravi Srinivasa
6d04bc9b0d
Add postgres support 2026-05-15 13:41:01 +02:00
Ravi Srinivasa
6198cd8d9b
Alternative custom property support with dictionary handling
Introduce a first-class DirectorProperty concept that extends the existing
data-fields model with rich, structured variable types. Custom variables can
now be defined globally under a new "Custom Variables" section and assigned
to Icinga objects (hosts, services, commands, etc.).

Supported types: string, number, boolean, fixed-array, dynamic-array,
datalist-strict, datalist-non-strict, fixed-dictionary, and
dynamic-dictionary (one level of nesting allowed).

Key changes:
  - DirectorProperty object with CRUD, inheritance, and apply-for rule support
  - New form elements: Dictionary, DictionaryItem, NestedDictionary,
    NestedDictionaryItem, ArrayElement, IplBoolean
  - CustomvarController for managing global property definitions
  - VariablesController for per-object variable assignment
  - BasketSnapshotCustomVariableResolver for basket import/export of properties
  - REST API: IcingaObjectHandler extended to expose and accept structured vars
  - IcingaConfigHelper: renders dictionaries/arrays to valid Icinga 2 DSL
  - CustomVarRenderer updated for icingadb hook display
  - DB migration upgrade_192.sql: new director_property and related tables
  - CLI: MigrateCommand for migrating legacy vars to properties;
    HostsCommand for bulk host custom variable management
2026-05-15 13:41:00 +02:00