use model_derive::model; use serde::{Deserialize, Serialize}; use std::collections::HashMap; use crate::modeled_types::Identifier; use crate::{ AutoScalingSettings, AwsSettings, BootSettings, BootstrapContainer, CloudFormationSettings, DnsSettings, ECSSettings, HostContainer, KernelSettings, MetricsSettings, NetworkSettings, NtpSettings, OciHooks, PemCertificate, RegistrySettings, UpdatesSettings, }; // Note: we have to use 'rename' here because the top-level Settings structure is the only one // that uses its name in serialization; internal structures use the field name that points to it #[model(rename = "settings", impl_default = true)] struct Settings { motd: String, updates: UpdatesSettings, host_containers: HashMap, bootstrap_containers: HashMap, ntp: NtpSettings, network: NetworkSettings, kernel: KernelSettings, boot: BootSettings, aws: AwsSettings, ecs: ECSSettings, metrics: MetricsSettings, pki: HashMap, container_registry: RegistrySettings, oci_hooks: OciHooks, cloudformation: CloudFormationSettings, autoscaling: AutoScalingSettings, dns: DnsSettings, }