Sessions

Importing and defining a custom Session objects for use within clients

  • This custom Session object can be passed when creating new clients of any kind

  • The main purpose of this is to allow for the use of custom Session objects when working across multiple tenants simultaneously

[ ]:
import os

from peak import Session

custom_session_1 = Session(auth_token=os.environ.get("API_KEY_1"), stage="test")
custom_session_2 = Session(auth_token=os.environ.get("API_KEY_2"), stage="prod")

Multi-Environment usage example with a Workflow client

[ ]:
from peak.resources import workflows

wf_client_custom_session_1: workflows.Workflow = workflows.get_client(session=custom_session_1)
wf_client_custom_session_2: workflows.Workflow = workflows.get_client(session=custom_session_2)

The default behavior is to pick up arguments from the user’s environment.

[ ]:
wf_client: workflows.Workflow = workflows.get_client()