Expand description
Configuration and profile management for Redis CLI tools
This library provides a reusable configuration system for managing credentials and settings for Redis Cloud and Redis Enterprise deployments.
§Features
- Multiple named profiles for different Redis deployments
- Secure credential storage using OS keyring (optional)
- Environment variable expansion in config files
- Platform-specific config file locations
- Support for both Redis Cloud and Redis Enterprise
§Examples
§Loading Configuration
use redisctl_config::Config;
let config = Config::load()?;§Creating a Profile
use redisctl_config::{Config, Profile, DeploymentType, ProfileCredentials};
let profile = Profile {
deployment_type: DeploymentType::Cloud,
credentials: ProfileCredentials::Cloud {
api_key: "your-api-key".to_string(),
api_secret: "your-secret".to_string(),
api_url: "https://api.redislabs.com/v1".to_string(),
},
files_api_key: None,
resilience: None,
};
let mut config = Config::default();
config.set_profile("production".to_string(), profile);Re-exports§
pub use config::Config;pub use config::DeploymentType;pub use config::Profile;pub use config::ProfileCredentials;pub use credential::CredentialStorage;pub use credential::CredentialStore;pub use error::ConfigError;pub use error::Result;pub use resilience::ResilienceConfig;
Modules§
- config
- Configuration management for Redis CLI tools
- credential
- Credential storage abstraction with optional keyring support
- error
- Error types for redisctl-config
- resilience
- Resilience configuration for API clients