CloudWanderer Base

Base classes for subclassing.

class CloudInterface

Base class for Cloud Interface classes.

get_enabled_regions()

Return the list of regions enabled.

Fulfils the interface requirements for cloudwanderer.cloud_wanderer.CloudWanderer to call.

Return type

List[str]

abstract get_resource(urn, service_resource_type_filters=None, include_dependent_resources=True, client_args=None)

Yield the resource picked out by this URN and optionally its subresources.

Parameters
  • urn (URN) – The urn of the resource to get.

  • service_resource_type_filters (Optional[List[cloudwanderer.base.ServiceResourceTypeFilter]]) – A AWSResourceTypeFilter list to filter resources.

  • include_dependent_resources (bool) – Whether or not to additionally yield the dependent_resources of the resource.

  • client_args (Optional[Dict[str, Any]]) – Additional keyword arguments will be passed down to the Boto3 client.

Return type

Iterator[cloudwanderer.cloud_wanderer_resource.CloudWandererResource]

abstract get_resource_discovery_actions(regions=None, service_resource_types=None)

Return the ActionSets required to discover resources according to the params.

Parameters
Return type

List[cloudwanderer.models.ActionSet]

abstract get_resources(service_name, resource_type, region, service_resource_type_filters=None, client_args=None)

Return all resources of resource_type from Boto3.

Parameters
  • service_name (str) – The name of the service to get resource for (e.g. 'ec2')

  • resource_type (str) – The type of resource to get resources of (e.g. 'instance')

  • region (str) – The region to get resources of (e.g. 'eu-west-1')

  • service_resource_type_filters (Optional[List[cloudwanderer.base.ServiceResourceTypeFilter]]) – A ServiceResourceTypeFilter list to filter resources.

  • client_args (Optional[Dict[str, Any]]) – Additional keyword arguments will be passed down to the Boto3 client.

Return type

Iterator[cloudwanderer.cloud_wanderer_resource.CloudWandererResource]

class ServiceResourceTypeFilter

Abstract Base Class for CloudInterfaces to subclass for resource filtering.