Struct openstack::Cloud
[−]
[src]
pub struct Cloud { /* fields omitted */ }OpenStack cloud API.
Provides high-level API for working with OpenStack clouds.
Methods
impl Cloud[src]
pub fn new<Auth: AuthMethod + 'static>(auth_method: Auth) -> Cloud[src]
Create a new cloud object with a given authentication plugin.
See auth module for details on how to authenticate
against OpenStack clouds.
Example
fn cloud_from_env() -> openstack::Result<openstack::Cloud> { openstack::auth::from_env().map(openstack::Cloud::new) }
Note: in this particular case it's better to use from_env.
pub fn from_env() -> Result<Cloud>[src]
Create a new cloud object from environment variables.
Example
let os = openstack::Cloud::from_env()?;
pub fn with_endpoint_interface<S>(self, endpoint_interface: S) -> Cloud where
S: Into<String>, [src]
S: Into<String>,
Convert this cloud into one using the given endpoint interface.
Example
fn cloud_from_env() -> openstack::Result<openstack::Cloud> { openstack::Cloud::from_env() .map(|os| os.with_endpoint_interface("internal")) }
pub fn refresh(&mut self) -> Result<()>[src]
Refresh this Cloud object (renew token, refetch service catalog, etc).
pub fn session(&self) -> &Session[src]
Session used with this Cloud object.
pub fn find_flavors(&self) -> FlavorQuery[src]
Build a query against flavor list.
The returned object is a builder that should be used to construct the query.
pub fn find_images(&self) -> ImageQuery[src]
Build a query against image list.
The returned object is a builder that should be used to construct the query.
pub fn find_keypairs(&self) -> KeyPairQuery[src]
Build a query against key pairs list.
The returned object is a builder that should be used to construct the query.
pub fn find_networks(&self) -> NetworkQuery[src]
Build a query against network list.
The returned object is a builder that should be used to construct the query.
pub fn find_servers(&self) -> ServerQuery[src]
Build a query against server list.
The returned object is a builder that should be used to construct the query.
Example
Sorting servers by access_ip_v4 and getting first 5 results:
use openstack; let os = openstack::Cloud::from_env().expect("Unable to authenticate"); let sorting = openstack::compute::ServerSortKey::AccessIpv4; let server_list = os.find_servers() .sort_by(openstack::Sort::Asc(sorting)).with_limit(5) .all().expect("Unable to fetch servers");
pub fn get_flavor<Id: AsRef<str>>(&self, id_or_name: Id) -> Result<Flavor>[src]
Find a flavor by its name or ID.
Example
use openstack; let os = openstack::Cloud::from_env().expect("Unable to authenticate"); let server = os.get_flavor("m1.medium").expect("Unable to get a flavor");
pub fn get_image<Id: AsRef<str>>(&self, id_or_name: Id) -> Result<Image>[src]
Find an image by its name or ID.
Example
use openstack; let os = openstack::Cloud::from_env().expect("Unable to authenticate"); let server = os.get_image("centos7").expect("Unable to get a image");
pub fn get_keypair<Id: AsRef<str>>(&self, name: Id) -> Result<KeyPair>[src]
Find a key pair by its name or ID.
Example
use openstack; let os = openstack::Cloud::from_env().expect("Unable to authenticate"); let server = os.get_keypair("default").expect("Unable to get a key pair");
pub fn get_network<Id: AsRef<str>>(&self, id_or_name: Id) -> Result<Network>[src]
Find an network by its name or ID.
Example
use openstack; let os = openstack::Cloud::from_env().expect("Unable to authenticate"); let server = os.get_network("centos7").expect("Unable to get a network");
pub fn get_server<Id: AsRef<str>>(&self, id_or_name: Id) -> Result<Server>[src]
Find a server by its name or ID.
Example
use openstack; let os = openstack::Cloud::from_env().expect("Unable to authenticate"); let server = os.get_server("8a1c355b-2e1e-440a-8aa8-f272df72bc32") .expect("Unable to get a server");
pub fn list_flavors(&self) -> Result<Vec<FlavorSummary>>[src]
List all flavors.
This call can yield a lot of results, use the find_flavors call to limit the number of flavors to receive.
Example
use openstack; let os = openstack::Cloud::from_env().expect("Unable to authenticate"); let server_list = os.list_flavors().expect("Unable to fetch flavors");
pub fn list_images(&self) -> Result<Vec<Image>>[src]
List all images.
This call can yield a lot of results, use the find_images call to limit the number of images to receive.
Example
use openstack; let os = openstack::Cloud::from_env().expect("Unable to authenticate"); let server_list = os.list_images().expect("Unable to fetch images");
pub fn list_keypairs(&self) -> Result<Vec<KeyPair>>[src]
List all key pairs.
Example
use openstack; let os = openstack::Cloud::from_env().expect("Unable to authenticate"); let result = os.list_keypairs().expect("Unable to fetch key pairs");
pub fn list_networks(&self) -> Result<Vec<Network>>[src]
List all networks.
This call can yield a lot of results, use the find_networks call to limit the number of networks to receive.
Example
use openstack; let os = openstack::Cloud::from_env().expect("Unable to authenticate"); let server_list = os.list_networks().expect("Unable to fetch networks");
pub fn list_servers(&self) -> Result<Vec<ServerSummary>>[src]
List all servers.
This call can yield a lot of results, use the find_servers call to limit the number of servers to receive.
Example
use openstack; let os = openstack::Cloud::from_env().expect("Unable to authenticate"); let server_list = os.list_servers().expect("Unable to fetch servers");
pub fn new_server<S, F>(&self, name: S, flavor: F) -> NewServer where
S: Into<String>,
F: Into<FlavorRef>, [src]
S: Into<String>,
F: Into<FlavorRef>,
Prepare a new server for creation.
This call returns a NewServer object, which is a builder to populate
server fields.
Trait Implementations
impl Debug for Cloud[src]
fn fmt(&self, __arg_0: &mut Formatter) -> Result[src]
Formats the value using the given formatter. Read more
impl Clone for Cloud[src]
fn clone(&self) -> Cloud[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0[src]
Performs copy-assignment from source. Read more