pub struct Config {
pub home_url: Option<String>,
pub registries_dir: Option<PathBuf>,
pub content_dir: Option<PathBuf>,
pub namespace_map_path: Option<PathBuf>,
pub keys: IndexSet<String>,
pub keyring_auth: bool,
pub ignore_federation_hints: bool,
pub disable_auto_accept_federation_hints: bool,
pub disable_auto_package_init: bool,
pub disable_interactive: bool,
pub keyring_backend: Option<String>,
}Expand description
Represents the Warg client configuration.
Fields§
§home_url: Option<String>The home Warg registry server URL.
registries_dir: Option<PathBuf>The path to the top-level directory where per-registry information is stored.
This path is expected to be relative to the configuration file.
If None, the default of $CACHE_DIR/warg/registries is used, where
$CACHE_DIR is the platform-specific cache directory.
content_dir: Option<PathBuf>The path to the directory where package content is stored.
This path is expected to be relative to the configuration file.
If None, the default of $CACHE_DIR/warg/content is used, where
$CACHE_DIR is the platform-specific cache directory.
namespace_map_path: Option<PathBuf>The path to the directory where namespace map is stored.
This path is expected to be relative to the configuration file.
If None, the default of $CACHE_DIR/warg/namespaces is used, where
$CACHE_DIR is the platform-specific cache directory.
keys: IndexSet<String>List of creds available in keyring
keyring_auth: boolWhether or not an auth key should be retreived from keyring
ignore_federation_hints: boolIgnore registry hints provided by a warg server
disable_auto_accept_federation_hints: boolAuto accept registry hint or ask the user to confirm
disable_auto_package_init: boolAutomatically attempt package initialize if does not exist or ask the user to confirm first
disable_interactive: boolDisable interactive prompts.
keyring_backend: Option<String>Use the specified backend for keyring access.
Implementations§
Source§impl Config
impl Config
Sourcepub fn from_file(path: impl AsRef<Path>) -> Result<Self>
pub fn from_file(path: impl AsRef<Path>) -> Result<Self>
Reads the client configuration from the given file path.
Sourcepub fn write_to_file(&self, path: &Path) -> Result<()>
pub fn write_to_file(&self, path: &Path) -> Result<()>
Writes the client configuration to the given file path.
This function will normalize the paths in the configuration file to be relative to the configuration file’s directory.
Sourcepub fn from_default_file() -> Result<Option<Self>>
pub fn from_default_file() -> Result<Option<Self>>
Loads a client configuration from a default file path.
The following paths are checked in order:
warg-config.jsonat the current directory and its parents$CONFIG_DIR/warg/config.json
Where $CONFIG_DIR is the platform-specific configuration directory.
Returns Ok(None) if no configuration file was found.
Sourcepub fn default_config_path() -> Result<PathBuf>
pub fn default_config_path() -> Result<PathBuf>
Gets the path to the default configuration file.
The default configuration file is $CONFIG_DIR/warg/config.json,
Sourcepub fn registries_dir(&self) -> Result<PathBuf>
pub fn registries_dir(&self) -> Result<PathBuf>
Gets the path to the directory where per-registry packages are stored.
Sourcepub fn content_dir(&self) -> Result<PathBuf>
pub fn content_dir(&self) -> Result<PathBuf>
Gets the path to the directory where per-registry packages are stored.
Sourcepub fn namespace_map_path(&self) -> Result<PathBuf>
pub fn namespace_map_path(&self) -> Result<PathBuf>
Gets the path to the directory where namespace mapping is stored.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Config
impl<'de> Deserialize<'de> for Config
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>,
Auto Trait Implementations§
impl Freeze for Config
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnsafeUnpin for Config
impl UnwindSafe for Config
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<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