Skip to content

Commit ffeb433

Browse files
committed
Fix the Config OpenAPI specification
- Include missing schemas in ConfigApiDocBuilder. - Use the correct path for users and raw_config schemas. - Avoid duplicate schema declarations. With these changes, the generated OpenAPI specification is valid.
1 parent c6986bd commit ffeb433

File tree

1 file changed

+37
-4
lines changed

1 file changed

+37
-4
lines changed

rust/agama-server/src/web/docs/config.rs

Lines changed: 37 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -91,21 +91,33 @@ impl ApiDocBuilder for ConfigApiDocBuilder {
9191
.schema_from::<agama_network::types::SSID>()
9292
.schema_from::<agama_network::types::Status>()
9393
.schema_from::<agama_network::types::LinkLocal>()
94+
.schema_from::<agama_utils::api::software::Config>()
9495
.schema_from::<agama_utils::api::software::AddonConfig>()
9596
.schema_from::<agama_utils::api::software::ProductConfig>()
97+
.schema_from::<agama_utils::api::software::SoftwareProposal>()
98+
.schema_from::<agama_utils::api::software::SelectedBy>()
99+
.schema_from::<agama_utils::api::software::Pattern>()
100+
.schema_from::<agama_utils::api::software::Repository>()
101+
.schema_from::<agama_utils::api::software::RegistrationInfo>()
102+
.schema_from::<agama_utils::api::software::AddonInfo>()
103+
.schema_from::<agama_utils::api::software::AddonRegistration>()
96104
.schema_from::<agama_utils::api::files::BaseScript>()
97105
.schema_from::<agama_utils::api::files::InitScript>()
98106
.schema_from::<agama_utils::api::files::PostPartitioningScript>()
99107
.schema_from::<agama_utils::api::files::PostScript>()
100108
.schema_from::<agama_utils::api::files::PreScript>()
101109
.schema_from::<agama_utils::api::files::Script>()
102110
.schema_from::<agama_utils::api::files::ScriptsConfig>()
111+
.schema_from::<agama_utils::api::files::Config>()
103112
.schema_from::<agama_utils::api::software::PatternsMap>()
104113
.schema_from::<agama_utils::api::software::PatternsConfig>()
105114
.schema_from::<agama_utils::api::software::SoftwareConfig>()
106115
.schema_from::<agama_utils::api::manager::LanguageTag>()
107116
.schema_from::<agama_utils::api::manager::License>()
108117
.schema_from::<agama_utils::api::manager::LicenseContent>()
118+
.schema_from::<agama_utils::api::manager::Product>()
119+
.schema_from::<agama_utils::api::manager::ProductMode>()
120+
.schema_from::<agama_utils::api::manager::HardwareInfo>()
109121
.schema_from::<agama_locale_data::KeymapId>()
110122
.schema_from::<agama_locale_data::LocaleId>()
111123
.schema_from::<agama_locale_data::TimezoneId>()
@@ -117,16 +129,39 @@ impl ApiDocBuilder for ConfigApiDocBuilder {
117129
.schema_from::<agama_utils::api::Patch>()
118130
.schema_from::<agama_utils::api::Progress>()
119131
.schema_from::<agama_utils::api::Proposal>()
132+
.schema_from::<agama_utils::api::hostname::Proposal>()
133+
.schema_from::<agama_utils::api::network::Proposal>()
134+
.schema_from::<agama_utils::api::software::Proposal>()
135+
.schema_from::<agama_utils::api::l10n::Proposal>()
120136
.schema_from::<agama_utils::api::Scope>()
121137
.schema_from::<agama_utils::api::Status>()
122138
.schema_from::<agama_utils::api::SystemInfo>()
139+
.schema_from::<agama_utils::api::manager::SystemInfo>()
140+
.schema_from::<agama_utils::api::hostname::SystemInfo>()
141+
.schema_from::<agama_utils::api::l10n::SystemInfo>()
142+
.schema_from::<agama_utils::api::software::SystemInfo>()
143+
.schema_from::<agama_utils::api::network::SystemInfo>()
144+
.schema_from::<agama_utils::api::s390::SystemInfo>()
145+
.schema_from::<agama_utils::api::bootloader::Config>()
146+
.schema_from::<agama_utils::api::hostname::Config>()
147+
.schema_from::<agama_utils::api::proxy::Config>()
148+
.schema_from::<agama_utils::api::security::Config>()
149+
.schema_from::<agama_utils::api::security::SSLFingerprint>()
150+
.schema_from::<agama_utils::api::security::SSLFingerprintAlgorithm>()
151+
.schema_from::<agama_utils::api::network::Config>()
152+
.schema_from::<agama_utils::api::iscsi::Config>()
153+
.schema_from::<agama_utils::api::users::Config>()
154+
.schema_from::<agama_utils::api::users::config::FirstUserConfig>()
155+
.schema_from::<agama_utils::api::users::config::RootUserConfig>()
156+
.schema_from::<agama_utils::api::users::config::UserPassword>()
157+
.schema_from::<agama_utils::api::s390::Config>()
158+
.schema_from::<agama_utils::api::RawConfig>()
123159
.schema_from::<agama_utils::api::l10n::Config>()
124160
.schema_from::<agama_utils::api::l10n::Keymap>()
125161
.schema_from::<agama_utils::api::l10n::LocaleEntry>()
126-
.schema_from::<agama_utils::api::l10n::Proposal>()
127162
.schema_from::<agama_utils::api::l10n::SystemConfig>()
128-
.schema_from::<agama_utils::api::l10n::SystemInfo>()
129163
.schema_from::<agama_utils::api::l10n::TimezoneEntry>()
164+
.schema_from::<agama_utils::api::l10n::Translations>()
130165
.schema_from::<agama_utils::api::network::AccessPoint>()
131166
.schema_from::<agama_utils::api::network::Device>()
132167
.schema_from::<agama_utils::api::network::Dhcp4Settings>()
@@ -146,8 +181,6 @@ impl ApiDocBuilder for ConfigApiDocBuilder {
146181
.schema_from::<agama_utils::api::network::NetworkConnection>()
147182
.schema_from::<agama_utils::api::network::NetworkConnectionWithState>()
148183
.schema_from::<agama_utils::api::network::NetworkConnectionsCollection>()
149-
.schema_from::<agama_utils::api::network::NetworkSettings>()
150-
.schema_from::<agama_utils::api::network::NetworkSettings>()
151184
.schema_from::<agama_utils::api::network::StateSettings>()
152185
.schema_from::<agama_utils::api::network::VlanSettings>()
153186
.schema_from::<agama_utils::api::network::WirelessSettings>()

0 commit comments

Comments
 (0)