Commit graph

14 commits

Author SHA1 Message Date
Alexander A. Klimov
3c8ed68cc6 Upgrade license from GPLv2 to GPLv2+
This was easy because only README.md and doc/01-About.md were redacted manually, everything else via:
git ls-files -z |xargs -0 perl -pi -e 's/Icinga GmbH \| GPLv2/Icinga GmbH | GPLv2+/'

This is legal because we have only merged PRs with label:cla/signed or made by Icinga staff:
https://github.com/Icinga/icingadb-web/pulls?page=1&q=is%3Apr+is%3Aclosed+-label%3Acla%2Fsigned+-author%3Anilmerg

This has no risk for us in people distributing their own version under GPLv3 only.
After all, we won't take their patches anyway, unless they sign our CLA.

This is the cleanest solution for having e.g. these in one address space:

* Icinga Web, GPLv2+
* K8s Web, AGPLv3
* Thirdparty, some LGPLv3 and Apache-2.0

Apropos, K8s Web is even v3-licensed on purpose, to have a stronger protection against cloud ops.
2025-11-21 13:31:24 +01:00
Johannes Meyer
5e982dad40
Merge commit from fork
* Auth: Add method `assertColumnRestrictions`

* ObjectSuggestions: Do not suggest protected variables

`assertColumnRestrictions` does not allow to use them
anymore, hence we should not suggest them in searches
as well to not to let the user run into an error by
accepting a suggestion. Though, when fetching values
as well, we still have to obfuscate, otherwise protected
vars won't show up in details anymore.

* Introduce Icinga\Module\Icingadb\Common\Model

Must be used as base for all models, to ensure
column restrictions are asserted on filters.

* Utilize `Icinga\Module\Icingadb\Common\Model` where applicable
2025-10-16 08:42:51 +02:00
Johannes Meyer
2a79f2fef2 UnreachableParent: Match unreachable services at the root
A service that has no parent but is unreachable, has a host
which marks it as such. In other words, an implicit dependency.

As long as we don't fully support implicit dependencies,
such a service must be shown as root problem. Otherwise,
the message about insufficient access rights is shown.
2025-03-31 17:10:41 +02:00
Sukhwinder Dhillon
41601abff7 (Host|Service)Controller: Sort parents children tab list by default to severity
- Disable the default sorting for the `$hasDependencyNode` and UnreachableParent's `$rootQuery`, as sort is not required here
and triggers an error, because the sort columns are not retrieved.
2025-01-22 13:44:32 +01:00
Johannes Meyer
0b51376820 UnreachableParent: Don't filter for group states
Since child edges of a group now have state as well,
filtering for the group's state is not required anymore.
2025-01-15 16:39:50 +01:00
Johannes Meyer
e5b499bbdb UnreachableParent: Eliminate duplicate nodes
Nodes might be referenced by multiple independent paths, which
might lead to the same root problem multiple times.
2025-01-15 16:39:50 +01:00
Johannes Meyer
c42d469293 UnreachableParent: Properly retrieve child_id with postgres 2025-01-15 15:44:21 +01:00
Johannes Meyer
c2549fa9eb UnreachableParent: Use driver specific types in CAST expressions 2025-01-15 15:02:41 +01:00
Johannes Meyer
e1ccc25961 UnreachableParent: Only fetch responsible nodes
A node is responsible if:

* it's a host which is reachable but has a problem
* it's a service which is reachable but has a problem
* it's a redundancy group which is reachable but has failed
2024-12-17 17:53:02 +01:00
Johannes Meyer
945eb5f9ae db: Update models to reflect latest schema updates 2024-12-17 17:50:42 +01:00
Sukhwinder Dhillon
299ca1f7d6 UnreachableParent: Fetch from_node_id column as child_id
This column is required to make prepare the path chain of root-problem
2024-12-17 17:35:30 +01:00
Sukhwinder Dhillon
1bcfbc5341 Introduce class RedundancyGroupDetail
rg-detail
2024-11-19 16:55:17 +01:00
raviks789
ee0a4fd961
UnreachableParent: Change parent class to DependencyNode 2024-10-31 09:46:52 +01:00
Johannes Meyer
fddc9cb7bc db: Introduce model to fetch unreachable parents 2024-10-08 16:30:04 +02:00