Specifying Glue::Crawler with JdbcTargets on CloudFormation

Question:

I’m trying to set up AWS Glue to read from a RDS Postgres using CloudFormation. In order to do that I need to create a crawler using the JdbcTarget option. (Or do I not?)

But creating the stack on CloudFormation wil fail with:

CREATE_FAILED | AWS::Glue::Crawler | Records | Connection name cannot be equal to null or empty. (Service: AWSGlue; Status Code: 400; Error Code: InvalidInputException;

Even though the docs say:

ConnectionName

The name of the connection to use for the JDBC target.

Required: No

What is the correct AWS Glue setup using CloudFormation that will allow me to read from RDS?

Answer:

You’re really missing the ConnectionName property, which should carry the name of connection resource which you’re missing. The Path property you’re setting is used to select the schemas/tables to crawl (dbname/%/% to include all). Consult CloudFormation docs on Crawler JDBCTarget for details.

Your template should look something like

Leave a Reply