UNPKG

@studion/infra-code-blocks

Version:
44 lines (43 loc) 1.66 kB
import * as pulumi from '@pulumi/pulumi'; import * as aws from '@pulumi/aws'; import { AcmCertificate } from './acm-certificate'; import { EcsService, EcsServiceArgs } from './ecs-service'; export type NuxtSSRArgs = Pick<EcsServiceArgs, 'image' | 'port' | 'clusterId' | 'clusterName' | 'vpcId' | 'vpcCidrBlock' | 'desiredCount' | 'autoscaling' | 'size' | 'environment' | 'secrets' | 'tags'> & { publicSubnetIds: pulumi.Input<pulumi.Input<string>[]>; /** * The domain which will be used to access the service. * The domain or subdomain must belong to the provided hostedZone. */ domain?: pulumi.Input<string>; /** * The ID of the hosted zone. */ hostedZoneId?: pulumi.Input<string>; /** * Path for the health check request. Defaults to "/". */ healthCheckPath?: pulumi.Input<string>; }; export declare class NuxtSSR extends pulumi.ComponentResource { name: string; service: EcsService; certificate?: AcmCertificate; lbSecurityGroup: aws.ec2.SecurityGroup; serviceSecurityGroup: aws.ec2.SecurityGroup; customCFHeader: { name: pulumi.Output<string>; value: pulumi.Output<string>; }; lb: aws.lb.LoadBalancer; lbTargetGroup: aws.lb.TargetGroup; lbHttpListener: aws.lb.Listener; cloudfront: aws.cloudfront.Distribution; constructor(name: string, args: NuxtSSRArgs, opts?: pulumi.ComponentResourceOptions); private createTlsCertificate; private createCustomCFHeader; private createLoadBalancer; private createSecurityGroup; private createEcsService; private createCloudfrontDistribution; private createDnsRecord; }