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: bool
Whether or not an auth key should be retreived from keyring
ignore_federation_hints: bool
Ignore registry hints provided by a warg server
disable_auto_accept_federation_hints: bool
Auto accept registry hint or ask the user to confirm
disable_auto_package_init: bool
Automatically attempt package initialize if does not exist or ask the user to confirm first
disable_interactive: bool
Disable 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.json
at 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 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