Struct warg_client::Config
source · 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,
}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 availabe in keyring
keyring_auth: boolWhether or not an auth key should be retreived from keyring
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.