CloudWanderer Models

Models for CloudWanderer data.

class ActionSet(get_urns, delete_urns)

Define a list of partial URNs to discover and delete.

Parameters
property delete_urns

The URNs to delete

property get_urns

The URNs to get

class Relationship(partial_urn, direction)

Specifying the relationship between two resources.

Parameters
property direction

Alias for field number 1

property partial_urn

Alias for field number 0

class RelationshipAccountIdSource(value)

Enum specifying the source of a relationship’s Account ID.

class RelationshipDirection(value)

Enum specifying the direction of a relationship.

class RelationshipRegionSource(value)

Enum specifying the source of a relationship’s Region.

class ResourceIdUniquenessScope(requires_region, requires_account_id)

What is the scope of this resource ID’s uniqueness.

This is not used at runtime but is used by tests to determine the validity of relationship specifications.

Parameters
  • requires_region (bool) –

  • requires_account_id (bool) –

property requires_account_id

The resource id is only unique if the account id is also supplied

property requires_region

The resource id is only unique if the region is also supplied

class ResourceIndependenceType(value)

Enum specifying whether this resource requires a parent resource for id uniqueness.

class ServiceResourceType(service, resource_type)

A resource type including a service that it is member of.

Example

Creating an S3 bucket resource type:

>>> from cloudwanderer import ServiceResourceType
>>> print(ServiceResourceType(service="s3", resource_type="bucket"))
ServiceResourceType(service='s3', resource_type='bucket')
Parameters
  • service (str) –

  • resource_type (str) –

property resource_type

The type of resource (snake_case)

property service

The name of the service

class TemplateActionSet(get_urns, delete_urns)

An set of actions which have not yet had all their placeholders inflated.

This differs from a regular ActionSet action insofar as it will probably contain actions with the region TemplateActionSetRegionValues.ALL_REGIONS. These actions need to be unpacked into region specific actions that reflect the enabled regions in the AWS account in question before being placed into a non-cloud specific ActionSet class for CloudWanderer to consume.

Parameters
class TemplateActionSetRegionValues(value)

The possible template values for regions.

ALL_REGIONS = 1

The action template applies to all regions