ishu7w opened a new pull request, #2193: URL: https://github.com/apache/libcloud/pull/2193
### Description Fixes #1799. EC2 instances with multiple network interfaces cannot use the current Elastic IP association method: it always sends `InstanceId`, while AWS requires `NetworkInterfaceId` for that case. Add an optional `network_interface` parameter accepting the existing `EC2NetworkInterface` type. When supplied, send its ID instead of `InstanceId`; existing calls retain their request parameters. Forward the option through the deprecated alias and document its use with VPC addresses. AWS contract: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_AssociateAddress.html ### Validation - The new regression fails on unchanged trunk because the interface option is unsupported. - All 1,211 EC2 tests pass. Request assertions verify interface targeting, absence of `InstanceId`, allocation ID use, legacy instance targeting, and alias forwarding. - Compute test suite: 5,920 passed, 5 skipped, 3 subtests passed; libvirt test module excluded because its native dependency is unavailable. - Black, isort, whitespace, and ASF license checks pass. Flake8 reports only the unchanged, pre-existing unused `typing.List` import in `ec2.py` (also verified against trunk). - AWS requests are fixture-tested; no live cloud resources were created. ### Status Ready for review. ### Checklist - [x] Code formatting and import sorting - [x] Documentation - [x] Tests - [ ] ICLA (if maintainers consider this extension a bigger change) AI assistance: This implementation, regression tests, and description were prepared with OpenAI Codex. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
