pub struct ServiceSettingsPayload {
pub renewal_window_hours: u16,
pub ca_bundle_hash: String,
pub capabilities: BTreeSet<Capability>,
pub report_page_limits: ReportPageLimits,
pub shutdown_timeout: Option<Duration>,
pub ping_interval: Duration,
pub tenant_id: Option<Uuid>,
}Expand description
Payload for service runtime settings pushed by the controller.
Used for both agents and MQTT services. shutdown_timeout is
present for agents and None for MQTT services.
Fields§
§renewal_window_hours: u16§ca_bundle_hash: String§capabilities: BTreeSet<Capability>Capabilities advertised by the controller.
The service computes the agreed set as the intersection of this set with its own capabilities, considering only typed (known) variants.
report_page_limits: ReportPageLimitsPer-page item-count limits for paginated service-to-controller reports.
Services must honor these limits when splitting large report_hosts,
discovery_results, version_check_results, and
batch_update_result payloads across pages.
shutdown_timeout: Option<Duration>Maximum time to wait for in-flight operations during shutdown. Present for agents, absent for MQTT services.
Wire field name: shutdown_timeout_seconds (kept for backward compatibility).
ping_interval: DurationHow often the service should send ping messages. Controller-managed; derived from per-service DB override or service-type default.
tenant_id: Option<Uuid>Tenant UUID that this service belongs to.
None for system services (MQTT, scheduler) which are not
tenant-scoped. Present for tenant-scoped agents so they can
include the tenant identity in external provisioning operations
(e.g. PVE API credential naming).
Trait Implementations§
Source§impl Clone for ServiceSettingsPayload
impl Clone for ServiceSettingsPayload
Source§fn clone(&self) -> ServiceSettingsPayload
fn clone(&self) -> ServiceSettingsPayload
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more