Commit graph

66 commits

Author SHA1 Message Date
Johannes Meyer
3fe17336dc Escape semicolons in node names
fixes #312
2023-08-08 08:46:48 +02:00
Johannes Meyer
52c150c56b Use the new Sort trait where applicable
Moves the entire order processing to the renderers as that's
where it's mostly relevant. The only cases where nodes are
still ordered outside the rendering is where changes are
applied based on user input, which happened based on what's
been previously rendered.
2023-08-03 15:19:28 +02:00
Sukhwinder Dhillon
83194e4942 Drop support for external_info and extra_info flag 2023-07-19 13:34:39 +02:00
Sukhwinder Dhillon
be2473864b Introduce new XOR (^) operator 2023-07-13 10:19:08 +02:00
Sukhwinder Dhillon
ecdd51b6a0 LegacyConfigParser: Ignore empty lines in parseHeaderLine()
- Otherwise the index 0 of the empty line in elseif cannot be checked, which leads to an error
2023-07-12 11:26:14 +02:00
raviks789
3a7dc64a50
Fix storing of business process with Description having new lines (#339)
* Fix storing of business process with `Description` having new lines

The `LegacyConfigRenderer::renderHeader()` should render new lines in the `Description` field as comments.

This fix avoids occurrence of future issues due to new lines in `Description` field while adding or modifying the
business processes.

* Parse new lines in header

The new lines in header which may belong to the field like `Description` must be parsed correctly.
2022-09-14 09:53:54 +02:00
Johannes Meyer
6d3146f57a Revert "Merge pull request #320 from Icinga/re-add-php-diff-lib"
This reverts commit 9e9bcb578d, reversing
changes made to 5ccc13c862.
2022-03-24 14:54:03 +01:00
Johannes Meyer
96b28708af Revert "ConfigDiff: Utilize new php-diff library"
This reverts commit dde924e2b4.
2022-03-15 11:24:33 +01:00
Valentina Da Rold
b78983f539 Add Degraded operator implementation
Refs #298
2022-02-18 11:41:06 +01:00
Johannes Meyer
dde924e2b4 ConfigDiff: Utilize new php-diff library 2021-12-15 16:07:39 +01:00
Dirk Goetz
608842aeaa Add some AuditHooks
refs #289
2021-03-31 16:37:11 +02:00
Johannes Meyer
49ebbc4cdb Apply state overrides on demand instead of directly
Internally non-process children are only instantiated once.
This means when applying state overrides directly they're
used everywhere and do not differ between the containing
process. State overrides are now applied explicitly and
on demand, decoupling them from children.
2020-07-01 08:54:34 +02:00
Johannes Meyer
0c7fca926f config: Use an extra line to store state overrides
Storing overrides as part of a node's name leads to way too complicated
code. A separate field is not only better for compatibility but also
more straightforward to process.
2020-06-26 14:08:05 +02:00
Christian Menapace
98b6b2c6d0 Add Service Override 2020-06-26 11:32:09 +02:00
Johannes Meyer
144bcdf852 Remove space after reference operators 2020-02-26 09:19:31 +01:00
Johannes Meyer
c5d3127303 Storage: Properly escape and unescape names with operators
fixes #205
2019-02-28 10:58:06 +01:00
Johannes Meyer
40538c51ce LegacyStorage: Add cache to avoid parsing configurations multiple times 2019-02-25 12:42:52 +01:00
Johannes Meyer
75a3d1fd5e LegacyConfigParser: Restore ability to defer referenced process initialization 2019-02-22 12:26:24 +01:00
Johannes Meyer
8465bc0bc3 LegacyConfigParser: Establish parent-child relationships
This replaces commit d1f32c5 as this is the more efficient
and proper solution.

refs #134
2019-02-22 12:26:24 +01:00
Johannes Meyer
1a36e4d94a LegacyConfigRenderer: Don't render import sub-nodes 2019-02-22 12:26:24 +01:00
Johannes Meyer
00b88055f7 BpConfig: Delay processing of imported configurations
Solves the issue that two processes cannot import each other
2019-02-22 12:26:24 +01:00
Johannes Meyer
19ae300aca lib: Remove all traces of Icinga\Module\Businessprocess\Html
refs #130
2019-01-17 13:21:46 +01:00
Markus Frosch
5dfe4782ea LegacyConfigParser: Trim line in parseHeaderLine
To avoid whitespace and \r in header. Also supports DOS line endings.

fixes #136
2017-05-31 14:26:31 +02:00
Thomas Gelf
52dfd0ceaa LegacyConfigParser: trim header lines
fixes #136
2017-05-31 14:09:06 +02:00
Thomas Gelf
2023cae041 LegacyConfigParser: parse metadata from string
fixes #91
2017-01-27 10:02:35 +01:00
Thomas Gelf
051f9376b7 LegacyConfig: fix info_url parsing and rendering
fixes #71
2017-01-23 23:38:43 +01:00
Thomas Gelf
d87edba377 Just a couple of newlines to satisfy latest PSR2
...checks in phpcs
2017-01-11 23:56:17 +01:00
Thomas Gelf
56ab13d2b0 LegacyConfigRenderer: use correct helper...
...when rendering required process
2017-01-11 17:01:45 +01:00
Thomas Gelf
fc117217dd Storage: cosmetics 2017-01-11 17:01:34 +01:00
Thomas Gelf
22583aa083 BpConfig: renamed from BusinessProcess 2017-01-11 14:09:30 +01:00
Thomas Gelf
e26daca0f4 LegacyConfigRenderer: make some helpers static 2017-01-11 13:38:21 +01:00
Thomas Gelf
c52c970528 LegacyConfigParser: new parser class
Takes over and cleans up logic from LegacyStorage
2017-01-11 13:36:38 +01:00
Thomas Gelf
1acf06aaba Storage: fix method name 2017-01-11 12:57:38 +01:00
Thomas Gelf
a9331a1e05 LegacyConfigRenderer: move rendering to dedicated
...class, simplifies LegacyStorage
2017-01-11 12:00:20 +01:00
Thomas Gelf
a03feb03c5 Storage: clean up interface 2017-01-11 11:57:10 +01:00
Thomas Gelf
8770ff05ce ConfigDiff: just a newline at end of file 2017-01-03 11:29:19 +01:00
Thomas Gelf
047e9dd70d LegacyStorage: throw error on incomplete imports 2017-01-03 11:16:00 +01:00
Thomas Gelf
e385a8cab2 php-diff: replace vendor lib 2017-01-03 11:03:30 +01:00
Thomas Gelf
5443bd5b4e LegacyStorage: new list helper method 2016-12-26 11:43:32 +01:00
Thomas Gelf
0aeb3183f4 Node: remove toLegacyConfigString 2016-12-09 14:11:56 +01:00
Thomas Gelf
d24d0237f4 LegacyStorageTest: add a test targeting metadata 2016-12-09 14:03:49 +01:00
Thomas Gelf
7ddc54f828 Metadata: move "header" logic to a dedicated class 2016-12-09 09:58:00 +01:00
Thomas Gelf
a00fdab37f Cleanup, Url handling improvements, some helpers 2016-11-26 21:18:18 +01:00
Thomas Gelf
5189c79a27 LegacyStorage: split header handling 2016-11-23 15:17:25 +01:00
Thomas Gelf
9acdba0dc4 various: fix some phpcs PSR2 complaints 2016-11-23 15:17:25 +01:00
Thomas Gelf
a2fd587989 LegacyStorage: reorganize some methods 2016-11-23 15:17:25 +01:00
Thomas Gelf
f25f141820 LegacyStorage: be more conservative on pointers 2016-11-23 15:17:25 +01:00
Thomas Gelf
3332a06792 LegacyStorage: add hasProcess, respecting perms 2016-11-23 15:17:25 +01:00
Thomas Gelf
3efd53b97a LegacyStorage: add missing fclose 2016-11-23 15:17:25 +01:00
Thomas Gelf
91fca69566 LegacyStorage: permission check for process lists 2016-11-23 15:17:25 +01:00