sparse-intern-71089
01/23/2022, 4:17 PMbored-oyster-3147
01/23/2022, 6:48 PMlemon-dog-29241
01/23/2022, 7:46 PMinvoke_stack_function(body=route_53_resources['hosted_zone'].name_servers.apply(lambda name_servers: name_servers), function="addnameservers", message="Name servers were added successfully!")
little-cartoon-10569
01/23/2022, 8:46 PMlittle-cartoon-10569
01/23/2022, 8:48 PMget()
method? https://www.pulumi.com/docs/reference/pkg/nodejs/pulumi/pulumi/#OutputInstance-getbored-oyster-3147
01/23/2022, 9:24 PMbored-oyster-3147
01/23/2022, 9:26 PMlemon-dog-29241
01/24/2022, 3:12 PMadd_name_servers = Output.all(route_53_resources['hosted_zone'].name_servers).apply(lambda name_servers: invoke_stack_function(body={"org_id": org_id, "hosted_zone_name_servers": name_servers}, function="addnameservers", message="Name servers were added successfully!", aws_access_key_id=os.environ['BUILDBOT_ACCESS_KEY'], aws_secret_access_key=os.environ['BUILDBOT_SECRET_KEY']))
bored-oyster-3147
01/24/2022, 3:57 PMlemon-dog-29241
01/24/2022, 6:13 PMlemon-dog-29241
03/15/2022, 3:34 AMAttributeError: 'Certificate' object has no attribute 'domainValidationOptions
.
ANy ideas? Happy to share my code also 🙂 \lemon-dog-29241
03/15/2022, 3:36 AMdef create_and_validate_certificate(org_id, hosted_zone_id):
example_certificate = aws.acm.Certificate(f'shared-certificate-{org_id}',
domain_name=f'{org_id}.<http://getbuildbot.com|getbuildbot.com>',
subject_alternative_names=[f'*.{org_id}.<http://getbuildbot.com|getbuildbot.com>'],
validation_method="DNS")
example_record = []
for range in [{"key": k, "value": v} for [k, v] in enumerate({dvo.domainName: {
name: dvo.resourceRecordName,
record: dvo.resourceRecordValue,
type: dvo.resourceRecordType,
} for dvo in example_certificate.domainValidationOptions})]:
example_record.append(aws.route53.Record(f"exampleRecord-{range['key']}",
allow_overwrite=True,
name=range["value"]["name"],
records=[range["value"]["record"]],
ttl=60,
type=range["value"]["type"],
zone_id=hosted_zone_id))
example_certificate_validation = aws.acm.CertificateValidation("exampleCertificateValidation",
certificate_arn=example_certificate.arn,
validation_record_fqdns=example_record.apply(
lambda example_record: [record.fqdn for record in
example_record]))
return example_certificate_validation.certificate_arn
lemon-dog-29241
03/15/2022, 3:37 AMlittle-cartoon-10569
03/15/2022, 3:54 AMlittle-cartoon-10569
03/15/2022, 3:55 AMlittle-cartoon-10569
03/15/2022, 3:55 AMlemon-dog-29241
03/15/2022, 4:05 AMresourceRecordName
also? and the others?lemon-dog-29241
03/15/2022, 4:40 AMerror: python inline source runtime error: 'Output' object is not iterable, consider iterating the underlying value inside an 'apply'
. I don't understand exactly how apply works, and was hoping the example provided in the docs would just work. Any idea how I would modify the for loop with an apply?little-cartoon-10569
03/15/2022, 4:44 AMlittle-cartoon-10569
03/15/2022, 4:45 AM