Hi All, I’ve updated aws iam user name to use cont...
# general
c
Hi All, I’ve updated aws iam user name to use controlled naming(https://www.pulumi.com/blog/infrastructure-as-code-resource-naming/#controlled-naming). Now while deleting the user resource, pulumi is still looking for the user with old name and is failing with No such entity error.
Copy code
aws.iam.User(
            name=_user['name'], // Added this field to have the name field updated with name 'pulumi_sample_user'
            resource_name=_user['name'],
            path=_user['path'],
            tags=_user['tags']
        )
Error message: 
error removing IAM User (pulumi_sample_user) group memberships: Error removing user "pulumi_sample_user" from all groups: NoSuchEntity: The user with name pulumi_sample_user cannot be found
How to proceed?
h
c
Hi @high-grass-3103 I’m unable to delete resources even after addition of alias. May be i’m doing something wrong. Attaching the state file corresponding to this resource
Copy code
{
  "urn": "urn:pulumi:dev::project::aws:iam/user:User::pulumi_de",
  "custom": true,
  "id": "pulumi_de-abc8bde",
  "type": "aws:iam/user:User",
  "inputs": {
    "__defaults": [
      "forceDestroy"
    ],
    "forceDestroy": false,
    "name": "pulumi_de_hello_world"
  },
  "outputs": {
    "arn": "arn:aws:iam::aws_account_no:user/pulumi_de_hello_world",
    "forceDestroy": false,
    "id": "pulumi_de_hello_world",
    "name": "pulumi_de_hello_world"
  },
  "parent": "urn:pulumi:dev::project::pulumi:pulumi:Stack::project-dev",
  "provider": "urn:pulumi:dev::project::pulumi:providers:aws::default_4_36_0::random_no",
  "propertyDependencies": {
    "name": null,
    "path": null,
    "tags": null
  },
  "aliases": [
    "urn:pulumi:dev::project::aws:iam/user:User::pulumi_de",
    "urn:pulumi:dev::project::aws:iam/user:User::pulumi_de_hello_world",
    "urn:pulumi:dev::project::aws:iam/user:User::pulumi_de-abc8bde"
  ],
  "sequenceNumber": 1
}
One thing that works here is manually changing the ID to
pulumi_de_hello_world
wanted to know if there are programmatic ways
h
Might have been easier if you posted the code before and after change
c
@high-grass-3103 adding code and stack states
Copy code
-- resource creation
aws.iam.User(
    resource_name='pulumi_de',
    path='/'
)
-- resource state
{
    "urn": "urn:pulumi:dev::project::aws:iam/user:User::pulumi_de",
    "custom": true,
    "id": "pulumi_de-aacf145",
    "type": "aws:iam/user:User",
    "inputs": {
        "__defaults": [
            "forceDestroy",
            "name"
        ],
        "forceDestroy": false,
        "name": "pulumi_de-aacf145",
        "path": "/"
    },
    "outputs": {
        "arn": "arn:aws:iam::aws_account_no:user/pulumi_de-aacf145",
        "forceDestroy": false,
        "id": "pulumi_de-aacf145",
        "name": "pulumi_de-aacf145",
        "path": "/",
        "uniqueId": "***DAZHCVWP*****"
    },
    "parent": "urn:pulumi:dev::project::pulumi:pulumi:Stack::project-dev",
    "provider": "urn:pulumi:dev::project::pulumi:providers:aws::default_4_36_0::<random number>",
    "propertyDependencies": {
        "path": null,
        "tags": null
    },
    "sequenceNumber": 1
}
-- name and alias updation
aws.iam.User(
    name='pulumi_de_hello_world',
    resource_name='pulumi_de',
    path='/',
    opts=ResourceOptions(aliases=[
        'urn:pulumi:dev::project::aws:iam/user:User::pulumi_de',
        'urn:pulumi:dev::project::aws:iam/user:User::pulumi_de-aacf145'
    ])
)
-- resource state
{
    "urn": "urn:pulumi:dev::project::aws:iam/user:User::pulumi_de",
    "custom": true,
    "id": "pulumi_de-aacf145",
    "type": "aws:iam/user:User",
    "inputs": {
        "__defaults": [
            "forceDestroy"
        ],
        "forceDestroy": false,
        "name": "pulumi_de_hello_world",
        "path": "/"
    },
    "outputs": {
        "arn": "arn:aws:iam::aws_account_no:user/pulumi_de_hello_world",
        "forceDestroy": false,
        "id": "pulumi_de_hello_world",
        "name": "pulumi_de_hello_world",
        "path": "/",
        "uniqueId": "***DAZHCVWP*****"
    },
    "parent": "urn:pulumi:dev::project::pulumi:pulumi:Stack::project-dev",
    "provider": "urn:pulumi:dev::project::pulumi:providers:aws::default_4_36_0::<another_random_no>",
    "propertyDependencies": {
        "name": null,
        "path": null,
        "tags": null
    },
    "aliases": [
        "urn:pulumi:dev::project::aws:iam/user:User::pulumi_de",
        "urn:pulumi:dev::project::aws:iam/user:User::pulumi_de-aacf145"
    ],
    "sequenceNumber": 1
}