Я использую CDK Python API для определения сканера Glue, однако созданный CDK шаблон содержит пустой блок 'Targets' в ресурсе Crawler.
Мне не удалось найти пример для подражания.Я пытался изменить определение объекта назначения, но CDK, похоже, игнорирует определение объекта.
from aws_cdk import cdk
BUCKET='poc-1-bucket43879c71-5uabw2rni0cp'
class PocStack(cdk.Stack):
def __init__(self, app: cdk.App, id: str, **kwargs) -> None:
super().__init__(app, id)
from aws_cdk import (
aws_iam as iam,
aws_glue as glue,
cdk
)
glue_role = iam.Role(
self, 'glue_role',
assumed_by=iam.ServicePrincipal('glue.amazonaws.com'),
managed_policy_arns=['arn:aws:iam::aws:policy/service-role/AWSGlueServiceRole']
)
glue_crawler = glue.CfnCrawler(
self, 'glue_crawler',
database_name='db',
role=glue_role.role_arn,
targets={"S3Targets": [{"Path": f'{BUCKET}/path/'}]},
)
Я ожидаю, что сгенерированный шаблон будет содержать действительный блок 'target' с одним S3Target.Однако cdk synth
выводит шаблон с пустыми целями в ресурсе AWS :: Glue :: Crawler:
gluecrawler:
Type: AWS::Glue::Crawler
Properties:
DatabaseName: db
Role:
Fn::GetAtt:
- glueroleFCCAEB57
- Arn
Targets: {}