05/29/2022, 8:52 AM
Hi all, I have an ApplicationLoadBalancer (awsx.elasticloadbalancingv2.ApplicationLoadBalancer) that I create in my base network stack that listens to all subdomain requests (*, in a higher level application stack I want to add a ListenerRule that points to a ApplicationTargetGroup using the ApplicationLoadBalancer but I can't seem to find a way in doing so using the TypeScript SDK. Can anyone point me in the right direction? Thanks. Here is a pseudo code of what i've tried so far and the error I get: *Base network stack
const alb = new awsx.elasticloadbalancingv2.ApplicationLoadBalancer ........
const appListenerHttps = alb.createListener.......
const zone  = aws.route53.getZoneOutput({name:domainAddress})
const albDomain = new aws.route53.Record(`domain-record`, {
    name: pulumi.interpolate `*.${domainAddress}`,
    zoneId: zone.zoneId,
    type: 'CNAME',
    records: [appListenerHttps.endpoint.hostname]
export const albListenerArn = appListenerHttps.listener.arn
export const albArn = alb.loadBalancer.arn
*Application stack
const networkingStack = new StackReference(config.require('stack.networking'));
const alb =   aws.applicationloadbalancing.getLoadBalancerOutput({arn:networkingStack.getOutput('albArn')});
const targetGroup = new awsx.elasticloadbalancingv2.ApplicationTargetGroup(
        loadBalancer: new awsx.elasticloadbalancingv2.ApplicationLoadBalancer('alb',{
           loadBalancer:alb <----error: Type 'GetLoadBalancerResult' is missing the following properties from type 'LoadBalancer': enableCrossZoneLoadBalancing, namePrefix, tagsAll, urn, getProvider

const itoolListener = new
        listenerArn: networkingStack.getOutput('albListenerArn'),
        priority: 100,
        actions: [
            type: 'forward',
            targetGroupArn: targetGroup.targetGroup.arn
        conditions: [
            hostHeader: {
              values: [pulumi.interpolate`test.${domainAddress}`]