b0ff11ccef
- Extract AWS-specific logic into cloud_aws.py and cloud_providers.py to keep all files under the 500-line limit (cloud.py: 490 lines, cloud_aws.py: 498 lines, cloud_providers.py: 181 lines) - Fix sandbox test regression: change cloud_resources.feature sandbox create scenario from "aws" to "gcp" provider (AWS no longer raises NotImplementedError) - Add ImportError handling to step_sandbox_create/commit/rollback in cloud_resources_steps.py - Remove all 9 type: ignore comments from production code using proper type narrowing and boto3/botocore type stubs in typings/ - Move plan_id validation before logger.info() in all three sandbox methods (fail-fast principle) - Fix exception suppression: discover_aws_resources() now propagates exceptions instead of catching bare Exception - Move deferred imports (PhysVirt, ResourceCapabilities, _derive_child_id) to module level in cloud_aws.py - Split cloud_aws_sdk_steps.py (755 lines) into focused modules: cloud_aws_helpers.py, cloud_aws_session_steps.py, cloud_aws_discover_steps.py, cloud_aws_sandbox_steps.py - Add CHANGELOG.md entry for AWS SDK integration feature - Update robot/helper_cloud_resources.py to handle ImportError/ NotImplementedError for AWS sandbox operations ISSUES CLOSED: #1021
15 lines
613 B
Python
15 lines
613 B
Python
"""Step definitions for cloud_aws_sdk.feature.
|
|
|
|
Tests AWS SDK integration for CloudResourceHandler using mocked boto3.
|
|
All steps use the "awssdk" prefix to avoid conflicts with existing
|
|
step definitions in other feature files.
|
|
|
|
Step definitions are split across focused modules for maintainability:
|
|
- cloud_aws_helpers.py: shared helpers (_make_resource, _make_mock_session)
|
|
- cloud_aws_session_steps.py: session building and resolve() steps
|
|
- cloud_aws_discover_steps.py: resource discovery steps
|
|
- cloud_aws_sandbox_steps.py: sandbox lifecycle steps
|
|
|
|
Behave auto-discovers all step files in this directory.
|
|
"""
|