forked from Proxmox/proxmox
b421a7ca24
This shifts notification routing into the matcher-system. Every notification has associated metadata (key-value fields, severity - to be extended) that can be match with match directives in notification matchers. Right now, there are 2 matching directives, match-field and match-severity. The first one allows one to do a regex match/exact match on a metadata field, the other one allows one to match one or more severites. Every matcher also allows 'target' directives, these decide which target(s) will be notified if a matcher matches a notification. Since routing now happens in matchers, the API for sending is simplified, since we do not need to specify a target any more. The API routes for filters and groups have been removed completely. The parser for the configuration file will still accept filter/group entries, but will delete them once the config is saved again. This is needed to allow a smooth transition from the old system to the new system, since the old system was already available on pvetest. Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
33 lines
952 B
TOML
33 lines
952 B
TOML
[package]
|
|
name = "proxmox-notify"
|
|
version = "0.2.0"
|
|
authors.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
repository.workspace = true
|
|
exclude.workspace = true
|
|
|
|
[dependencies]
|
|
anyhow.workspace = true
|
|
handlebars = { workspace = true }
|
|
lazy_static.workspace = true
|
|
log.workspace = true
|
|
once_cell.workspace = true
|
|
openssl.workspace = true
|
|
proxmox-http = { workspace = true, features = ["client-sync"], optional = true }
|
|
proxmox-http-error.workspace = true
|
|
proxmox-human-byte.workspace = true
|
|
proxmox-serde.workspace = true
|
|
proxmox-schema = { workspace = true, features = ["api-macro", "api-types"]}
|
|
proxmox-section-config = { workspace = true }
|
|
proxmox-sys = { workspace = true, optional = true }
|
|
proxmox-time.workspace = true
|
|
regex.workspace = true
|
|
serde = { workspace = true, features = ["derive"]}
|
|
serde_json.workspace = true
|
|
|
|
[features]
|
|
default = ["sendmail", "gotify"]
|
|
sendmail = ["dep:proxmox-sys"]
|
|
gotify = ["dep:proxmox-http"]
|