def __init__()

in app.py [0:0]


  def __init__(self, scope: Construct, id: str, vpc:ec2.IVpc, subnet_group_name:str='Private', encryption_key:kms.IKey=None, **kwargs) -> None:
    super().__init__(scope, id, **kwargs)
    cdk.Tags.of(self).add('Owner',DirectoryServicesConstruct.__name__)

    self.password = sm.Secret(self,'Password',
      description='Domain Admin Password',
      generate_secret_string= sm.SecretStringGenerator(),
      encryption_key=encryption_key)

    self.admin = 'Admin'
    self.mad = ad.CfnMicrosoftAD(self,'ActiveDirectory',
      name=DIRECTORY_NAME,
      password=self.password.secret_value.to_string(),
      short_name=DIRECTORY_SHORTNAME,
      enable_sso=False,
      edition= 'Standard',
      vpc_settings= ad.CfnMicrosoftAD.VpcSettingsProperty(
        vpc_id= vpc.vpc_id,
        subnet_ids= vpc.select_subnets(subnet_group_name=subnet_group_name).subnet_ids
      ))

    JoinDomainConstruct(self,'JoinDomain', mad=self.mad, targets=[self.mad.name, self.mad.short_name])