Skip to content

Cloud Automation Services SDK for Python

License

Notifications You must be signed in to change notification settings

srlynch1/caspyr

 
 

Repository files navigation

CircleCI

Cloud Automation Services SDK for Python (Caspyr)

This is a set of Python (3.6 minimum version) bindings for VMware Cloud Automation Services (Cloud Assembly, Service Broker, Code Stream) meant to simplify programmatic consumption of it's API interfaces.

These bindings simplify the utilization of many of the common endpoints within the CAS API. Some of these common endpoints include...

  • Blueprints
  • Projects
  • Deployments
  • Machines
  • Pipelines
  • Network Profiles
  • Cloud Accounts/Zones

Currently this SDK is used for the VMware Hands on Labs as well as internal Marketing and Training environments to automate the full deployment and configuration of CAS environments.

Requirements for Usage

  • Python 3.6
  • This Repository
  • API Key with sufficient permissions to the Cloud Automation Services platform

Getting Started

Clone this repository and install leveraging the setup.py file.

python3 setup.py install

Once installation is complete, Import the appropriate modules/libraries in order to begin interacting with the platform. Example import statement is below

from caspyr import Session, User, Region
from caspyr import CloudAccountAws, CloudAccountAzure, CloudAccount
from caspyr import CloudZone, ImageMapping, FlavorMapping
from caspyr import NetworkProfile, StorageProfileAWS, StorageProfileAzure, StorageProfile
from caspyr import Project, Request, Deployment, Blueprint, Machine

From here, we will authenticate to the Cloud Services Platform by establishing an object for we can interact with.

s = Session.login(api_token)

With this object instantiated, we can leverage other calls, passing the session object in to return data. Examples can be found in the examples directory.

Listing all Current Deployments

s = Session.login(api_token)
d = Deployment.list(s)

Listing all Projects

s = Session.login(api_token)
p = Projects.list(s)

Documentation is forthcoming (PR's welcome!)

Maintainers

Grant Orchard (@grantorchard)
Cody De Arkland (@codydearkland)

About

Cloud Automation Services SDK for Python

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.7%
  • Dockerfile 0.3%