pub struct Metadata {Show 33 fields
pub id: String,
pub name: String,
pub version: Version,
pub display_version: String,
pub category: MultiLanguageItem,
pub tagline: MultiLanguageItem,
pub developers: BTreeMap<String, String>,
pub description: MultiLanguageItem,
pub dependencies: Vec<Dependency>,
pub has_permissions: Vec<String>,
pub exposes_permissions: Vec<Permission>,
pub repos: BTreeMap<String, String>,
pub support: String,
pub gallery: Vec<String>,
pub icon: Option<String>,
pub path: Option<String>,
pub default_username: Option<String>,
pub default_password: Option<String>,
pub implements: Option<String>,
pub release_notes: BTreeMap<String, BTreeMap<String, String>>,
pub license: String,
pub settings: BTreeMap<String, SettingsDeclaration>,
pub volumes: HashMap<String, Volume>,
pub ports: Vec<u16>,
pub exported_data: Option<HashMap<String, HashMap<String, Value>>>,
pub runtime: Runtime,
pub type: AppType,
pub store_plugins: Vec<StorePlugin>,
pub ui_module: Option<UiModule>,
pub supports_ingress: bool,
pub allow_all_internal_ingress: bool,
pub allow_ingress_from_ns: Vec<String>,
pub can_be_protected: bool,
}Fields§
§id: StringThe app id
name: StringThe name of the app
version: VersionThe version of the app
display_version: StringThe version of the app to display
category: MultiLanguageItemThe category for the app
tagline: MultiLanguageItemA short tagline for the app
developers: BTreeMap<String, String>Developer name -> their website
description: MultiLanguageItemA description of the app
dependencies: Vec<Dependency>Dependencies the app requires
has_permissions: Vec<String>Permissions the app has If a permission is from an app that is not listed in the dependencies, it is considered optional
exposes_permissions: Vec<Permission>Permissions this app exposes
repos: BTreeMap<String, String>App repository name -> repo URL
support: StringA support link for the app
gallery: Vec<String>A list of promo images for the apps
icon: Option<String>The URL to the app icon
path: Option<String>The path the “Open” link on the dashboard should lead to
default_username: Option<String>The app’s default username
default_password: Option<String>The app’s default password.
implements: Option<String>For “virtual” apps, the service the app implements
release_notes: BTreeMap<String, BTreeMap<String, String>>§license: StringThe SPDX identifier of the app license
settings: BTreeMap<String, SettingsDeclaration>Available settings for this app, directly copied from settings.json
volumes: HashMap<String, Volume>Volumes this app exposes
ports: Vec<u16>Ports this app uses Before installing, app-manager clients need to check if any of these ports are already in use by other apps If so, the user needs to be notified
exported_data: Option<HashMap<String, HashMap<String, Value>>>Exported data shared with plugins (Map plugin -> data)
runtime: RuntimeThe runtime this app uses
type: AppTypeThe type of this app (app/library) - Library is anything that does not have a frontend
store_plugins: Vec<StorePlugin>§ui_module: Option<UiModule>§supports_ingress: boolWhether the app supports ingress This is declared by app-manager based on whether an app’s ingress vec is empty, setting it during generation has no effect
allow_all_internal_ingress: boolWhether to allow all cluster-internal ingress to this app
allow_ingress_from_ns: Vec<String>§can_be_protected: boolWhether this app can be protected Please note: If the app type is not “App”, this field is ignored and will be treated as if it were false
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Metadata
impl<'de> Deserialize<'de> for Metadata
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for Metadata
impl StructuralPartialEq for Metadata
Auto Trait Implementations§
impl Freeze for Metadata
impl RefUnwindSafe for Metadata
impl Send for Metadata
impl Sync for Metadata
impl Unpin for Metadata
impl UnwindSafe for Metadata
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more