-
Notifications
You must be signed in to change notification settings - Fork 20
[APIE-679] Multi-Env support in AWS/Azure/GCP - CLI #3223
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
🎉 All Contributor License Agreements have been signed. Ready to merge. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds multi-environment support for AWS ingress private link functionality in the CLI, extending the existing egress private link capabilities. The changes enable users to create, manage, and interact with AWS ingress private link gateways and endpoints.
Key Changes:
- Added support for AWS ingress private link gateway type alongside existing egress private link
- Implemented complete CRUD operations for ingress endpoints (create, list, describe, update, delete)
- Updated dependency versions for networking-access-point and networking-gateway SDKs
Reviewed Changes
Copilot reviewed 11 out of 12 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
internal/network/command_gateway.go |
Added AWS ingress private link gateway type constants and mapping |
internal/network/command_gateway_create.go |
Added ingress-privatelink gateway creation support with AWS-only validation |
internal/network/command_gateway_list.go |
Extended list command to display region and principal ARN for ingress gateways |
internal/network/command_access_point_private_link.go |
Added ingress-endpoint subcommand to private-link command tree |
internal/network/command_access_point_private_link_ingress_endpoint.go |
Core ingress endpoint functionality including output formatting and autocomplete |
internal/network/command_access_point_private_link_ingress_endpoint_create.go |
Implements ingress endpoint creation with AWS VPC endpoint service configuration |
internal/network/command_access_point_private_link_ingress_endpoint_list.go |
Lists ingress endpoints with filtering by display names |
internal/network/command_access_point_private_link_ingress_endpoint_describe.go |
Describes individual ingress endpoint details |
internal/network/command_access_point_private_link_ingress_endpoint_update.go |
Updates ingress endpoint display name |
internal/network/command_access_point_private_link_ingress_endpoint_delete.go |
Deletes one or more ingress endpoints with confirmation |
go.mod |
Updated SDK dependencies to internal versions with ingress support |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| if ingressEndpoint.Spec.GetConfig().NetworkingV1AwsIngressPrivateLinkEndpoint == nil { | ||
| continue | ||
| } |
Copilot
AI
Nov 14, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This filtering logic is duplicated from the autocomplete function. Consider extracting a helper function like isIngressEndpoint(accessPoint) to reduce code duplication and improve maintainability.
| Text: "Create an AWS ingress private link gateway.", | ||
| Code: "confluent network gateway create --cloud aws --region us-east-1 --type ingress-privatelink", | ||
| }, | ||
| examples.Example{ | ||
| Text: "Create an AWS private network interface gateway.", | ||
| Code: "confluent network gateway create --cloud aws --region us-east-1 --type private-network-interface", |
Copilot
AI
Nov 14, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The example command is missing the gateway name argument that appears in the adjacent egress example (line 25). For consistency, either add a name to this example or clarify that the name is optional in the command documentation.
| Text: "Create an AWS ingress private link gateway.", | |
| Code: "confluent network gateway create --cloud aws --region us-east-1 --type ingress-privatelink", | |
| }, | |
| examples.Example{ | |
| Text: "Create an AWS private network interface gateway.", | |
| Code: "confluent network gateway create --cloud aws --region us-east-1 --type private-network-interface", | |
| Text: `Create AWS ingress private link gateway "my-ingress-gateway".`, | |
| Code: "confluent network gateway create my-ingress-gateway --cloud aws --region us-east-1 --type ingress-privatelink", | |
| }, | |
| examples.Example{ | |
| Text: `Create AWS private network interface gateway "my-pni-gateway".`, | |
| Code: "confluent network gateway create my-pni-gateway --cloud aws --region us-east-1 --type private-network-interface", |
Release Notes
Breaking Changes
New Features
Bug Fixes
Checklist
Whatsection below whether this PR applies to Confluent Cloud, Confluent Platform, or both.Test & Reviewsection below.Blast Radiussection below.What
Blast Radius
References
Test & Review