pub struct IpPools {
pub client: Client,
}
Fields§
§client: Client
Implementations§
Source§impl IpPools
impl IpPools
Sourcepub async fn get_page(
&self,
limit: u32,
page_token: &str,
sort_by: NameOrIdSortMode,
) -> Result<Vec<IpPool>>
pub async fn get_page( &self, limit: u32, page_token: &str, sort_by: NameOrIdSortMode, ) -> Result<Vec<IpPool>>
List IP pools.
This function performs a GET
to the /ip-pools
endpoint.
Parameters:
limit: u32
– Maximum number of items returned by a single call.page_token: &str
– Token returned by previous call to retrieve the subsequent page.sort_by: crate::types::NameOrIdSortMode
– Supported set of sort modes for scanning by name or id.
Sourcepub async fn get_all(&self, sort_by: NameOrIdSortMode) -> Result<Vec<IpPool>>
pub async fn get_all(&self, sort_by: NameOrIdSortMode) -> Result<Vec<IpPool>>
List IP pools.
This function performs a GET
to the /ip-pools
endpoint.
As opposed to get
, this function returns all the pages of the request at once.
Sourcepub async fn post(&self, body: &IpPoolCreate) -> Result<IpPool>
pub async fn post(&self, body: &IpPoolCreate) -> Result<IpPool>
Create an IP pool.
This function performs a POST
to the /ip-pools
endpoint.
Sourcepub async fn get_pool(&self, pool_name: &str) -> Result<IpPool>
pub async fn get_pool(&self, pool_name: &str) -> Result<IpPool>
Fetch an IP pool.
This function performs a GET
to the /ip-pools/{pool_name}
endpoint.
Parameters:
pool_name: &str
– Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
Sourcepub async fn put_pool(
&self,
pool_name: &str,
body: &IpPoolUpdate,
) -> Result<IpPool>
pub async fn put_pool( &self, pool_name: &str, body: &IpPoolUpdate, ) -> Result<IpPool>
Update an IP Pool.
This function performs a PUT
to the /ip-pools/{pool_name}
endpoint.
Parameters:
pool_name: &str
– Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
Sourcepub async fn delete_pool(&self, pool_name: &str) -> Result<()>
pub async fn delete_pool(&self, pool_name: &str) -> Result<()>
Delete an IP Pool.
This function performs a DELETE
to the /ip-pools/{pool_name}
endpoint.
Parameters:
pool_name: &str
– Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
Sourcepub async fn ranges_get(
&self,
limit: u32,
page_token: &str,
pool_name: &str,
) -> Result<Vec<IpPoolRange>>
pub async fn ranges_get( &self, limit: u32, page_token: &str, pool_name: &str, ) -> Result<Vec<IpPoolRange>>
List ranges for an IP pool.
This function performs a GET
to the /ip-pools/{pool_name}/ranges
endpoint.
Ranges are ordered by their first address.
Parameters:
pool_name: &str
– Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.limit: u32
– Maximum number of items returned by a single call.page_token: &str
– Token returned by previous call to retrieve the subsequent page.
Sourcepub async fn ranges_get_all(&self, pool_name: &str) -> Result<Vec<IpPoolRange>>
pub async fn ranges_get_all(&self, pool_name: &str) -> Result<Vec<IpPoolRange>>
List ranges for an IP pool.
This function performs a GET
to the /ip-pools/{pool_name}/ranges
endpoint.
As opposed to ranges_get
, this function returns all the pages of the request at once.
Ranges are ordered by their first address.
Sourcepub async fn ranges_add(
&self,
pool_name: &str,
body: &IpRange,
) -> Result<IpPoolRange>
pub async fn ranges_add( &self, pool_name: &str, body: &IpRange, ) -> Result<IpPoolRange>
Add a range to an IP pool.
This function performs a POST
to the /ip-pools/{pool_name}/ranges/add
endpoint.
Parameters:
pool_name: &str
– Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
Sourcepub async fn ranges_delete(&self, pool_name: &str, body: &IpRange) -> Result<()>
pub async fn ranges_delete(&self, pool_name: &str, body: &IpRange) -> Result<()>
Remove a range from an IP pool.
This function performs a POST
to the /ip-pools/{pool_name}/ranges/remove
endpoint.
Parameters:
pool_name: &str
– Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
Sourcepub async fn service_view(&self, rack_id: &str) -> Result<IpPool>
pub async fn service_view(&self, rack_id: &str) -> Result<IpPool>
Fetch an IP pool used for Oxide services.
This function performs a GET
to the /ip-pools-service/{rack_id}
endpoint.
Parameters:
rack_id: &str
Sourcepub async fn service_range_list(
&self,
limit: u32,
page_token: &str,
rack_id: &str,
) -> Result<Vec<IpPoolRange>>
pub async fn service_range_list( &self, limit: u32, page_token: &str, rack_id: &str, ) -> Result<Vec<IpPoolRange>>
List ranges for an IP pool used for Oxide services.
This function performs a GET
to the /ip-pools-service/{rack_id}/ranges
endpoint.
Ranges are ordered by their first address.
Parameters:
rack_id: &str
limit: u32
– Maximum number of items returned by a single call.page_token: &str
– Token returned by previous call to retrieve the subsequent page.
Sourcepub async fn service_range_list_all(
&self,
rack_id: &str,
) -> Result<Vec<IpPoolRange>>
pub async fn service_range_list_all( &self, rack_id: &str, ) -> Result<Vec<IpPoolRange>>
List ranges for an IP pool used for Oxide services.
This function performs a GET
to the /ip-pools-service/{rack_id}/ranges
endpoint.
As opposed to service_range_list
, this function returns all the pages of the request at once.
Ranges are ordered by their first address.
Sourcepub async fn service_range_add(
&self,
rack_id: &str,
body: &IpRange,
) -> Result<IpPoolRange>
pub async fn service_range_add( &self, rack_id: &str, body: &IpRange, ) -> Result<IpPoolRange>
Add a range to an IP pool used for Oxide services.
This function performs a POST
to the /ip-pools-service/{rack_id}/ranges/add
endpoint.
Parameters:
rack_id: &str