This message was deleted.
# getting-started
s
This message was deleted.
h
That kind of stuff makes the new native version especially weird:
Copy code
-      ├─ aws-native:iam:Role                pod-execution-role                                                            **deleting failed**     1 error
 -      └─ aws-native:iam:Role                node-role                                                                     **deleting failed**     1 error

Diagnostics:
  pulumi:pulumi:Stack (Pulumi project to create a Kubernetes cluster on various cloud providers-dev):
    2023/01/12 00:45:24 Version: (devel)

    error: update failed

  aws-native:iam:Role (pod-execution-role):
    error: operation DELETE failed with "GeneralServiceException": Cannot delete entity, must detach all policies first. (Service: Iam, Status Code: 409, Request ID: 9b326a50-62cf-4433-8a98-bdb1778964cb)

  aws-native:iam:Role (node-role):
    error: operation DELETE failed with "GeneralServiceException": Cannot delete entity, must detach all policies first. (Service: Iam, Status Code: 409, Request ID: 29dbe4b0-699e-4eac-983f-f8cb645a7a39)
m
Generally speaking, mixing and matching is not required. One of these is enough for most users. Since aws-native is not GA yet, that would be pulumi-aws; or awsx if you prefer the additional abstraction.
h
Well, I started using native because of this:
m
Ha, fair point. I forgot we have that up. Well, mixing them is perfectly fine, I’m just saying that it’s not required if you’d rather not. Regrading the role deletion failure, that’s a known issue stemming from the AWS design of this resource. We want to fix it but probably not soon.
q
It really depends on what you're using it for. AWSX (Crosswalk) is good if you need additional abstractions and need a "get up and running quick" with best practices in mind. AWSX isn't terribly granular and I often found that granularity mattered to me. I use the @pulumi/aws library. It's surprisingly capable and granular and the docs are geared for it. I've yet to use aws native.