Accelerator global configuration

Hierarchy

  • GlobalConfig

Implements

Constructors

  • Parameters

    • props: {
          controlTower: {
              enable: boolean;
          };
          homeRegion: string;
          managementAccountAccessRole: string;
      }
      • controlTower: {
            enable: boolean;
        }
        • enable: boolean
      • homeRegion: string
      • managementAccountAccessRole: string
    • Optional values: {
          acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; });
          backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; });
          centralizeCdkBuckets: undefined | ({ enable: boolean; });
          cloudwatchLogRetentionInDays: number;
          controlTower: { enable: boolean; };
          enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[];
          homeRegion: string;
          limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[];
          logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...;
          managementAccountAccessRole: string;
          reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...);
          snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; });
          ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; });
          terminationProtection: undefined | boolean;
      }
      • acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; })
      • backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; })
      • centralizeCdkBuckets: undefined | ({ enable: boolean; })
      • cloudwatchLogRetentionInDays: number
      • controlTower: { enable: boolean; }
      • enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[]
      • homeRegion: string
      • limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[]
      • logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...
      • managementAccountAccessRole: string
      • reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...)
      • snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; })
      • ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })
      • terminationProtection: undefined | boolean
    • Optional configDir: string
    • Optional validateConfig: boolean

    Returns GlobalConfig

Properties

acceleratorMetadata: undefined | AcceleratorMetadataConfig = undefined

Accelerator Metadata Configuration Creates a bucket in the logging account to enable accelerator metadata collection

Example

acceleratorMetadata:
enable: true
account: Logging
backup: undefined | BackupConfig = undefined

Backup Vaults Configuration

To generate vaults, you need to provide below value for this parameter.

Example

backup:
vaults:
- name: MyBackUpVault
deploymentTargets:
organizationalUnits:
- Root
centralizeCdkBuckets: centralizeCdkBucketsConfig = ...

To indicate workload accounts should utilize the cdk-assets S3 buckets in the management account, you need to provide below value for this parameter.

Example

centralizeCdkBuckets:
enable: true
cloudwatchLogRetentionInDays: 3653 = 3653

CloudWatchLogs retention in days, accelerator's custom resource lambda function logs retention period is configured based on this value.

controlTower: ControlTowerConfig = ...

AWS ControlTower configuration

To indicate environment has control tower enabled, you need to provide below value for this parameter.

Example

controlTower:
enable: true
enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[] = []

List of AWS Region names where accelerator will be deployed. Home region must be part of this list.

To add us-west-2 along with home region for accelerator deployment, you need to provide below value for this parameter.

Example

enabledRegions:
- *HOME_REGION
- us-west-2
homeRegion: string = ''

Accelerator home region name. The region where accelerator pipeline deployed.

To use us-east-1 as home region for the accelerator, you need to provide below value for this parameter. Note: Variable HOME_REGION created for future usage of home region in the file

Example

homeRegion: &HOME_REGION us-east-1
limits: undefined | ServiceQuotaLimitsConfig[] = undefined

AWS Service Quota - Limit configuration

To enable limits within service quota, you need to provide below value for this parameter.

Example

