Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 38 additions & 4 deletions rust/agama-server/src/web/docs/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -91,21 +91,33 @@ impl ApiDocBuilder for ConfigApiDocBuilder {
.schema_from::<agama_network::types::SSID>()
.schema_from::<agama_network::types::Status>()
.schema_from::<agama_network::types::LinkLocal>()
.schema_from::<agama_utils::api::software::Config>()
.schema_from::<agama_utils::api::software::AddonConfig>()
.schema_from::<agama_utils::api::software::ProductConfig>()
.schema_from::<agama_utils::api::software::SoftwareProposal>()
.schema_from::<agama_utils::api::software::SelectedBy>()
.schema_from::<agama_utils::api::software::Pattern>()
.schema_from::<agama_utils::api::software::Repository>()
.schema_from::<agama_utils::api::software::RegistrationInfo>()
.schema_from::<agama_utils::api::software::AddonInfo>()
.schema_from::<agama_utils::api::software::AddonRegistration>()
.schema_from::<agama_utils::api::files::BaseScript>()
.schema_from::<agama_utils::api::files::InitScript>()
.schema_from::<agama_utils::api::files::PostPartitioningScript>()
.schema_from::<agama_utils::api::files::PostScript>()
.schema_from::<agama_utils::api::files::PreScript>()
.schema_from::<agama_utils::api::files::Script>()
.schema_from::<agama_utils::api::files::ScriptsConfig>()
.schema_from::<agama_utils::api::files::Config>()
.schema_from::<agama_utils::api::software::PatternsMap>()
.schema_from::<agama_utils::api::software::PatternsConfig>()
.schema_from::<agama_utils::api::software::SoftwareConfig>()
.schema_from::<agama_utils::api::manager::LanguageTag>()
.schema_from::<agama_utils::api::manager::License>()
.schema_from::<agama_utils::api::manager::LicenseContent>()
.schema_from::<agama_utils::api::manager::Product>()
.schema_from::<agama_utils::api::manager::ProductMode>()
.schema_from::<agama_utils::api::manager::HardwareInfo>()
.schema_from::<agama_locale_data::KeymapId>()
.schema_from::<agama_locale_data::LocaleId>()
.schema_from::<agama_locale_data::TimezoneId>()
Expand All @@ -117,16 +129,39 @@ impl ApiDocBuilder for ConfigApiDocBuilder {
.schema_from::<agama_utils::api::Patch>()
.schema_from::<agama_utils::api::Progress>()
.schema_from::<agama_utils::api::Proposal>()
.schema_from::<agama_utils::api::hostname::Proposal>()
.schema_from::<agama_utils::api::network::Proposal>()
.schema_from::<agama_utils::api::software::Proposal>()
.schema_from::<agama_utils::api::l10n::Proposal>()
.schema_from::<agama_utils::api::Scope>()
.schema_from::<agama_utils::api::Status>()
.schema_from::<agama_utils::api::SystemInfo>()
.schema_from::<agama_utils::api::manager::SystemInfo>()
.schema_from::<agama_utils::api::hostname::SystemInfo>()
.schema_from::<agama_utils::api::l10n::SystemInfo>()
.schema_from::<agama_utils::api::software::SystemInfo>()
.schema_from::<agama_utils::api::network::SystemInfo>()
.schema_from::<agama_utils::api::s390::SystemInfo>()
.schema_from::<agama_utils::api::bootloader::Config>()
.schema_from::<agama_utils::api::hostname::Config>()
.schema_from::<agama_utils::api::proxy::Config>()
.schema_from::<agama_utils::api::security::Config>()
.schema_from::<agama_utils::api::security::SSLFingerprint>()
.schema_from::<agama_utils::api::security::SSLFingerprintAlgorithm>()
.schema_from::<agama_utils::api::network::Config>()
.schema_from::<agama_utils::api::iscsi::Config>()
.schema_from::<agama_utils::api::users::Config>()
.schema_from::<agama_utils::api::users::config::FirstUserConfig>()
.schema_from::<agama_utils::api::users::config::RootUserConfig>()
.schema_from::<agama_utils::api::users::config::UserPassword>()
.schema_from::<agama_utils::api::s390::Config>()
.schema_from::<agama_utils::api::RawConfig>()
.schema_from::<agama_utils::api::l10n::Config>()
.schema_from::<agama_utils::api::l10n::Keymap>()
.schema_from::<agama_utils::api::l10n::LocaleEntry>()
.schema_from::<agama_utils::api::l10n::Proposal>()
.schema_from::<agama_utils::api::l10n::SystemConfig>()
.schema_from::<agama_utils::api::l10n::SystemInfo>()
.schema_from::<agama_utils::api::l10n::TimezoneEntry>()
.schema_from::<agama_utils::api::l10n::Translations>()
.schema_from::<agama_utils::api::network::AccessPoint>()
.schema_from::<agama_utils::api::network::Device>()
.schema_from::<agama_utils::api::network::Dhcp4Settings>()
Expand All @@ -146,8 +181,6 @@ impl ApiDocBuilder for ConfigApiDocBuilder {
.schema_from::<agama_utils::api::network::NetworkConnection>()
.schema_from::<agama_utils::api::network::NetworkConnectionWithState>()
.schema_from::<agama_utils::api::network::NetworkConnectionsCollection>()
.schema_from::<agama_utils::api::network::NetworkSettings>()
.schema_from::<agama_utils::api::network::NetworkSettings>()
.schema_from::<agama_utils::api::network::StateSettings>()
.schema_from::<agama_utils::api::network::VlanSettings>()
.schema_from::<agama_utils::api::network::WirelessSettings>()
Expand All @@ -160,6 +193,7 @@ impl ApiDocBuilder for ConfigApiDocBuilder {
.schema_from::<agama_utils::api::question::QuestionSpec>()
.schema_from::<agama_utils::api::question::SelectionOption>()
.schema_from::<agama_utils::api::question::UpdateQuestion>()
.schema_from::<agama_utils::api::storage::Config>()
.schema_from::<agama_utils::api::software::RepositoryConfig>()
.schema_from::<agama_utils::api::status::Stage>()
.schema_from::<agama_utils::api::query::SolveStorageModel>()
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/bootloader.rs
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, Serialize, Deserialize, Default, Merge, utoipa::ToSchema)]
#[serde(rename_all = "camelCase")]
#[merge(strategy = merge::option::overwrite_none)]
#[schema(as = bootloader::Config)]
pub struct Config {
/// Whether bootloader should stop on boot menu.
#[serde(skip_serializing_if = "Option::is_none")]
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/files/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ use crate::api::files::{
};

#[derive(Clone, Debug, Default, Serialize, Deserialize, Merge, utoipa::ToSchema)]
#[schema(as = files::Config)]
pub struct Config {
#[serde(skip_serializing_if = "Option::is_none")]
#[merge(strategy = merge::option::overwrite_none)]
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/hostname/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ use serde::{Deserialize, Serialize};
/// Hostname config.
#[derive(Clone, Debug, Default, Merge, Serialize, Deserialize, PartialEq, utoipa::ToSchema)]
#[serde(rename_all = "camelCase")]
#[schema(as = hostname::Config)]
pub struct Config {
#[serde(skip_serializing_if = "Option::is_none")]
#[merge(strategy = merge::option::overwrite_none)]
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/hostname/proposal.rs
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ use serde::{Deserialize, Serialize};

/// Describes what Agama proposes for the target system.
#[derive(Clone, Debug, Deserialize, Serialize, utoipa::ToSchema)]
#[schema(as = hostname::Proposal)]
pub struct Proposal {
#[serde(skip_serializing_if = "Option::is_none")]
pub r#static: Option<String>,
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/hostname/system_info.rs
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ use serde::{Deserialize, Serialize};

/// Describes the current system hostname information
#[derive(Clone, Debug, PartialEq, Deserialize, Serialize, utoipa::ToSchema)]
#[schema(as = hostname::SystemInfo)]
pub struct SystemInfo {
#[serde(skip_serializing_if = "Option::is_none")]
pub r#static: Option<String>,
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/iscsi/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ use serde_json::Value;

#[derive(Clone, Debug, Default, Serialize, Deserialize, PartialEq, Eq, utoipa::ToSchema)]
#[serde(transparent)]
#[schema(as = iscsi::Config)]
pub struct Config(pub Value);

impl Merge for Config {
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/l10n/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ use serde::{Deserialize, Serialize};
/// Localization config.
#[derive(Clone, Debug, Default, Serialize, Deserialize, PartialEq, Merge, utoipa::ToSchema)]
#[serde(rename_all = "camelCase")]
#[schema(as = l10n::Config)]
pub struct Config {
/// Locale (e.g., "en_US.UTF-8").
#[serde(skip_serializing_if = "Option::is_none")]
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/l10n/proposal.rs
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ use serde_with::{serde_as, DisplayFromStr};
/// Describes what Agama proposes for the target system.
#[serde_as]
#[derive(Clone, Debug, Deserialize, Serialize, utoipa::ToSchema)]
#[schema(as = l10n::Proposal)]
pub struct Proposal {
/// Keymap (e.g., "us", "cz(qwerty)", etc.).
#[serde_as(as = "DisplayFromStr")]
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/l10n/system_config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
use serde::{Deserialize, Serialize};

#[derive(Clone, Debug, Serialize, Deserialize, utoipa::ToSchema)]
#[schema(as = l10n::SystemConfig)]
pub struct SystemConfig {
pub locale: Option<String>,
pub keymap: Option<String>,
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/l10n/system_info.rs
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ use serde_with::{serde_as, DisplayFromStr};
/// Localization-related information of the system where the installer is running.
#[serde_as]
#[derive(Clone, Default, Debug, Serialize, utoipa::ToSchema)]
#[schema(as = l10n::SystemInfo)]
pub struct SystemInfo {
/// List of know locales.
pub locales: Vec<LocaleEntry>,
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/manager/system_info.rs
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ use serde::Serialize;

/// Global information of the system where the installer is running.
#[derive(Clone, Debug, Default, Serialize, utoipa::ToSchema)]
#[schema(as = manager::SystemInfo)]
pub struct SystemInfo {
/// List of known products.
pub products: Vec<Product>,
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/network/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ use std::default::Default;
/// Network config settings for installation
#[derive(Clone, Debug, Default, Serialize, Deserialize, Merge, utoipa::ToSchema)]
#[serde(rename_all = "camelCase")]
#[schema(as = network::Config)]
pub struct Config {
/// Connections to use in the installation
#[serde(skip_serializing_if = "Option::is_none")]
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/network/proposal.rs
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ use std::default::Default;
/// Network proposal settings for installation
#[derive(Clone, Debug, Default, Serialize, Deserialize, utoipa::ToSchema)]
#[serde(rename_all = "camelCase")]
#[schema(as = network::Proposal)]
pub struct Proposal {
/// Connections to use in the installation
pub connections: NetworkConnectionsCollection,
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/network/system_info.rs
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ use std::default::Default;
/// Network settings for installation
#[derive(Clone, Debug, Default, Serialize, Deserialize, utoipa::ToSchema)]
#[serde(rename_all = "camelCase")]
#[schema(as = network::SystemInfo)]
pub struct SystemInfo {
pub access_points: Vec<AccessPoint>, // networks or access_points shold be returned
/// Connections to use in the installation
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/proxy/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ use serde::{Deserialize, Serialize};
/// Proxy config.
#[derive(Clone, Debug, Default, Merge, Serialize, Deserialize, PartialEq, utoipa::ToSchema)]
#[serde(rename_all = "camelCase")]
#[schema(as = proxy::Config)]
pub struct Config {
#[serde(skip_serializing_if = "Option::is_none")]
#[merge(strategy = merge::option::overwrite_none)]
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/question.rs
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ pub enum Error {
/// Questions configuration.
#[derive(Clone, Debug, Default, Serialize, Deserialize, Merge, utoipa::ToSchema)]
#[serde(rename_all = "camelCase")]
#[schema(as = questions::Config)]
pub struct Config {
#[serde(skip_serializing_if = "Option::is_none")]
#[merge(strategy = merge::option::overwrite_none)]
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/s390/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ use serde_with::skip_serializing_none;
#[derive(Clone, Debug, Default, Deserialize, Serialize, Merge, utoipa::ToSchema)]
#[serde(rename_all = "camelCase")]
#[merge(strategy = merge::option::recurse)]
#[schema(as = s390::Config)]
/// s390 configuration.
pub struct Config {
/// Configuration of the DASD devices.
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/s390/system_info.rs
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ use serde_with::skip_serializing_none;
#[skip_serializing_none]
#[derive(Clone, Debug, Serialize, utoipa::ToSchema)]
#[serde(rename_all = "camelCase")]
#[schema(as = s390::SystemInfo)]
pub struct SystemInfo {
pub dasd: Option<Value>,
}
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/security.rs
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ use serde::{Deserialize, Deserializer, Serialize};
/// Security settings for installation
#[derive(Clone, Debug, Default, Serialize, Deserialize, Merge, utoipa::ToSchema)]
#[serde(rename_all = "camelCase")]
#[schema(as = security::Config)]
pub struct Config {
/// List of user selected patterns to install.
#[serde(skip_serializing_if = "Option::is_none")]
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/software/proposal.rs
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ pub struct SoftwareProposal {
/// Describes what Agama proposes for the target system.
#[derive(Clone, Default, Debug, Deserialize, Serialize, utoipa::ToSchema)]
#[serde(rename_all = "camelCase")]
#[schema(as = software::Proposal)]
pub struct Proposal {
/// Software specific proposal
#[serde(flatten, skip_serializing_if = "Option::is_none")]
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/software/system_info.rs
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ use serde_with::skip_serializing_none;
/// is running.
#[skip_serializing_none]
#[derive(Clone, Debug, Default, Serialize, utoipa::ToSchema)]
#[schema(as = software::SystemInfo)]
pub struct SystemInfo {
/// List of known patterns.
pub patterns: Vec<Pattern>,
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/storage/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ use serde_json::Value;

#[derive(Clone, Debug, Default, Serialize, Deserialize, utoipa::ToSchema)]
#[serde(rename_all = "camelCase")]
#[schema(as = storage::Config)]
pub struct Config {
#[serde(skip_serializing_if = "Option::is_none")]
pub storage: Option<Value>,
Expand Down
1 change: 1 addition & 0 deletions rust/agama-utils/src/api/users/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ use serde::{Deserialize, Serialize};
/// Holds the user settings for the installation.
#[derive(Clone, Debug, Default, Merge, Serialize, Deserialize, PartialEq, utoipa::ToSchema)]
#[serde(rename_all = "camelCase")]
#[schema(as = users::Config)]
pub struct Config {
#[merge(strategy = merge::option::overwrite_none)]
#[serde(rename = "user")]
Expand Down
6 changes: 6 additions & 0 deletions rust/package/agama.changes
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
-------------------------------------------------------------------
Thu Mar 5 07:14:07 UTC 2026 - Imobach Gonzalez Sosa <igonzalezsosa@suse.com>

- Fix the generation of the OpenAPI specification
(gh#agama-project/agama#2864).

-------------------------------------------------------------------
Wed Mar 4 07:03:28 UTC 2026 - Imobach Gonzalez Sosa <igonzalezsosa@suse.com>

Expand Down
Loading