graph LR
AWS_Connection_and_API_Management["AWS Connection and API Management"]
Session_Manager["Session Manager"]
Client_Provider["Client Provider"]
API_Caller["API Caller"]
Role_Resolver["Role Resolver"]
Warning_Emitter["Warning Emitter"]
AWS_Connection_and_API_Management -- "orchestrates" --> Session_Manager
AWS_Connection_and_API_Management -- "orchestrates" --> Client_Provider
AWS_Connection_and_API_Management -- "orchestrates" --> API_Caller
AWS_Connection_and_API_Management -- "orchestrates" --> Role_Resolver
Session_Manager -- "interacts with" --> Role_Resolver
Session_Manager -- "triggers warnings for" --> Warning_Emitter
Client_Provider -- "depends on" --> Session_Manager
API_Caller -- "interacts with" --> Client_Provider
API_Caller -- "interacts with" --> Session_Manager
API_Caller -- "interacts with" --> Role_Resolver
Role_Resolver -- "provides to" --> Session_Manager
Role_Resolver -- "provides to" --> API_Caller
Role_Resolver -- "triggers warnings for" --> Warning_Emitter
The AWS CloudFormation Client subsystem is primarily defined by the sceptre.connection_manager module, which acts as the central point for all AWS connection and API interaction logic within Sceptre.
This central component, implemented by the sceptre.connection_manager module, provides a comprehensive abstraction layer for interacting with various AWS services, particularly AWS CloudFormation. It is responsible for securely establishing and managing AWS sessions, provisioning specific AWS service clients, orchestrating and executing direct API calls, and handling IAM role resolution for proper permissions.
Related Classes/Methods:
Responsible for establishing, managing, and providing authenticated AWS sessions. This includes handling session arguments and preparing environment variables for AWS interactions.
Related Classes/Methods:
sceptre.connection_manager:get_session:1-9999sceptre.connection_manager:_get_session:1-9999sceptre.connection_manager:_determine_session_args:1-9999sceptre.connection_manager:create_session_environment_variables:1-9999
Responsible for obtaining and providing specific AWS service clients (e.g., CloudFormation client, S3 client) using an established AWS session. It acts as a factory for AWS service interfaces.
Related Classes/Methods:
The primary interface for executing direct API calls to AWS services. It orchestrates the retrieval of sessions and clients to perform the requested API operations, acting as the execution engine for AWS interactions.
Related Classes/Methods:
Manages the resolution and consolidation of IAM roles used for AWS interactions, ensuring proper permissions are applied for API calls and session establishment.
Related Classes/Methods:
A utility component dedicated to logging and emitting deprecation warnings, particularly concerning IAM role usage or other connection-related issues, ensuring users are informed of potential problems or changes.
Related Classes/Methods: