cloud_scanner_cli/cloud_provider.rs
1//! A module to abstract a service to list resources of a cloud account.
2use crate::model::Inventory;
3use anyhow::Result;
4use async_trait::async_trait;
5
6/// A trait that you should implement to support vendor-specific inventory of cloud resources.
7#[async_trait]
8pub trait Inventoriable {
9 /// Returns an inventory of cloud resources
10 async fn list_resources(
11 &self,
12 tags: &[String],
13 include_block_storage: bool,
14 ) -> Result<Inventory>;
15}