Open rsavage-nozominetworks opened 1 year ago
Just another update. For the provider config, I even tried setting my "host: " to: sns.us-gov-east-1.amazonaws.com, and still getting the error:
023-08-29T21:19:16Z DEBUG events cannot run refresh: refresh failed: reading SNS Topic (arn:aws:sns:us-gov-east-1:REDACTED:REDACTED): InvalidParameter: Invalid parameter: TopicArn Reason: A us-gov-east-1 ARN must begin with arn:aws-us-gov, not arn:aws:sns:us-gov-east-1:REDACTED:REDACTED
It maybe related to SNS alone. Can I get some help with triage please.
The issue seems to be in the way the provider constructs the external name for certain resources, including sns topics, by building the ARN through string concatenation, at a point in the code where the partition is not currently available at runtime (only the region). Searching for "arn:aws:
in https://github.com/upbound/provider-aws/blob/main/config/externalname.go will probably show all the affected resources, or at least most of them.
I'm not sure how best to solve this, but I think it explains why the provider seems to work for some resources but not others.
I have opened the similar bug, but related to china region (which uses aws-cn partition): https://github.com/upbound/provider-aws/issues/881 Any progress on this issue? As I have stated in my original bug, it seems that you need to manage partitionId according to specific region (GOV, CHINA, global). it seems that in the most of components it's just hardcoded: arn:aws:
This provider repo does not have enough maintainers to address every issue. Since there has been no activity in the last 90 days it is now marked as stale
. It will be closed in 14 days if no further activity occurs. Leaving a comment starting with /fresh
will mark this issue as not stale.
This provider repo does not have enough maintainers to address every issue. Since there has been no activity in the last 90 days it is now marked as stale
. It will be closed in 14 days if no further activity occurs. Leaving a comment starting with /fresh
will mark this issue as not stale.
/fresh
Is there any plan to improve govcloud support within the official provider? Seems silly that the community provider has better govcloud support than the officially supported provider. As of right now, I have to mix and match providers in order to achieve what I need (like the SNS example above).
@madisonb Do you have access to AWS GovCloud? Would you be willing to provide a PR to add support for it in the provider?
What happened?
I have multiple AWS accounts, some in the regular
Commercial
regions, and some in theGov Cloud
regions. All of my composite resources create as expected in theCommercial
regions. As for the ones in theGov Cloud
regions, I am seeing issues where certain AWS resources aren't able to create due to improper partition ids. In this example, I am attempting to create a SNS topic which will alert for relative issues. I am providing my provider and controller configs below.How can we reproduce it?
Original provider configuration (before any attempts to troubleshoot):
An updated provider configuration (after trying to troubleshoot):
Here is my current ControllerConfig. Notice: I added the env variables for AWS_REGION and AWS_DEFAULT_REGION as recommend by other related issues.
When I run the controller with DEBUG enabled, I see the follow error during SNS topic creation in Gov Cloud:
So from the logs above, it's clear that the provider is trying to use an unsupported ARN in Gov Cloud due to the incorrect partition id. I'd like to know if there is a way to configure that partition id or is this something the developers need to change to properly support Gov Cloud?
Thanks.
What environment did it happen in?
Environment: AWS GovCloud
US-GOV-EAST-1
Crossplane version:1.13.1
Provider version:v0.37.0