pub struct OciConfig {
pub user_id: String,
pub tenancy_id: String,
pub region: String,
pub fingerprint: String,
pub private_key: String,
pub compartment_id: Option<String>,
}Expand description
OCI configuration
Fields§
§user_id: StringUser ID (OCID format)
tenancy_id: StringTenancy ID (OCID format)
region: StringRegion (e.g., ap-seoul-1)
fingerprint: StringPrivate key fingerprint
private_key: StringPrivate key content (PEM format)
compartment_id: Option<String>Compartment ID (OCID format, optional - defaults to tenancy_id if not set)
Implementations§
Source§impl OciConfig
impl OciConfig
Sourcepub fn from_env() -> Result<Self>
pub fn from_env() -> Result<Self>
Load configuration from environment variables
§Priority (highest to lowest):
- Individual environment variables (OCI_USER_ID, etc.) - override everything
- OCI_CONFIG content (if set) - provides base values
- Error if required fields are missing
§Environment Variables
§Base configuration (lower priority):
OCI_CONFIG: INI content string or file path to OCI config file
§Override configuration (higher priority):
OCI_USER_ID: User ID (overrides value from OCI_CONFIG)OCI_TENANCY_ID: Tenancy ID (overrides value from OCI_CONFIG)OCI_REGION: Region (overrides value from OCI_CONFIG)OCI_FINGERPRINT: Private key fingerprint (overrides value from OCI_CONFIG)OCI_PRIVATE_KEY: Private key file path or PEM content (overrides key_file from OCI_CONFIG)OCI_COMPARTMENT_ID: Compartment ID (optional, defaults to tenancy_id)
§Private Key Loading
Private key is loaded in the following priority:
OCI_PRIVATE_KEYenvironment variable (if set) - file path or PEM contentkey_filefield fromOCI_CONFIG(if OCI_CONFIG is set and contains key_file)- Error if neither is available
Sourcepub fn builder() -> OciConfigBuilder
pub fn builder() -> OciConfigBuilder
Start builder pattern
Trait Implementations§
Auto Trait Implementations§
impl Freeze for OciConfig
impl RefUnwindSafe for OciConfig
impl Send for OciConfig
impl Sync for OciConfig
impl Unpin for OciConfig
impl UnwindSafe for OciConfig
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
Mutably borrows from an owned value. Read more