schemas_v1_api_storage - OmniCloudOrg/OmniOrchestrator GitHub Wiki

storage (src/schemas/v1/api)

Path: src/schemas/v1/api/storage.rs

Table of Contents

Public Items

struct StorageClassQuery

Definition

pub struct StorageClassQuery {
    pub storage_type: Option<String>,
    pub volume_binding_mode: Option<String>,
    pub allow_volume_expansion: Option<bool>,
}

Documentation

Query parameters for storage class listing

struct StorageVolumeQuery

Definition

pub struct StorageVolumeQuery {
    pub app_id: Option<i64>,
    pub storage_class_id: Option<i64>,
    pub status: Option<String>,
    pub node_id: Option<i64>,
    pub persistence_level: Option<String>,
    pub write_concern: Option<String>,
    pub page: Option<i64>,
    pub per_page: Option<i64>,
}

Documentation

Query parameters for storage volume listing

async fn list_storage_classes

Definition

pub async fn list_storage_classes(
    platform_id: i64,
    query: StorageClassQuery,
    db_manager: &State<Arc<DatabaseManager>>,
) -> Result<Json<Value>, (Status, Json<Value>)> {
    // ... function body
}

Documentation

List all storage classes with optional filtering

async fn get_storage_class

Definition

pub async fn get_storage_class(
    platform_id: i64,
    id: i64,
    db_manager: &State<Arc<DatabaseManager>>,
) -> Result<Json<Value>, (Status, Json<Value>)> {
    // ... function body
}

Documentation

Get a specific storage class by ID

async fn list_storage_volumes

Definition

pub async fn list_storage_volumes(
    platform_id: i64,
    query: StorageVolumeQuery,
    db_manager: &State<Arc<DatabaseManager>>,
) -> Result<Json<Value>, (Status, Json<Value>)> {
    // ... function body
}

Documentation

List storage volumes with comprehensive filtering

async fn get_volumes_by_storage_class

Definition

pub async fn get_volumes_by_storage_class(
    platform_id: i64,
    id: i64,
    page: Option<i64>,
    per_page: Option<i64>,
    db_manager: &State<Arc<DatabaseManager>>,
) -> Result<Json<Value>, (Status, Json<Value>)> {
    // ... function body
}

Documentation

Get volumes by storage class

async fn list_qos_policies

Definition

pub async fn list_qos_policies(
    platform_id: i64,
    db_manager: &State<Arc<DatabaseManager>>,
) -> Result<Json<Value>, (Status, Json<Value>)> {
    // ... function body
}

Documentation

Get QoS policies

async fn list_volumes_by_write_concern

Definition

pub async fn list_volumes_by_write_concern(
    platform_id: i64,
    write_concern: String,
    page: Option<i64>,
    per_page: Option<i64>,
    db_manager: &State<Arc<DatabaseManager>>,
) -> Result<Json<Value>, (Status, Json<Value>)> {
    // ... function body
}

Documentation

List volumes by write concern level

async fn list_volumes_by_persistence_level

Definition

pub async fn list_volumes_by_persistence_level(
    platform_id: i64,
    persistence_level: String,
    page: Option<i64>,
    per_page: Option<i64>,
    db_manager: &State<Arc<DatabaseManager>>,
) -> Result<Json<Value>, (Status, Json<Value>)> {
    // ... function body
}

Documentation

List volumes by persistence level

async fn get_volumes_for_region_route

Definition

pub async fn get_volumes_for_region_route(
    platform_id: i64,
    region_id: i64,
    page: Option<i64>,
    per_page: Option<i64>,
    db_manager: &State<Arc<DatabaseManager>>,
) -> Result<Json<Value>, (Status, Json<Value>)> {
    // ... function body
}

Documentation

Get storage volumes for a specific region, grouped by region, with pagination

async fn get_storage_volumes_for_provider

Definition

pub async fn get_storage_volumes_for_provider(
    platform_id: i64,
    provider_id: i64,
    page: Option<i64>,
    per_page: Option<i64>,
    db_manager: &State<Arc<DatabaseManager>>,
) -> Result<Json<Value>, (Status, Json<Value>)> {
    // ... function body
}

Documentation

Get storage volumes for a specific provider, with pagination

⚠️ **GitHub.com Fallback** ⚠️