Cómo obtener streamArn de una tabla dynamodb creada manualmente en CloudFormation

Aug 18 2020

Estoy tratando de crear una plantilla de formación en la nube para implementar una lambda y esta lambda tendrá DynamoDB como activador. Entonces, para acomodar eso, estoy usando AWS::Lambda::EventSourceMapping en mi plantilla de formación en la nube y codificando EventSourceArn para cada tabla de dynamodb.

Mi pregunta, ¿hay alguna forma de obtener streamArn de una tabla DynamoDB existente, que se crea manualmente? o tengo que pasar este valor codificado de la sección de parámetros.

Por favor ayúdame con tu consejo.

Respuestas

1 TraychoIvanov Aug 18 2020 at 00:58

Todas las cosas que crea manualmente están disponibles en la consola de AWS y puede verificar todas las arns.

Para su caso específico vaya a AWS Console -> DynamoDB -> Select your table.

Nota: Recomendaría usar la formación en la nube y evitar usar cosas manuales si esto se implementa en algún lugar de verdad.

ChrisWilliams Aug 18 2020 at 00:51

No existe una funcionalidad nativa de CloudFormation para recuperar el recurso Arns creado manualmente, con la excepción de ciertos tipos de parámetros .

Si tiene la intención de mantener este recurso como un recurso creado manualmente, deberá pasarlo como un parámetro a su plantilla para que pueda hacer referencia a él, ya sea como una cadena o como un parámetro basado en SSM .

Como alternativa, podría construir un recurso personalizado que acepte el nombre de la tabla de DynamoDB como parámetro y active una Lambda para obtener el Arn de la transmisión.

Si quisiera administrar la tabla en CloudFormation, podría construir el recurso en su plantilla de CloudFormation y luego importarlo a la pila . Al hacer esto, podría hacer referencia al recurso de tabla StreamArnde DynamoDB .