def __init__()

in app.py [0:0]


  def __init__(self, scope: Construct, id: builtins.str, vpc:ec2.IVpc, data_stores:DataStoresConstruct) -> None:
    super().__init__(scope, id)
    
    '''
    Tag all resources to auto-join Managed AD domain.
    '''
    cdk.Tags.of(self).add('domain',DIRECTORY_SHORTNAME)

    '''
    Define the role
    '''
    self.role = iam.Role(self,'Role',
      assumed_by= iam.ServicePrincipal(
        service='ec2',
        region= cdk.Aws.REGION),
      managed_policies=[
        iam.ManagedPolicy.from_aws_managed_policy_name('AmazonSSMManagedInstanceCore'),
        iam.ManagedPolicy.from_aws_managed_policy_name('AmazonSSMDirectoryServiceAccess'),
      ])

    '''
    Define Security Group for the instances
    '''
    self.security_group = ec2.SecurityGroup(self,'SecurityGroup',
      vpc=vpc,
      allow_all_outbound=True,
      description='Security Group for the AppServersConstruct')

    for port, name in [(22,'ssh'), (3389,'rdp')]:
      self.security_group.add_ingress_rule(
        peer=ec2.Peer.ipv4(vpc.vpc_cidr_block),
        connection = ec2.Port.tcp(port),
        description='Allow incoming for %s protocol' % name)

    '''
    Create the Windows Server
    '''
    win_ami_param = ssm.StringParameter.value_for_string_parameter(self,
      parameter_name="/aws/service/ami-windows-latest/EC2LaunchV2-Windows_Server-2016-English-Full-Base")

    self.windows_server = ec2.Instance(self,'WindowsServer',
      role=self.role,
      vpc=vpc,
      security_group= self.security_group,
      machine_image= ec2.MachineImage.generic_windows(
        ami_map={
          cdk.Stack.of(self).region: win_ami_param,
        }
      ),
      vpc_subnets= ec2.SubnetSelection(subnet_group_name='Public'),
      instance_type= ec2.InstanceType.of(
        instance_class= ec2.InstanceClass.BURSTABLE3,
        instance_size=ec2.InstanceSize.SMALL),
      allow_all_outbound=True,
      user_data_causes_replacement=True)

    '''
    Create the Linux Server
    '''
    linux_ami_param = ssm.StringParameter.value_for_string_parameter(self,
      parameter_name="/aws/service/ami-amazon-linux-latest/amzn-ami-hvm-x86_64-gp2")

    self.linux_server = ec2.Instance(self,'LinuxServer',
      role=self.role,
      vpc=vpc,
      security_group= self.security_group,
      machine_image= ec2.MachineImage.generic_windows(
        ami_map={
          cdk.Stack.of(self).region:linux_ami_param,
        }
      ),
      vpc_subnets= ec2.SubnetSelection(subnet_group_name='Public'),
      instance_type= ec2.InstanceType.of(
        instance_class= ec2.InstanceClass.BURSTABLE3,
        instance_size=ec2.InstanceSize.SMALL),
      allow_all_outbound=True,
      user_data_causes_replacement=True)

    cdk.Tags.of(self.linux_server).add('domain',DIRECTORY_SHORTNAME)