Move vendor-neutral firewall and network types (FirewallAction, Direction,
IpProtocol, NetworkProtocol, VipMode, LaggProtocol) from harmony Score
modules to harmony_types::firewall as industry-standard IaC types.
Display impls use human-readable names (IPv4, CARP, LACP) — not wire
format. OPNsense-specific wire translations live in opnsense-api::wire
via the ToOPNsenseValue trait ("inet", "carp", "lacp").
Dependency chain: harmony_types → opnsense-api → opnsense-config → harmony.
Users import types from harmony_types, translations happen transparently
in the infrastructure layer.
Includes 6 new tests verifying all wire value translations.
26 lines
593 B
TOML
26 lines
593 B
TOML
[package]
|
|
name = "opnsense-api"
|
|
edition = "2024"
|
|
version.workspace = true
|
|
readme.workspace = true
|
|
license.workspace = true
|
|
|
|
[dependencies]
|
|
harmony_types = { path = "../harmony_types" }
|
|
reqwest.workspace = true
|
|
serde.workspace = true
|
|
serde_json.workspace = true
|
|
tokio.workspace = true
|
|
thiserror.workspace = true
|
|
log.workspace = true
|
|
env_logger.workspace = true
|
|
inquire.workspace = true
|
|
http.workspace = true
|
|
base64.workspace = true
|
|
|
|
[dev-dependencies]
|
|
tokio-test.workspace = true
|
|
pretty_assertions.workspace = true
|
|
opnsense-config = { path = "../opnsense-config" }
|
|
async-trait.workspace = true
|