``` limits: - serviceCode: lambda quotaCode: L-2ACBD22F value: 2000 deploymentTargets: - organizationalUnits: root accounts:

logging: LoggingConfig = ...

Accelerator logging configuration

To enable organization trail and session manager logs sending to S3, you need to provide below value for this parameter.

Example

logging:
account: LogArchive
cloudtrail:
enable: false
organizationTrail: false
cloudtrailInsights:
apiErrorRateInsight: true
apiCallRateInsight: true
sessionManager:
sendToCloudWatchLogs: false
sendToS3: true
cloudwatchLogs:
dynamicPartitioning: logging/dynamic-partition.json
managementAccountAccessRole: string = ''

This role trusts the management account, allowing users in the management account to assume the role, as permitted by the management account administrator. The role has administrator permissions in the new member account.

Examples:

  • AWSControlTowerExecution
  • OrganizationAccountAccessRole
reports: undefined | ReportConfig = undefined

Report configuration

To enable budget report along with cost and usage report, you need to provide below value for this parameter.

Example

reports:
costAndUsageReport:
compression: Parquet
format: Parquet
reportName: accelerator-cur
s3Prefix: cur
timeUnit: DAILY
refreshClosedReports: true
reportVersioning: CREATE_NEW_REPORT
budgets:
- name: accel-budget
timeUnit: MONTHLY
type: COST
amount: 2000
includeUpfront: true
includeTax: true
includeSupport: true
includeSubscription: true
includeRecurring: true
includeOtherSubscription: true
includeDiscount: true
includeCredit: false
includeRefund: false
useBlended: false
useAmortized: false
unit: USD
notification:
- type: ACTUAL
thresholdType: PERCENTAGE
threshold: 90
comparisonOperator: GREATER_THAN
subscriptionType: EMAIL
address: myemail+pa-budg@example.com
snsTopics: undefined | SnsConfig = undefined

SNS Topics Configuration

To send CloudWatch Alarms and SecurityHub notifications you will need to configure at least one SNS Topic For SecurityHub notification you will need to set the deployment target to Root in order to receive notifications from all accounts

Example

snsTopics:
deploymentTargets:
organizationalUnits:
- Root
topics:
- name: Security
emailAddresses:
- SecurityNotifications@example.com
ssmInventory: undefined | SsmInventoryConfig = undefined

SSM Inventory Configuration

EC2 prerequisites Connectivity prerequisites

Example

ssmInventory:
enable: true
deploymentTargets:
organizationalUnits:
- Infrastructure
terminationProtection: true = true

Whether to enable termination protection for this stack.

FILENAME: "global-config.yaml" = 'global-config.yaml'

Global configuration file name, this file must be present in accelerator config repository

Methods

  • Parameters

    • inputStr: string
    • errorMessage: string
    • errors: string[]

    Returns void

  • Parameters

    • inputStr: string
    • errorMessage: string
    • errors: string[]

    Returns void

  • Prepare list of Account names from account config file

    Parameters

    • configDir: string
    • accountNames: string[]

    Returns void

  • Prepare list of OU ids from organization config file

    Parameters

    • configDir: string
    • ouIdNames: string[]

    Returns void

  • Returns string[]

  • Parameters

    • o: any

    Returns o is {
        logGroupPattern: string;
        s3Prefix: string;
    }

  • Parameters

    • values: {
          acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; });
          backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; });
          centralizeCdkBuckets: undefined | ({ enable: boolean; });
          cloudwatchLogRetentionInDays: number;
          controlTower: { enable: boolean; };
          enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[];
          homeRegion: string;
          limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[];
          logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...;
          managementAccountAccessRole: string;
          reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...);
          snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; });
          ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; });
          terminationProtection: undefined | boolean;
      }
      • acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; })
      • backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; })
      • centralizeCdkBuckets: undefined | ({ enable: boolean; })
      • cloudwatchLogRetentionInDays: number
      • controlTower: { enable: boolean; }
      • enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[]
      • homeRegion: string
      • limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[]
      • logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...
      • managementAccountAccessRole: string
      • reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...)
      • snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; })
      • ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })
      • terminationProtection: undefined | boolean
    • accountNames: string[]
    • errors: string[]

    Returns void

  • Function to validate existence of budget deployment target OUs Make sure deployment target OUs are part of Organization config file

    Parameters

    • values: {
          acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; });
          backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; });
          centralizeCdkBuckets: undefined | ({ enable: boolean; });
          cloudwatchLogRetentionInDays: number;
          controlTower: { enable: boolean; };
          enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[];
          homeRegion: string;
          limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[];
          logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...;
          managementAccountAccessRole: string;
          reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...);
          snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; });
          ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; });
          terminationProtection: undefined | boolean;
      }
      • acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; })
      • backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; })
      • centralizeCdkBuckets: undefined | ({ enable: boolean; })
      • cloudwatchLogRetentionInDays: number
      • controlTower: { enable: boolean; }
      • enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[]
      • homeRegion: string
      • limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[]
      • logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...
      • managementAccountAccessRole: string
      • reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...)
      • snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; })
      • ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })
      • terminationProtection: undefined | boolean
    • ouIdNames: string[]
    • errors: string[]

    Returns void

  • Function to validate budget notification email address

    Parameters

    • values: {
          acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; });
          backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; });
          centralizeCdkBuckets: undefined | ({ enable: boolean; });
          cloudwatchLogRetentionInDays: number;
          controlTower: { enable: boolean; };
          enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[];
          homeRegion: string;
          limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[];
          logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...;
          managementAccountAccessRole: string;
          reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...);
          snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; });
          ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; });
          terminationProtection: undefined | boolean;
      }
      • acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; })
      • backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; })
      • centralizeCdkBuckets: undefined | ({ enable: boolean; })
      • cloudwatchLogRetentionInDays: number
      • controlTower: { enable: boolean; }
      • enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[]
      • homeRegion: string
      • limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[]
      • logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...
      • managementAccountAccessRole: string
      • reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...)
      • snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; })
      • ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })
      • terminationProtection: undefined | boolean
    • errors: string[]

    Returns void

  • Function to validate existence of central logs bucket region in enabled region list CentralLogs bucket region name must part of pipeline enabled region

    Parameters

    • values: {
          acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; });
          backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; });
          centralizeCdkBuckets: undefined | ({ enable: boolean; });
          cloudwatchLogRetentionInDays: number;
          controlTower: { enable: boolean; };
          enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[];
          homeRegion: string;
          limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[];
          logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...;
          managementAccountAccessRole: string;
          reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...);
          snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; });
          ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; });
          terminationProtection: undefined | boolean;
      }
      • acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; })
      • backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; })
      • centralizeCdkBuckets: undefined | ({ enable: boolean; })
      • cloudwatchLogRetentionInDays: number
      • controlTower: { enable: boolean; }
      • enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[]
      • homeRegion: string
      • limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[]
      • logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...
      • managementAccountAccessRole: string
      • reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...)
      • snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; })
      • ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })
      • terminationProtection: undefined | boolean
    • errors: string[]

    Returns void

  • Validate s3 resource policy file existence

    Returns

    Parameters

    • configDir: string
    • values: {
          acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; });
          backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; });
          centralizeCdkBuckets: undefined | ({ enable: boolean; });
          cloudwatchLogRetentionInDays: number;
          controlTower: { enable: boolean; };
          enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[];
          homeRegion: string;
          limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[];
          logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...;
          managementAccountAccessRole: string;
          reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...);
          snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; });
          ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; });
          terminationProtection: undefined | boolean;
      }
      • acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; })
      • backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; })
      • centralizeCdkBuckets: undefined | ({ enable: boolean; })
      • cloudwatchLogRetentionInDays: number
      • controlTower: { enable: boolean; }
      • enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[]
      • homeRegion: string
      • limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[]
      • logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...
      • managementAccountAccessRole: string
      • reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...)
      • snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; })
      • ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })
      • terminationProtection: undefined | boolean
    • errors: string[]

    Returns void

  • Validate s3 resource policy file existence

    Returns

    Parameters

    • configDir: string
    • values: {
          acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; });
          backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; });
          centralizeCdkBuckets: undefined | ({ enable: boolean; });
          cloudwatchLogRetentionInDays: number;
          controlTower: { enable: boolean; };
          enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[];
          homeRegion: string;
          limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[];
          logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...;
          managementAccountAccessRole: string;
          reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...);
          snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; });
          ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; });
          terminationProtection: undefined | boolean;
      }
      • acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; })
      • backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; })
      • centralizeCdkBuckets: undefined | ({ enable: boolean; })
      • cloudwatchLogRetentionInDays: number
      • controlTower: { enable: boolean; }
      • enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[]
      • homeRegion: string
      • limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[]
      • logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...
      • managementAccountAccessRole: string
      • reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...)
      • snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; })
      • ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })
      • terminationProtection: undefined | boolean
    • errors: string[]

    Returns void

  • Parameters

    • values: {
          acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; });
          backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; });
          centralizeCdkBuckets: undefined | ({ enable: boolean; });
          cloudwatchLogRetentionInDays: number;
          controlTower: { enable: boolean; };
          enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[];
          homeRegion: string;
          limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[];
          logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...;
          managementAccountAccessRole: string;
          reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...);
          snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; });
          ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; });
          terminationProtection: undefined | boolean;
      }
      • acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; })
      • backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; })
      • centralizeCdkBuckets: undefined | ({ enable: boolean; })
      • cloudwatchLogRetentionInDays: number
      • controlTower: { enable: boolean; }
      • enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[]
      • homeRegion: string
      • limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[]
      • logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...
      • managementAccountAccessRole: string
      • reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...)
      • snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; })
      • ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })
      • terminationProtection: undefined | boolean
    • errors: string[]

    Returns void

  • Validate CloudWatch Logs replication

    Parameters

    • values: {
          acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; });
          backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; });
          centralizeCdkBuckets: undefined | ({ enable: boolean; });
          cloudwatchLogRetentionInDays: number;
          controlTower: { enable: boolean; };
          enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[];
          homeRegion: string;
          limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[];
          logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...;
          managementAccountAccessRole: string;
          reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...);
          snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; });
          ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; });
          terminationProtection: undefined | boolean;
      }
      • acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; })
      • backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; })
      • centralizeCdkBuckets: undefined | ({ enable: boolean; })
      • cloudwatchLogRetentionInDays: number
      • controlTower: { enable: boolean; }
      • enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[]
      • homeRegion: string
      • limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[]
      • logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...
      • managementAccountAccessRole: string
      • reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...)
      • snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; })
      • ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })
      • terminationProtection: undefined | boolean
    • configDir: string
    • ouIdNames: string[]
    • accountNames: string[]
    • errors: string[]

    Returns void

  • Function to validate CloudWatch Logs Dynamic Partition and enforce format, key-value provided

    Parameters

    • values: {
          acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; });
          backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; });
          centralizeCdkBuckets: undefined | ({ enable: boolean; });
          cloudwatchLogRetentionInDays: number;
          controlTower: { enable: boolean; };
          enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[];
          homeRegion: string;
          limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[];
          logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...;
          managementAccountAccessRole: string;
          reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...);
          snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; });
          ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; });
          terminationProtection: undefined | boolean;
      }
      • acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; })
      • backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; })
      • centralizeCdkBuckets: undefined | ({ enable: boolean; })
      • cloudwatchLogRetentionInDays: number
      • controlTower: { enable: boolean; }
      • enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[]
      • homeRegion: string
      • limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[]
      • logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...
      • managementAccountAccessRole: string
      • reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...)
      • snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; })
      • ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })
      • terminationProtection: undefined | boolean
    • configDir: string
    • errors: string[]

    Returns void

  • Validate Cloudwatch logs exclusion inputs

    Parameters

    • values: {
          acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; });
          backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; });
          centralizeCdkBuckets: undefined | ({ enable: boolean; });
          cloudwatchLogRetentionInDays: number;
          controlTower: { enable: boolean; };
          enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[];
          homeRegion: string;
          limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[];
          logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...;
          managementAccountAccessRole: string;
          reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...);
          snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; });
          ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; });
          terminationProtection: undefined | boolean;
      }
      • acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; })
      • backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; })
      • centralizeCdkBuckets: undefined | ({ enable: boolean; })
      • cloudwatchLogRetentionInDays: number
      • controlTower: { enable: boolean; }
      • enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[]
      • homeRegion: string
      • limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[]
      • logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...
      • managementAccountAccessRole: string
      • reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...)
      • snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; })
      • ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })
      • terminationProtection: undefined | boolean
    • ouIdNames: string[]
    • accountNames: string[]
    • errors: string[]

    Returns void

  • Parameters

    • inputList: string[]
    • globalList: string[]
    • errors: string[]

    Returns void

  • Parameters

    • values: {
          acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; });
          backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; });
          centralizeCdkBuckets: undefined | ({ enable: boolean; });
          cloudwatchLogRetentionInDays: number;
          controlTower: { enable: boolean; };
          enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[];
          homeRegion: string;
          limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[];
          logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...;
          managementAccountAccessRole: string;
          reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...);
          snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; });
          ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; });
          terminationProtection: undefined | boolean;
      }
      • acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; })
      • backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; })
      • centralizeCdkBuckets: undefined | ({ enable: boolean; })
      • cloudwatchLogRetentionInDays: number
      • controlTower: { enable: boolean; }
      • enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[]
      • homeRegion: string
      • limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[]
      • logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...
      • managementAccountAccessRole: string
      • reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...)
      • snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; })
      • ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })
      • terminationProtection: undefined | boolean
    • errors: string[]

    Returns void

  • Function to validate S3 lifecycle rules Central Log Bucket

    Parameters

    • values: {
          acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; });
          backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; });
          centralizeCdkBuckets: undefined | ({ enable: boolean; });
          cloudwatchLogRetentionInDays: number;
          controlTower: { enable: boolean; };
          enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[];
          homeRegion: string;
          limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[];
          logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...;
          managementAccountAccessRole: string;
          reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...);
          snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; });
          ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; });
          terminationProtection: undefined | boolean;
      }
      • acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; })
      • backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; })
      • centralizeCdkBuckets: undefined | ({ enable: boolean; })
      • cloudwatchLogRetentionInDays: number
      • controlTower: { enable: boolean; }
      • enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[]
      • homeRegion: string
      • limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[]
      • logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...
      • managementAccountAccessRole: string
      • reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...)
      • snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; })
      • ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })
      • terminationProtection: undefined | boolean
    • errors: string[]

    Returns void

  • Function to validate S3 lifecycle rules for Cost Reporting

    Parameters

    • values: {
          acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; });
          backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; });
          centralizeCdkBuckets: undefined | ({ enable: boolean; });
          cloudwatchLogRetentionInDays: number;
          controlTower: { enable: boolean; };
          enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[];
          homeRegion: string;
          limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[];
          logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...;
          managementAccountAccessRole: string;
          reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...);
          snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; });
          ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; });
          terminationProtection: undefined | boolean;
      }
      • acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; })
      • backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; })
      • centralizeCdkBuckets: undefined | ({ enable: boolean; })
      • cloudwatchLogRetentionInDays: number
      • controlTower: { enable: boolean; }
      • enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[]
      • homeRegion: string
      • limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[]
      • logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...
      • managementAccountAccessRole: string
      • reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...)
      • snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; })
      • ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })
      • terminationProtection: undefined | boolean
    • errors: string[]

    Returns void

  • Function to validate existence of logging target account name Make sure deployment target accounts are part of account config file

    Parameters

    • values: {
          acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; });
          backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; });
          centralizeCdkBuckets: undefined | ({ enable: boolean; });
          cloudwatchLogRetentionInDays: number;
          controlTower: { enable: boolean; };
          enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[];
          homeRegion: string;
          limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[];
          logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...;
          managementAccountAccessRole: string;
          reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...);
          snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; });
          ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; });
          terminationProtection: undefined | boolean;
      }
      • acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; })
      • backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; })
      • centralizeCdkBuckets: undefined | ({ enable: boolean; })
      • cloudwatchLogRetentionInDays: number
      • controlTower: { enable: boolean; }
      • enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[]
      • homeRegion: string
      • limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[]
      • logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...
      • managementAccountAccessRole: string
      • reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...)
      • snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; })
      • ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })
      • terminationProtection: undefined | boolean
    • accountNames: string[]
    • errors: string[]

    Returns void

  • Parameters

    • values: {
          acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; });
          backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; });
          centralizeCdkBuckets: undefined | ({ enable: boolean; });
          cloudwatchLogRetentionInDays: number;
          controlTower: { enable: boolean; };
          enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[];
          homeRegion: string;
          limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[];
          logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...;
          managementAccountAccessRole: string;
          reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...);
          snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; });
          ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; });
          terminationProtection: undefined | boolean;
      }
      • acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; })
      • backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; })
      • centralizeCdkBuckets: undefined | ({ enable: boolean; })
      • cloudwatchLogRetentionInDays: number
      • controlTower: { enable: boolean; }
      • enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[]
      • homeRegion: string
      • limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[]
      • logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...
      • managementAccountAccessRole: string
      • reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...)
      • snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; })
      • ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })
      • terminationProtection: undefined | boolean
    • configDir: string
    • errors: string[]

    Returns void

  • Parameters

    • values: {
          acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; });
          backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; });
          centralizeCdkBuckets: undefined | ({ enable: boolean; });
          cloudwatchLogRetentionInDays: number;
          controlTower: { enable: boolean; };
          enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[];
          homeRegion: string;
          limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[];
          logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...;
          managementAccountAccessRole: string;
          reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...);
          snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; });
          ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; });
          terminationProtection: undefined | boolean;
      }
      • acceleratorMetadata: undefined | ({ enable: boolean; account: string; readOnlyAccessRoleArns: string[] | undefined; })
      • backup: undefined | ({ vaults: { name: string; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; }[]; })
      • centralizeCdkBuckets: undefined | ({ enable: boolean; })
      • cloudwatchLogRetentionInDays: number
      • controlTower: { enable: boolean; }
      • enabledRegions: ("af-south-1" | "ap-east-1" | "ap-south-1" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ca-central-1" | "eu-central-1" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-1" | "us-east-2" | "us-west-1" | "us-west-2" | "cn-north-1" | "cn-northwest-1" | "eu-central-2" | "ap-south-2" | "us-gov-west-1" | "us-gov-east-1" | "us-iso-east-1" | "us-iso-west-1" | "us-isob-east-1" | "ap-southeast-4")[]
      • homeRegion: string
      • limits: undefined | ({ serviceCode: string; quotaCode: string; desiredValue: number; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })[]
      • logging: { account: string; centralizedLoggingRegion: string | undefined; cloudtrail: { enable: boolean; organizationTrail: boolean; organizationTrailSettings: { multiRegionTrail: boolean; globalServiceEvents: boolean; ... 5 more ...; apiCallRateInsight: boolean; } | undefined; accountTrails: { ...; }[] | undefined; lifecycl...
      • managementAccountAccessRole: string
      • reports: undefined | ({ costAndUsageReport: { additionalSchemaElements: string[] | undefined; compression: string; format: string; reportName: string; s3Prefix: string; timeUnit: string; additionalArtifacts: ("REDSHIFT" | ... 1 more ... | "ATHENA")[] | undefined; refreshClosedReports: boolean; reportVersioning: string; lifecycleRules: { ...)
      • snsTopics: undefined | ({ deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; } | undefined; topics: { ...; }[] | undefined; })
      • ssmInventory: undefined | ({ enable: boolean; deploymentTargets: { organizationalUnits: string[] | undefined; accounts: string[] | undefined; excludedRegions: string[] | undefined; excludedAccounts: string[] | undefined; }; })
      • terminationProtection: undefined | boolean
    • errors: string[]

    Returns void

  • Load from file in given directory

    Returns

    Parameters

    • dir: string
    • Optional validateConfig: boolean

    Returns GlobalConfig

  • Load from string content

    Parameters

    • content: string

    Returns undefined | GlobalConfig

Generated using TypeDoc