Skip to content

vendor_connectors.connectors

VendorConnectors - Public API with caching like TerraformDataSource.

VendorConnectorsPublic API for vendor connectors with client caching.

class vendor_connectors.connectors.VendorConnectors(logger: lifecyclelogging.Logging | None = None, **kwargs)

Section titled “class vendor_connectors.connectors.VendorConnectors(logger: lifecyclelogging.Logging | None = None, **kwargs)”

Bases: directed_inputs_class.DirectedInputsClass

Public API for vendor connectors with client caching.

This class provides cached access to all vendor connectors, similar to how TerraformDataSource works in terraform-modules libraries.

Usage: vc = VendorConnectors() slack = vc.get_slack_client(token=”…”, bot_token=”…”) github = vc.get_github_client(github_owner=”org”, github_token=”…”) aws_client = vc.get_aws_client(“s3”)

For Meshy AI, use the functional interface directly: from vendor_connectors.meshy import text3d, image3d, rigging, animate model = text3d.generate(“a medieval sword”)

Meshy does not provide a get_meshy_client() method because it uses a functional interface rather than a connector class, in order to simplify async operations and usage.

Initializes the DirectedInputsClass with the provided inputs.

Optionally loading additional inputs from environment variables and stdin.

Args: inputs (Mapping[str, Any] | None): Initial inputs to be processed. from_environment (bool): Whether to load inputs from environment variables. from_stdin (bool): Whether to load inputs from stdin. env_prefix (str | None): Optional prefix to filter environment variables. strip_env_prefix (bool): Whether to strip the prefix from environment keys.

Generate a hashable cache key from kwargs.

Retrieve a client from cache.

Store a client in cache.

Get a cached AWSConnector instance.

Requires: pip install vendor-connectors[aws]

get_aws_client(client_name: str, execution_role_arn: str | None = None, role_session_name: str | None = None, config: botocore.config.Config | None = None, **client_args) → boto3.client

Section titled “get_aws_client(client_name: str, execution_role_arn: str | None = None, role_session_name: str | None = None, config: botocore.config.Config | None = None, **client_args) → boto3.client”

Get a cached boto3 client.

get_aws_resource(service_name: str, execution_role_arn: str | None = None, role_session_name: str | None = None, config: botocore.config.Config | None = None, **resource_args) → boto3.resources.base.ServiceResource

Section titled “get_aws_resource(service_name: str, execution_role_arn: str | None = None, role_session_name: str | None = None, config: botocore.config.Config | None = None, **resource_args) → boto3.resources.base.ServiceResource”

Get a cached boto3 resource.

Get a cached boto3 session.

Get a cached GithubConnector instance.

Requires: pip install vendor-connectors[github]

Get a cached GoogleConnector instance.

Requires: pip install vendor-connectors[google]

Get a cached SlackConnector instance.

Requires: pip install vendor-connectors[slack]

Get a cached Vault hvac.Client instance.

Requires: pip install vendor-connectors[vault]

Get a cached VaultConnector instance.

Requires: pip install vendor-connectors[vault]

Get a cached ZoomConnector instance.