Project module

Any rapyuta.io resource that you create, or allocate and use must belong to a project. You can think of a project as the organizational unit for what you are building. A project is made up of the settings, configuration, and other metadata that describe your applications. Resources within a single project can work together easily, for example, by communicating through an internal network. The resources that each project contains remain separate across project boundaries; you can only interconnect them through an external connection.

Each project has:

  • Auto-generated unique project ID

  • A project name, which you provide.

  • miscellaneous metadata: e.g., creator name, timestamp, etc.

  • You may create multiple projects and use them to organize rapyuta.io resources.

Client Module

class Client(auth_token, project=None)

Client class provides access to device, package, volume and deployment classes.

__init__(auth_token, project=None)

Get new client object

Parameters
  • auth_token (string) – Authentication token

  • project (string) – project_guid of the user

create_project(project)

Create a new Project

Parameters

project (Project) – Project object

Return type

Project

Following example demonstrates the use of this method for creating a new Project.

>>> from rapyuta_io.clients.project import Project
>>> client = Client(auth_token='auth_token')
>>> proj = Project('project-name')
>>> client.create_project(proj)
delete_project(guid)

Delete a Project from the platform.

Parameters

guid (str) – Project’s GUID

Following example demonstrates how to delete a Project using this method.

>>> client = Client(auth_token='auth_token')
>>> client.delete_project('project-guid')
get_project(guid)

Get a Project from its GUID.

Parameters

guid (str) – Project’s GUID

Return type

Project

Following example demonstrates how a Project can be fetched using this method.

>>> client = Client(auth_token='auth_token')
>>> client.get_project('project-guid')
list_projects()

Get a list of all the Projects.

Returns

A list of all available Projects for the user.

Return type

list(Project)

Following example demonstrates how to fetch the list of all Projects.

>>> client = Client(auth_token='auth_token')
>>> client.list_projects()
set_project(project_guid)

Sets the current Project for the Client.

Parameters

project_guid – GUID of the Project

Following example demonstrates how to set the Project for the Client.

>>> from rapyuta_io import Client
>>> client = Client(auth_token='auth_token', project='project_guid')
>>> project = client.create_project(Project('secret-guid'))
>>> client.set_project(project.guid)
>>> persistent_volume = client.get_persistent_volume()

Project Module

class Project(name)

Project is an organizational unit and all the resources must belong to a Project.

Parameters
  • guid (str) – guid of the Project

  • created_at (str) – creation time of the Project

  • name (str) – name of the Project

  • creator (str) – GUID of the User that created the Project

  • users (list(User)) – Users that have access to the Project

class User(first_name, last_name, email_id, state='ACTIVATED', role='Admin')

User is the representation of a Human user on the Platform. Users can be part of one of more Projects.

Parameters
  • guid (str) – guid of the User

  • first_name (str) – First name of the User

  • last_name (str) – Last name of the User

  • email_id (str) – Email of the User

  • state (UserState) – The state of the User on the Platform

class UserState(value)

Enumeration variables for UserState.

UserState can be any of the following types

UserState.REGISTERED

UserState.ACTIVATED

UserState.DEACTIVATED

UserState.SUSPENDED

UserState.INVITED