aws-cdk 2.1020.2 → 2.1022.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. package/README.md +100 -55
  2. package/THIRD_PARTY_LICENSES +65 -65
  3. package/build-info.json +2 -2
  4. package/db.json.gz +0 -0
  5. package/lib/api/refactor.d.ts +1 -0
  6. package/lib/api/refactor.js +8 -0
  7. package/lib/cli/cdk-toolkit.d.ts +19 -21
  8. package/lib/cli/cdk-toolkit.js +145 -141
  9. package/lib/cli/cli-config.js +19 -13
  10. package/lib/cli/cli-type-registry.json +29 -12
  11. package/lib/cli/cli.js +76 -22
  12. package/lib/cli/convert-to-user-input.js +16 -6
  13. package/lib/cli/display-version.d.ts +11 -0
  14. package/lib/cli/display-version.js +101 -0
  15. package/lib/cli/io-host/cli-io-host.d.ts +11 -11
  16. package/lib/cli/io-host/cli-io-host.js +68 -24
  17. package/lib/cli/parse-command-line-arguments.js +29 -11
  18. package/lib/cli/platform-warnings.d.ts +2 -1
  19. package/lib/cli/platform-warnings.js +3 -4
  20. package/lib/cli/telemetry/collect-telemetry.d.ts +5 -0
  21. package/lib/cli/telemetry/collect-telemetry.js +15 -0
  22. package/lib/cli/telemetry/endpoint-sink.d.ts +1 -2
  23. package/lib/cli/telemetry/endpoint-sink.js +4 -3
  24. package/lib/cli/telemetry/error.d.ts +2 -0
  25. package/lib/cli/telemetry/error.js +16 -0
  26. package/lib/cli/telemetry/feature-flags.d.ts +96 -0
  27. package/lib/cli/telemetry/feature-flags.js +103 -0
  28. package/lib/cli/telemetry/file-sink.js +8 -12
  29. package/lib/cli/telemetry/installation-id.d.ts +5 -0
  30. package/lib/cli/telemetry/installation-id.js +47 -0
  31. package/lib/cli/telemetry/library-version.d.ts +2 -0
  32. package/lib/cli/telemetry/library-version.js +30 -0
  33. package/lib/cli/telemetry/messages.d.ts +40 -0
  34. package/lib/cli/telemetry/messages.js +65 -0
  35. package/lib/cli/telemetry/sanitation.d.ts +100 -0
  36. package/lib/cli/telemetry/sanitation.js +79 -0
  37. package/lib/cli/telemetry/schema.d.ts +47 -19
  38. package/lib/cli/telemetry/schema.js +10 -1
  39. package/lib/cli/telemetry/session.d.ts +33 -0
  40. package/lib/cli/telemetry/session.js +130 -0
  41. package/lib/cli/user-configuration.d.ts +14 -4
  42. package/lib/cli/user-configuration.js +42 -30
  43. package/lib/cli/user-input.d.ts +31 -13
  44. package/lib/cli/user-input.js +1 -1
  45. package/lib/cli/util/ci.d.ts +5 -0
  46. package/lib/cli/util/ci.js +11 -0
  47. package/lib/cli/util/yargs-helpers.d.ts +1 -1
  48. package/lib/cli/util/yargs-helpers.js +7 -7
  49. package/lib/cli/version.d.ts +2 -12
  50. package/lib/cli/version.js +5 -103
  51. package/lib/commands/context.d.ts +10 -5
  52. package/lib/commands/context.js +35 -35
  53. package/lib/commands/docs.d.ts +6 -1
  54. package/lib/commands/docs.js +20 -19
  55. package/lib/commands/doctor.d.ts +4 -1
  56. package/lib/commands/doctor.js +17 -17
  57. package/lib/commands/flags.d.ts +3 -0
  58. package/lib/commands/flags.js +43 -0
  59. package/lib/commands/init/init-hooks.d.ts +2 -1
  60. package/lib/commands/init/init-hooks.js +6 -6
  61. package/lib/commands/init/init.d.ts +4 -2
  62. package/lib/commands/init/init.js +56 -54
  63. package/lib/commands/init/os.d.ts +2 -1
  64. package/lib/commands/init/os.js +3 -4
  65. package/lib/commands/list-stacks.js +8 -2
  66. package/lib/commands/migrate.d.ts +6 -17
  67. package/lib/commands/migrate.js +28 -29
  68. package/lib/cxapp/cloud-assembly.js +1 -1
  69. package/lib/cxapp/cloud-executable.js +41 -26
  70. package/lib/index.d.ts +1 -1
  71. package/lib/index.js +46764 -31086
  72. package/lib/index_bg.wasm +0 -0
  73. package/lib/init-templates/.init-version.json +1 -1
  74. package/lib/init-templates/.recommended-feature-flags.json +1 -0
  75. package/lib/{legacy-aws-auth.d.ts → legacy/aws-auth.d.ts} +1 -1
  76. package/lib/legacy/aws-auth.js +47 -0
  77. package/lib/legacy/configuration.d.ts +82 -0
  78. package/lib/legacy/configuration.js +321 -0
  79. package/lib/legacy/index.d.ts +19 -0
  80. package/lib/{legacy-exports-source.js → legacy/index.js} +23 -23
  81. package/lib/{legacy-logging-source.d.ts → legacy/logging.d.ts} +50 -0
  82. package/lib/legacy/logging.js +154 -0
  83. package/lib/legacy/types.js +3 -0
  84. package/lib/legacy-exports.d.ts +4 -3
  85. package/lib/legacy-exports.js +4 -1
  86. package/package.json +15 -15
  87. package/lib/legacy-aws-auth.js +0 -47
  88. package/lib/legacy-exports-source.d.ts +0 -18
  89. package/lib/legacy-logging-source.js +0 -107
  90. package/lib/legacy-types.js +0 -3
  91. package/lib/logging.d.ts +0 -99
  92. package/lib/logging.js +0 -146
  93. /package/lib/{legacy-types.d.ts → legacy/types.d.ts} +0 -0
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.cdkCliErrorName = cdkCliErrorName;
4
+ const schema_1 = require("./schema");
5
+ function cdkCliErrorName(name) {
6
+ // We only record error names that we control. Errors coming from dependencies
7
+ // contain text that we have no control over so it is safer to not send it.
8
+ if (!isKnownErrorName(name)) {
9
+ return schema_1.ErrorName.UNKNOWN_ERROR;
10
+ }
11
+ return name;
12
+ }
13
+ function isKnownErrorName(name) {
14
+ return Object.values(schema_1.ErrorName).includes(name);
15
+ }
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJlcnJvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUVBLDBDQU9DO0FBVEQscUNBQXFDO0FBRXJDLFNBQWdCLGVBQWUsQ0FBQyxJQUFZO0lBQzFDLDhFQUE4RTtJQUM5RSwyRUFBMkU7SUFDM0UsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDNUIsT0FBTyxrQkFBUyxDQUFDLGFBQWEsQ0FBQztJQUNqQyxDQUFDO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQsU0FBUyxnQkFBZ0IsQ0FBQyxJQUFZO0lBQ3BDLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxrQkFBUyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQWlCLENBQUMsQ0FBQztBQUM5RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXJyb3JOYW1lIH0gZnJvbSAnLi9zY2hlbWEnO1xuXG5leHBvcnQgZnVuY3Rpb24gY2RrQ2xpRXJyb3JOYW1lKG5hbWU6IHN0cmluZyk6IEVycm9yTmFtZSB7XG4gIC8vIFdlIG9ubHkgcmVjb3JkIGVycm9yIG5hbWVzIHRoYXQgd2UgY29udHJvbC4gRXJyb3JzIGNvbWluZyBmcm9tIGRlcGVuZGVuY2llc1xuICAvLyBjb250YWluIHRleHQgdGhhdCB3ZSBoYXZlIG5vIGNvbnRyb2wgb3ZlciBzbyBpdCBpcyBzYWZlciB0byBub3Qgc2VuZCBpdC5cbiAgaWYgKCFpc0tub3duRXJyb3JOYW1lKG5hbWUpKSB7XG4gICAgcmV0dXJuIEVycm9yTmFtZS5VTktOT1dOX0VSUk9SO1xuICB9XG4gIHJldHVybiBuYW1lO1xufVxuXG5mdW5jdGlvbiBpc0tub3duRXJyb3JOYW1lKG5hbWU6IHN0cmluZyk6IG5hbWUgaXMgRXJyb3JOYW1lIHtcbiAgcmV0dXJuIE9iamVjdC52YWx1ZXMoRXJyb3JOYW1lKS5pbmNsdWRlcyhuYW1lIGFzIEVycm9yTmFtZSk7XG59XG4iXX0=
@@ -0,0 +1,96 @@
1
+ /**
2
+ * Enum of all valid CDK feature flag names.
3
+ *
4
+ * These flags are used to control behavior changes in the CDK.
5
+ * For more information, see: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/cx-api/FEATURE_FLAGS.md
6
+ */
7
+ export declare enum FeatureFlag {
8
+ CORE_NEW_STYLE_STACK_SYNTHESIS = "@aws-cdk/core:newStyleStackSynthesis",
9
+ CORE_STACK_RELATIVE_EXPORTS = "@aws-cdk/core:stackRelativeExports",
10
+ RDS_LOWERCASE_DB_IDENTIFIER = "@aws-cdk/aws-rds:lowercaseDbIdentifier",
11
+ APIGATEWAY_USAGE_PLAN_KEY_ORDER_INSENSITIVE_ID = "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId",
12
+ LAMBDA_RECOGNIZE_VERSION_PROPS = "@aws-cdk/aws-lambda:recognizeVersionProps",
13
+ CLOUDFRONT_DEFAULT_SECURITY_POLICY_TLS_V1_2_2021 = "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021",
14
+ CORE_TARGET_PARTITIONS = "@aws-cdk/core:target-partitions",
15
+ ECS_SERVICE_EXTENSIONS_ENABLE_DEFAULT_LOG_DRIVER = "@aws-cdk-containers/ecs-service-extensions:enableDefaultLogDriver",
16
+ EC2_UNIQUE_IMDSV2_TEMPLATE_NAME = "@aws-cdk/aws-ec2:uniqueImdsv2TemplateName",
17
+ IAM_MINIMIZE_POLICIES = "@aws-cdk/aws-iam:minimizePolicies",
18
+ CORE_CHECK_SECRET_USAGE = "@aws-cdk/core:checkSecretUsage",
19
+ LAMBDA_RECOGNIZE_LAYER_VERSION = "@aws-cdk/aws-lambda:recognizeLayerVersion",
20
+ CORE_VALIDATE_SNAPSHOT_REMOVAL_POLICY = "@aws-cdk/core:validateSnapshotRemovalPolicy",
21
+ CODEPIPELINE_CROSS_ACCOUNT_KEY_ALIAS_STACK_SAFE_RESOURCE_NAME = "@aws-cdk/aws-codepipeline:crossAccountKeyAliasStackSafeResourceName",
22
+ S3_CREATE_DEFAULT_LOGGING_POLICY = "@aws-cdk/aws-s3:createDefaultLoggingPolicy",
23
+ SNS_SUBSCRIPTIONS_RESTRICT_SQS_DECRYPTION = "@aws-cdk/aws-sns-subscriptions:restrictSqsDescryption",
24
+ ECS_ARN_FORMAT_INCLUDES_CLUSTER_NAME = "@aws-cdk/aws-ecs:arnFormatIncludesClusterName",
25
+ APIGATEWAY_DISABLE_CLOUD_WATCH_ROLE = "@aws-cdk/aws-apigateway:disableCloudWatchRole",
26
+ CORE_ENABLE_PARTITION_LITERALS = "@aws-cdk/core:enablePartitionLiterals",
27
+ ECS_DISABLE_EXPLICIT_DEPLOYMENT_CONTROLLER_FOR_CIRCUIT_BREAKER = "@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker",
28
+ EVENTS_EVENTS_TARGET_QUEUE_SAME_ACCOUNT = "@aws-cdk/aws-events:eventsTargetQueueSameAccount",
29
+ IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME = "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName",
30
+ S3_SERVER_ACCESS_LOGS_USE_BUCKET_POLICY = "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy",
31
+ CUSTOMRESOURCES_INSTALL_LATEST_AWS_SDK_DEFAULT = "@aws-cdk/customresources:installLatestAwsSdkDefault",
32
+ ROUTE53_PATTERNS_USE_CERTIFICATE = "@aws-cdk/aws-route53-patterns:useCertificate",
33
+ CODEDEPLOY_REMOVE_ALARMS_FROM_DEPLOYMENT_GROUP = "@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup",
34
+ RDS_DATABASE_PROXY_UNIQUE_RESOURCE_NAME = "@aws-cdk/aws-rds:databaseProxyUniqueResourceName",
35
+ APIGATEWAY_AUTHORIZER_CHANGE_DEPLOYMENT_LOGICAL_ID = "@aws-cdk/aws-apigateway:authorizerChangeDeploymentLogicalId",
36
+ EC2_LAUNCH_TEMPLATE_DEFAULT_USER_DATA = "@aws-cdk/aws-ec2:launchTemplateDefaultUserData",
37
+ SECRETSMANAGER_USE_ATTACHED_SECRET_RESOURCE_POLICY_FOR_SECRET_TARGET_ATTACHMENTS = "@aws-cdk/aws-secretsmanager:useAttachedSecretResourcePolicyForSecretTargetAttachments",
38
+ REDSHIFT_COLUMN_ID = "@aws-cdk/aws-redshift:columnId",
39
+ STEPFUNCTIONS_TASKS_ENABLE_EMR_SERVICE_POLICY_V2 = "@aws-cdk/aws-stepfunctions-tasks:enableEmrServicePolicyV2",
40
+ APIGATEWAY_REQUEST_VALIDATOR_UNIQUE_ID = "@aws-cdk/aws-apigateway:requestValidatorUniqueId",
41
+ EC2_RESTRICT_DEFAULT_SECURITY_GROUP = "@aws-cdk/aws-ec2:restrictDefaultSecurityGroup",
42
+ KMS_ALIAS_NAME_REF = "@aws-cdk/aws-kms:aliasNameRef",
43
+ CORE_INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION = "@aws-cdk/core:includePrefixInUniqueNameGeneration",
44
+ AUTOSCALING_GENERATE_LAUNCH_TEMPLATE_INSTEAD_OF_LAUNCH_CONFIG = "@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig",
45
+ OPENSEARCHSERVICE_ENABLE_OPENSEARCH_MULTI_AZ_WITH_STANDBY = "@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby",
46
+ EFS_DENY_ANONYMOUS_ACCESS = "@aws-cdk/aws-efs:denyAnonymousAccess",
47
+ EFS_MOUNT_TARGET_ORDER_INSENSITIVE_LOGICAL_ID = "@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId",
48
+ LAMBDA_NODEJS_USE_LATEST_RUNTIME_VERSION = "@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion",
49
+ APPSYNC_USE_ARN_FOR_SOURCE_API_ASSOCIATION_IDENTIFIER = "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier",
50
+ RDS_AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS = "@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters",
51
+ RDS_PREVENT_RENDERING_DEPRECATED_CREDENTIALS = "@aws-cdk/aws-rds:preventRenderingDeprecatedCredentials",
52
+ CODEPIPELINE_ACTIONS_USE_NEW_DEFAULT_BRANCH_FOR_CODE_COMMIT_SOURCE = "@aws-cdk/aws-codepipeline-actions:useNewDefaultBranchForCodeCommitSource",
53
+ CLOUDWATCH_ACTIONS_CHANGE_LAMBDA_PERMISSION_LOGICAL_ID_FOR_LAMBDA_ACTION = "@aws-cdk/aws-cloudwatch-actions:changeLambdaPermissionLogicalIdForLambdaAction",
54
+ CODEPIPELINE_CROSS_ACCOUNT_KEYS_DEFAULT_VALUE_TO_FALSE = "@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse",
55
+ CODEPIPELINE_DEFAULT_PIPELINE_TYPE_TO_V2 = "@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2",
56
+ KMS_REDUCE_CROSS_ACCOUNT_REGION_POLICY_SCOPE = "@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope",
57
+ EKS_NODEGROUP_NAME_ATTRIBUTE = "@aws-cdk/aws-eks:nodegroupNameAttribute",
58
+ EC2_EBS_DEFAULT_GP3_VOLUME = "@aws-cdk/aws-ec2:ebsDefaultGp3Volume",
59
+ PIPELINES_REDUCE_ASSET_ROLE_TRUST_SCOPE = "@aws-cdk/pipelines:reduceAssetRoleTrustScope",
60
+ ECS_REMOVE_DEFAULT_DEPLOYMENT_ALARM = "@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm",
61
+ CUSTOM_RESOURCES_LOG_API_RESPONSE_DATA_PROPERTY_TRUE_DEFAULT = "@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault",
62
+ S3_KEEP_NOTIFICATION_IN_IMPORTED_BUCKET = "@aws-cdk/aws-s3:keepNotificationInImportedBucket",
63
+ STEPFUNCTIONS_TASKS_USE_NEW_S3_URI_PARAMETERS_FOR_BEDROCK_INVOKE_MODEL_TASK = "@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask",
64
+ ECS_REDUCE_EC2_FARGATE_CLOUD_WATCH_PERMISSIONS = "@aws-cdk/aws-ecs:reduceEc2FargateCloudWatchPermissions",
65
+ EC2_EC2_SUM_TIMEOUT_ENABLED = "@aws-cdk/aws-ec2:ec2SumTimeoutEnabled",
66
+ APPSYNC_APP_SYNC_GRAPHQL_API_SCOPE_LAMBDA_PERMISSION = "@aws-cdk/aws-appsync:appSyncGraphQLAPIScopeLambdaPermission",
67
+ LAMBDA_NODEJS_SDK_V3_EXCLUDE_SMITHY_PACKAGES = "@aws-cdk/aws-lambda-nodejs:sdkV3ExcludeSmithyPackages",
68
+ RDS_SET_CORRECT_VALUE_FOR_DATABASE_INSTANCE_READ_REPLICA_INSTANCE_RESOURCE_ID = "@aws-cdk/aws-rds:setCorrectValueForDatabaseInstanceReadReplicaInstanceResourceId",
69
+ CORE_CFN_INCLUDE_REJECT_COMPLEX_RESOURCE_UPDATE_CREATE_POLICY_INTRINSICS = "@aws-cdk/core:cfnIncludeRejectComplexResourceUpdateCreatePolicyIntrinsics",
70
+ STEPFUNCTIONS_TASKS_FIX_RUN_ECS_TASK_POLICY = "@aws-cdk/aws-stepfunctions-tasks:fixRunEcsTaskPolicy",
71
+ DYNAMODB_RESOURCE_POLICY_PER_REPLICA = "@aws-cdk/aws-dynamodb:resourcePolicyPerReplica",
72
+ EC2_BASTION_HOST_USE_AMAZON_LINUX_2023_BY_DEFAULT = "@aws-cdk/aws-ec2:bastionHostUseAmazonLinux2023ByDefault",
73
+ CORE_ASPECT_STABILIZATION = "@aws-cdk/core:aspectStabilization",
74
+ ROUTE53_TARGETS_USER_POOL_DOMAIN_NAME_METHOD_WITHOUT_CUSTOM_RESOURCE = "@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource",
75
+ ECS_DISABLE_ECS_IMDS_BLOCKING = "@aws-cdk/aws-ecs:disableEcsImdsBlocking",
76
+ ECS_ENABLE_IMDS_BLOCKING_DEPRECATED_FEATURE = "@aws-cdk/aws-ecs:enableImdsBlockingDeprecatedFeature",
77
+ ELASTICLOADBALANCINGV2_ALB_DUALSTACK_WITHOUT_PUBLIC_IPV4_SECURITY_GROUP_RULES_DEFAULT = "@aws-cdk/aws-elasticloadbalancingV2:albDualstackWithoutPublicIpv4SecurityGroupRulesDefault",
78
+ IAM_OIDC_REJECT_UNAUTHORIZED_CONNECTIONS = "@aws-cdk/aws-iam:oidcRejectUnauthorizedConnections",
79
+ CORE_ENABLE_ADDITIONAL_METADATA_COLLECTION = "@aws-cdk/core:enableAdditionalMetadataCollection",
80
+ LAMBDA_CREATE_NEW_POLICIES_WITH_ADD_TO_ROLE_POLICY = "@aws-cdk/aws-lambda:createNewPoliciesWithAddToRolePolicy",
81
+ S3_SET_UNIQUE_REPLICATION_ROLE_NAME = "@aws-cdk/aws-s3:setUniqueReplicationRoleName",
82
+ PIPELINES_REDUCE_STAGE_ROLE_TRUST_SCOPE = "@aws-cdk/pipelines:reduceStageRoleTrustScope",
83
+ EVENTS_REQUIRE_EVENT_BUS_POLICY_SID = "@aws-cdk/aws-events:requireEventBusPolicySid",
84
+ DYNAMODB_RETAIN_TABLE_REPLICA = "@aws-cdk/aws-dynamodb:retainTableReplica",
85
+ COGNITO_LOG_USER_POOL_CLIENT_SECRET_VALUE = "@aws-cdk/cognito:logUserPoolClientSecretValue",
86
+ STEPFUNCTIONS_USE_DISTRIBUTED_MAP_RESULT_WRITER_V2 = "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2",
87
+ PIPELINES_REDUCE_CROSS_ACCOUNT_ACTION_ROLE_TRUST_SCOPE = "@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope",
88
+ CORE_ASPECT_PRIORITIES_MUTATING = "@aws-cdk/core:aspectPrioritiesMutating",
89
+ S3_NOTIFICATIONS_ADD_S3_TRUST_KEY_POLICY_FOR_SNS_SUBSCRIPTIONS = "@aws-cdk/s3-notifications:addS3TrustKeyPolicyForSnsSubscriptions",
90
+ EC2_ALPHA_USE_RESOURCE_ID_FOR_VPC_V2_MIGRATION = "@aws-cdk/aws-ec2-alpha:useResourceIdForVpcV2Migration",
91
+ EC2_REQUIRE_PRIVATE_SUBNETS_FOR_EGRESS_ONLY_INTERNET_GATEWAY = "@aws-cdk/aws-ec2:requirePrivateSubnetsForEgressOnlyInternetGateway",
92
+ S3_PUBLIC_ACCESS_BLOCKED_BY_DEFAULT = "@aws-cdk/aws-s3:publicAccessBlockedByDefault",
93
+ LAMBDA_USE_CDK_MANAGED_LOG_GROUP = "@aws-cdk/aws-lambda:useCdkManagedLogGroup",
94
+ KMS_APPLY_IMPORTED_ALIAS_PERMISSIONS_TO_PRINCIPAL = "@aws-cdk/aws-kms:applyImportedAliasPermissionsToPrincipal",
95
+ CORE_EXPLICIT_STACK_TAGS = "@aws-cdk/core:explicitStackTags"
96
+ }
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FeatureFlag = void 0;
4
+ // TODO: implement this by bundling the source of truth with the CDK CLI
5
+ // We are currently hardcoding these values to facilitate a quicker release.
6
+ /**
7
+ * Enum of all valid CDK feature flag names.
8
+ *
9
+ * These flags are used to control behavior changes in the CDK.
10
+ * For more information, see: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/cx-api/FEATURE_FLAGS.md
11
+ */
12
+ var FeatureFlag;
13
+ (function (FeatureFlag) {
14
+ FeatureFlag["CORE_NEW_STYLE_STACK_SYNTHESIS"] = "@aws-cdk/core:newStyleStackSynthesis";
15
+ FeatureFlag["CORE_STACK_RELATIVE_EXPORTS"] = "@aws-cdk/core:stackRelativeExports";
16
+ FeatureFlag["RDS_LOWERCASE_DB_IDENTIFIER"] = "@aws-cdk/aws-rds:lowercaseDbIdentifier";
17
+ FeatureFlag["APIGATEWAY_USAGE_PLAN_KEY_ORDER_INSENSITIVE_ID"] = "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId";
18
+ FeatureFlag["LAMBDA_RECOGNIZE_VERSION_PROPS"] = "@aws-cdk/aws-lambda:recognizeVersionProps";
19
+ FeatureFlag["CLOUDFRONT_DEFAULT_SECURITY_POLICY_TLS_V1_2_2021"] = "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021";
20
+ FeatureFlag["CORE_TARGET_PARTITIONS"] = "@aws-cdk/core:target-partitions";
21
+ FeatureFlag["ECS_SERVICE_EXTENSIONS_ENABLE_DEFAULT_LOG_DRIVER"] = "@aws-cdk-containers/ecs-service-extensions:enableDefaultLogDriver";
22
+ FeatureFlag["EC2_UNIQUE_IMDSV2_TEMPLATE_NAME"] = "@aws-cdk/aws-ec2:uniqueImdsv2TemplateName";
23
+ FeatureFlag["IAM_MINIMIZE_POLICIES"] = "@aws-cdk/aws-iam:minimizePolicies";
24
+ FeatureFlag["CORE_CHECK_SECRET_USAGE"] = "@aws-cdk/core:checkSecretUsage";
25
+ FeatureFlag["LAMBDA_RECOGNIZE_LAYER_VERSION"] = "@aws-cdk/aws-lambda:recognizeLayerVersion";
26
+ FeatureFlag["CORE_VALIDATE_SNAPSHOT_REMOVAL_POLICY"] = "@aws-cdk/core:validateSnapshotRemovalPolicy";
27
+ FeatureFlag["CODEPIPELINE_CROSS_ACCOUNT_KEY_ALIAS_STACK_SAFE_RESOURCE_NAME"] = "@aws-cdk/aws-codepipeline:crossAccountKeyAliasStackSafeResourceName";
28
+ FeatureFlag["S3_CREATE_DEFAULT_LOGGING_POLICY"] = "@aws-cdk/aws-s3:createDefaultLoggingPolicy";
29
+ FeatureFlag["SNS_SUBSCRIPTIONS_RESTRICT_SQS_DECRYPTION"] = "@aws-cdk/aws-sns-subscriptions:restrictSqsDescryption";
30
+ FeatureFlag["ECS_ARN_FORMAT_INCLUDES_CLUSTER_NAME"] = "@aws-cdk/aws-ecs:arnFormatIncludesClusterName";
31
+ FeatureFlag["APIGATEWAY_DISABLE_CLOUD_WATCH_ROLE"] = "@aws-cdk/aws-apigateway:disableCloudWatchRole";
32
+ FeatureFlag["CORE_ENABLE_PARTITION_LITERALS"] = "@aws-cdk/core:enablePartitionLiterals";
33
+ FeatureFlag["ECS_DISABLE_EXPLICIT_DEPLOYMENT_CONTROLLER_FOR_CIRCUIT_BREAKER"] = "@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker";
34
+ FeatureFlag["EVENTS_EVENTS_TARGET_QUEUE_SAME_ACCOUNT"] = "@aws-cdk/aws-events:eventsTargetQueueSameAccount";
35
+ FeatureFlag["IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME"] = "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName";
36
+ FeatureFlag["S3_SERVER_ACCESS_LOGS_USE_BUCKET_POLICY"] = "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy";
37
+ FeatureFlag["CUSTOMRESOURCES_INSTALL_LATEST_AWS_SDK_DEFAULT"] = "@aws-cdk/customresources:installLatestAwsSdkDefault";
38
+ FeatureFlag["ROUTE53_PATTERNS_USE_CERTIFICATE"] = "@aws-cdk/aws-route53-patterns:useCertificate";
39
+ FeatureFlag["CODEDEPLOY_REMOVE_ALARMS_FROM_DEPLOYMENT_GROUP"] = "@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup";
40
+ FeatureFlag["RDS_DATABASE_PROXY_UNIQUE_RESOURCE_NAME"] = "@aws-cdk/aws-rds:databaseProxyUniqueResourceName";
41
+ FeatureFlag["APIGATEWAY_AUTHORIZER_CHANGE_DEPLOYMENT_LOGICAL_ID"] = "@aws-cdk/aws-apigateway:authorizerChangeDeploymentLogicalId";
42
+ FeatureFlag["EC2_LAUNCH_TEMPLATE_DEFAULT_USER_DATA"] = "@aws-cdk/aws-ec2:launchTemplateDefaultUserData";
43
+ FeatureFlag["SECRETSMANAGER_USE_ATTACHED_SECRET_RESOURCE_POLICY_FOR_SECRET_TARGET_ATTACHMENTS"] = "@aws-cdk/aws-secretsmanager:useAttachedSecretResourcePolicyForSecretTargetAttachments";
44
+ FeatureFlag["REDSHIFT_COLUMN_ID"] = "@aws-cdk/aws-redshift:columnId";
45
+ FeatureFlag["STEPFUNCTIONS_TASKS_ENABLE_EMR_SERVICE_POLICY_V2"] = "@aws-cdk/aws-stepfunctions-tasks:enableEmrServicePolicyV2";
46
+ FeatureFlag["APIGATEWAY_REQUEST_VALIDATOR_UNIQUE_ID"] = "@aws-cdk/aws-apigateway:requestValidatorUniqueId";
47
+ FeatureFlag["EC2_RESTRICT_DEFAULT_SECURITY_GROUP"] = "@aws-cdk/aws-ec2:restrictDefaultSecurityGroup";
48
+ FeatureFlag["KMS_ALIAS_NAME_REF"] = "@aws-cdk/aws-kms:aliasNameRef";
49
+ FeatureFlag["CORE_INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION"] = "@aws-cdk/core:includePrefixInUniqueNameGeneration";
50
+ FeatureFlag["AUTOSCALING_GENERATE_LAUNCH_TEMPLATE_INSTEAD_OF_LAUNCH_CONFIG"] = "@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig";
51
+ FeatureFlag["OPENSEARCHSERVICE_ENABLE_OPENSEARCH_MULTI_AZ_WITH_STANDBY"] = "@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby";
52
+ FeatureFlag["EFS_DENY_ANONYMOUS_ACCESS"] = "@aws-cdk/aws-efs:denyAnonymousAccess";
53
+ FeatureFlag["EFS_MOUNT_TARGET_ORDER_INSENSITIVE_LOGICAL_ID"] = "@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId";
54
+ FeatureFlag["LAMBDA_NODEJS_USE_LATEST_RUNTIME_VERSION"] = "@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion";
55
+ FeatureFlag["APPSYNC_USE_ARN_FOR_SOURCE_API_ASSOCIATION_IDENTIFIER"] = "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier";
56
+ FeatureFlag["RDS_AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS"] = "@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters";
57
+ FeatureFlag["RDS_PREVENT_RENDERING_DEPRECATED_CREDENTIALS"] = "@aws-cdk/aws-rds:preventRenderingDeprecatedCredentials";
58
+ FeatureFlag["CODEPIPELINE_ACTIONS_USE_NEW_DEFAULT_BRANCH_FOR_CODE_COMMIT_SOURCE"] = "@aws-cdk/aws-codepipeline-actions:useNewDefaultBranchForCodeCommitSource";
59
+ FeatureFlag["CLOUDWATCH_ACTIONS_CHANGE_LAMBDA_PERMISSION_LOGICAL_ID_FOR_LAMBDA_ACTION"] = "@aws-cdk/aws-cloudwatch-actions:changeLambdaPermissionLogicalIdForLambdaAction";
60
+ FeatureFlag["CODEPIPELINE_CROSS_ACCOUNT_KEYS_DEFAULT_VALUE_TO_FALSE"] = "@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse";
61
+ FeatureFlag["CODEPIPELINE_DEFAULT_PIPELINE_TYPE_TO_V2"] = "@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2";
62
+ FeatureFlag["KMS_REDUCE_CROSS_ACCOUNT_REGION_POLICY_SCOPE"] = "@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope";
63
+ FeatureFlag["EKS_NODEGROUP_NAME_ATTRIBUTE"] = "@aws-cdk/aws-eks:nodegroupNameAttribute";
64
+ FeatureFlag["EC2_EBS_DEFAULT_GP3_VOLUME"] = "@aws-cdk/aws-ec2:ebsDefaultGp3Volume";
65
+ FeatureFlag["PIPELINES_REDUCE_ASSET_ROLE_TRUST_SCOPE"] = "@aws-cdk/pipelines:reduceAssetRoleTrustScope";
66
+ FeatureFlag["ECS_REMOVE_DEFAULT_DEPLOYMENT_ALARM"] = "@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm";
67
+ FeatureFlag["CUSTOM_RESOURCES_LOG_API_RESPONSE_DATA_PROPERTY_TRUE_DEFAULT"] = "@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault";
68
+ FeatureFlag["S3_KEEP_NOTIFICATION_IN_IMPORTED_BUCKET"] = "@aws-cdk/aws-s3:keepNotificationInImportedBucket";
69
+ FeatureFlag["STEPFUNCTIONS_TASKS_USE_NEW_S3_URI_PARAMETERS_FOR_BEDROCK_INVOKE_MODEL_TASK"] = "@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask";
70
+ FeatureFlag["ECS_REDUCE_EC2_FARGATE_CLOUD_WATCH_PERMISSIONS"] = "@aws-cdk/aws-ecs:reduceEc2FargateCloudWatchPermissions";
71
+ FeatureFlag["EC2_EC2_SUM_TIMEOUT_ENABLED"] = "@aws-cdk/aws-ec2:ec2SumTimeoutEnabled";
72
+ FeatureFlag["APPSYNC_APP_SYNC_GRAPHQL_API_SCOPE_LAMBDA_PERMISSION"] = "@aws-cdk/aws-appsync:appSyncGraphQLAPIScopeLambdaPermission";
73
+ FeatureFlag["LAMBDA_NODEJS_SDK_V3_EXCLUDE_SMITHY_PACKAGES"] = "@aws-cdk/aws-lambda-nodejs:sdkV3ExcludeSmithyPackages";
74
+ FeatureFlag["RDS_SET_CORRECT_VALUE_FOR_DATABASE_INSTANCE_READ_REPLICA_INSTANCE_RESOURCE_ID"] = "@aws-cdk/aws-rds:setCorrectValueForDatabaseInstanceReadReplicaInstanceResourceId";
75
+ FeatureFlag["CORE_CFN_INCLUDE_REJECT_COMPLEX_RESOURCE_UPDATE_CREATE_POLICY_INTRINSICS"] = "@aws-cdk/core:cfnIncludeRejectComplexResourceUpdateCreatePolicyIntrinsics";
76
+ FeatureFlag["STEPFUNCTIONS_TASKS_FIX_RUN_ECS_TASK_POLICY"] = "@aws-cdk/aws-stepfunctions-tasks:fixRunEcsTaskPolicy";
77
+ FeatureFlag["DYNAMODB_RESOURCE_POLICY_PER_REPLICA"] = "@aws-cdk/aws-dynamodb:resourcePolicyPerReplica";
78
+ FeatureFlag["EC2_BASTION_HOST_USE_AMAZON_LINUX_2023_BY_DEFAULT"] = "@aws-cdk/aws-ec2:bastionHostUseAmazonLinux2023ByDefault";
79
+ FeatureFlag["CORE_ASPECT_STABILIZATION"] = "@aws-cdk/core:aspectStabilization";
80
+ FeatureFlag["ROUTE53_TARGETS_USER_POOL_DOMAIN_NAME_METHOD_WITHOUT_CUSTOM_RESOURCE"] = "@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource";
81
+ FeatureFlag["ECS_DISABLE_ECS_IMDS_BLOCKING"] = "@aws-cdk/aws-ecs:disableEcsImdsBlocking";
82
+ FeatureFlag["ECS_ENABLE_IMDS_BLOCKING_DEPRECATED_FEATURE"] = "@aws-cdk/aws-ecs:enableImdsBlockingDeprecatedFeature";
83
+ FeatureFlag["ELASTICLOADBALANCINGV2_ALB_DUALSTACK_WITHOUT_PUBLIC_IPV4_SECURITY_GROUP_RULES_DEFAULT"] = "@aws-cdk/aws-elasticloadbalancingV2:albDualstackWithoutPublicIpv4SecurityGroupRulesDefault";
84
+ FeatureFlag["IAM_OIDC_REJECT_UNAUTHORIZED_CONNECTIONS"] = "@aws-cdk/aws-iam:oidcRejectUnauthorizedConnections";
85
+ FeatureFlag["CORE_ENABLE_ADDITIONAL_METADATA_COLLECTION"] = "@aws-cdk/core:enableAdditionalMetadataCollection";
86
+ FeatureFlag["LAMBDA_CREATE_NEW_POLICIES_WITH_ADD_TO_ROLE_POLICY"] = "@aws-cdk/aws-lambda:createNewPoliciesWithAddToRolePolicy";
87
+ FeatureFlag["S3_SET_UNIQUE_REPLICATION_ROLE_NAME"] = "@aws-cdk/aws-s3:setUniqueReplicationRoleName";
88
+ FeatureFlag["PIPELINES_REDUCE_STAGE_ROLE_TRUST_SCOPE"] = "@aws-cdk/pipelines:reduceStageRoleTrustScope";
89
+ FeatureFlag["EVENTS_REQUIRE_EVENT_BUS_POLICY_SID"] = "@aws-cdk/aws-events:requireEventBusPolicySid";
90
+ FeatureFlag["DYNAMODB_RETAIN_TABLE_REPLICA"] = "@aws-cdk/aws-dynamodb:retainTableReplica";
91
+ FeatureFlag["COGNITO_LOG_USER_POOL_CLIENT_SECRET_VALUE"] = "@aws-cdk/cognito:logUserPoolClientSecretValue";
92
+ FeatureFlag["STEPFUNCTIONS_USE_DISTRIBUTED_MAP_RESULT_WRITER_V2"] = "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2";
93
+ FeatureFlag["PIPELINES_REDUCE_CROSS_ACCOUNT_ACTION_ROLE_TRUST_SCOPE"] = "@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope";
94
+ FeatureFlag["CORE_ASPECT_PRIORITIES_MUTATING"] = "@aws-cdk/core:aspectPrioritiesMutating";
95
+ FeatureFlag["S3_NOTIFICATIONS_ADD_S3_TRUST_KEY_POLICY_FOR_SNS_SUBSCRIPTIONS"] = "@aws-cdk/s3-notifications:addS3TrustKeyPolicyForSnsSubscriptions";
96
+ FeatureFlag["EC2_ALPHA_USE_RESOURCE_ID_FOR_VPC_V2_MIGRATION"] = "@aws-cdk/aws-ec2-alpha:useResourceIdForVpcV2Migration";
97
+ FeatureFlag["EC2_REQUIRE_PRIVATE_SUBNETS_FOR_EGRESS_ONLY_INTERNET_GATEWAY"] = "@aws-cdk/aws-ec2:requirePrivateSubnetsForEgressOnlyInternetGateway";
98
+ FeatureFlag["S3_PUBLIC_ACCESS_BLOCKED_BY_DEFAULT"] = "@aws-cdk/aws-s3:publicAccessBlockedByDefault";
99
+ FeatureFlag["LAMBDA_USE_CDK_MANAGED_LOG_GROUP"] = "@aws-cdk/aws-lambda:useCdkManagedLogGroup";
100
+ FeatureFlag["KMS_APPLY_IMPORTED_ALIAS_PERMISSIONS_TO_PRINCIPAL"] = "@aws-cdk/aws-kms:applyImportedAliasPermissionsToPrincipal";
101
+ FeatureFlag["CORE_EXPLICIT_STACK_TAGS"] = "@aws-cdk/core:explicitStackTags";
102
+ })(FeatureFlag || (exports.FeatureFlag = FeatureFlag = {}));
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1mbGFncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImZlYXR1cmUtZmxhZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsd0VBQXdFO0FBQ3hFLDRFQUE0RTtBQUM1RTs7Ozs7R0FLRztBQUNILElBQVksV0F5Rlg7QUF6RkQsV0FBWSxXQUFXO0lBQ3JCLHNGQUF1RSxDQUFBO0lBQ3ZFLGlGQUFrRSxDQUFBO0lBQ2xFLHFGQUFzRSxDQUFBO0lBQ3RFLHdIQUF5RyxDQUFBO0lBQ3pHLDJGQUE0RSxDQUFBO0lBQzVFLDZIQUE4RyxDQUFBO0lBQzlHLHlFQUEwRCxDQUFBO0lBQzFELHFJQUFzSCxDQUFBO0lBQ3RILDRGQUE2RSxDQUFBO0lBQzdFLDBFQUEyRCxDQUFBO0lBQzNELHlFQUEwRCxDQUFBO0lBQzFELDJGQUE0RSxDQUFBO0lBQzVFLG9HQUFxRixDQUFBO0lBQ3JGLG9KQUFxSSxDQUFBO0lBQ3JJLDhGQUErRSxDQUFBO0lBQy9FLGtIQUFtRyxDQUFBO0lBQ25HLHFHQUFzRixDQUFBO0lBQ3RGLG9HQUFxRixDQUFBO0lBQ3JGLHVGQUF3RSxDQUFBO0lBQ3hFLHVKQUF3SSxDQUFBO0lBQ3hJLDJHQUE0RixDQUFBO0lBQzVGLDJIQUE0RyxDQUFBO0lBQzVHLDBHQUEyRixDQUFBO0lBQzNGLHFIQUFzRyxDQUFBO0lBQ3RHLGdHQUFpRixDQUFBO0lBQ2pGLHlIQUEwRyxDQUFBO0lBQzFHLDJHQUE0RixDQUFBO0lBQzVGLGlJQUFrSCxDQUFBO0lBQ2xILHVHQUF3RixDQUFBO0lBQ3hGLHlMQUEwSyxDQUFBO0lBQzFLLG9FQUFxRCxDQUFBO0lBQ3JELDZIQUE4RyxDQUFBO0lBQzlHLDBHQUEyRixDQUFBO0lBQzNGLG9HQUFxRixDQUFBO0lBQ3JGLG1FQUFvRCxDQUFBO0lBQ3BELGtIQUFtRyxDQUFBO0lBQ25HLHFKQUFzSSxDQUFBO0lBQ3RJLDhJQUErSCxDQUFBO0lBQy9ILGlGQUFrRSxDQUFBO0lBQ2xFLHNIQUF1RyxDQUFBO0lBQ3ZHLDhHQUErRixDQUFBO0lBQy9GLHFJQUFzSCxDQUFBO0lBQ3RILHVMQUF3SyxDQUFBO0lBQ3hLLHNIQUF1RyxDQUFBO0lBQ3ZHLDhKQUErSSxDQUFBO0lBQy9JLDBLQUEySixDQUFBO0lBQzNKLHVJQUF3SCxDQUFBO0lBQ3hILDZHQUE4RixDQUFBO0lBQzlGLG9IQUFxRyxDQUFBO0lBQ3JHLHVGQUF3RSxDQUFBO0lBQ3hFLGtGQUFtRSxDQUFBO0lBQ25FLHVHQUF3RixDQUFBO0lBQ3hGLG9HQUFxRixDQUFBO0lBQ3JGLCtJQUFnSSxDQUFBO0lBQ2hJLDJHQUE0RixDQUFBO0lBQzVGLDhLQUErSixDQUFBO0lBQy9KLHdIQUF5RyxDQUFBO0lBQ3pHLG9GQUFxRSxDQUFBO0lBQ3JFLG1JQUFvSCxDQUFBO0lBQ3BILHFIQUFzRyxDQUFBO0lBQ3RHLGlMQUFrSyxDQUFBO0lBQ2xLLHFLQUFzSixDQUFBO0lBQ3RKLG1IQUFvRyxDQUFBO0lBQ3BHLHNHQUF1RixDQUFBO0lBQ3ZGLDRIQUE2RyxDQUFBO0lBQzdHLDhFQUErRCxDQUFBO0lBQy9ELGtLQUFtSixDQUFBO0lBQ25KLHdGQUF5RSxDQUFBO0lBQ3pFLG1IQUFvRyxDQUFBO0lBQ3BHLG1NQUFvTCxDQUFBO0lBQ3BMLDhHQUErRixDQUFBO0lBQy9GLDhHQUErRixDQUFBO0lBQy9GLDhIQUErRyxDQUFBO0lBQy9HLG1HQUFvRixDQUFBO0lBQ3BGLHVHQUF3RixDQUFBO0lBQ3hGLG1HQUFvRixDQUFBO0lBQ3BGLHlGQUEwRSxDQUFBO0lBQzFFLDBHQUEyRixDQUFBO0lBQzNGLGdJQUFpSCxDQUFBO0lBQ2pILG1JQUFvSCxDQUFBO0lBQ3BILHlGQUEwRSxDQUFBO0lBQzFFLGtKQUFtSSxDQUFBO0lBQ25JLHVIQUF3RyxDQUFBO0lBQ3hHLGtKQUFtSSxDQUFBO0lBQ25JLG1HQUFvRixDQUFBO0lBQ3BGLDZGQUE4RSxDQUFBO0lBQzlFLDhIQUErRyxDQUFBO0lBQy9HLDJFQUE0RCxDQUFBO0FBQzlELENBQUMsRUF6RlcsV0FBVywyQkFBWCxXQUFXLFFBeUZ0QiIsInNvdXJjZXNDb250ZW50IjpbIi8vIFRPRE86IGltcGxlbWVudCB0aGlzIGJ5IGJ1bmRsaW5nIHRoZSBzb3VyY2Ugb2YgdHJ1dGggd2l0aCB0aGUgQ0RLIENMSVxuLy8gV2UgYXJlIGN1cnJlbnRseSBoYXJkY29kaW5nIHRoZXNlIHZhbHVlcyB0byBmYWNpbGl0YXRlIGEgcXVpY2tlciByZWxlYXNlLlxuLyoqXG4gKiBFbnVtIG9mIGFsbCB2YWxpZCBDREsgZmVhdHVyZSBmbGFnIG5hbWVzLlxuICpcbiAqIFRoZXNlIGZsYWdzIGFyZSB1c2VkIHRvIGNvbnRyb2wgYmVoYXZpb3IgY2hhbmdlcyBpbiB0aGUgQ0RLLlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZTogaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvbWFpbi9wYWNrYWdlcy9hd3MtY2RrLWxpYi9jeC1hcGkvRkVBVFVSRV9GTEFHUy5tZFxuICovXG5leHBvcnQgZW51bSBGZWF0dXJlRmxhZyB7XG4gIENPUkVfTkVXX1NUWUxFX1NUQUNLX1NZTlRIRVNJUyA9ICdAYXdzLWNkay9jb3JlOm5ld1N0eWxlU3RhY2tTeW50aGVzaXMnLFxuICBDT1JFX1NUQUNLX1JFTEFUSVZFX0VYUE9SVFMgPSAnQGF3cy1jZGsvY29yZTpzdGFja1JlbGF0aXZlRXhwb3J0cycsXG4gIFJEU19MT1dFUkNBU0VfREJfSURFTlRJRklFUiA9ICdAYXdzLWNkay9hd3MtcmRzOmxvd2VyY2FzZURiSWRlbnRpZmllcicsXG4gIEFQSUdBVEVXQVlfVVNBR0VfUExBTl9LRVlfT1JERVJfSU5TRU5TSVRJVkVfSUQgPSAnQGF3cy1jZGsvYXdzLWFwaWdhdGV3YXk6dXNhZ2VQbGFuS2V5T3JkZXJJbnNlbnNpdGl2ZUlkJyxcbiAgTEFNQkRBX1JFQ09HTklaRV9WRVJTSU9OX1BST1BTID0gJ0Bhd3MtY2RrL2F3cy1sYW1iZGE6cmVjb2duaXplVmVyc2lvblByb3BzJyxcbiAgQ0xPVURGUk9OVF9ERUZBVUxUX1NFQ1VSSVRZX1BPTElDWV9UTFNfVjFfMl8yMDIxID0gJ0Bhd3MtY2RrL2F3cy1jbG91ZGZyb250OmRlZmF1bHRTZWN1cml0eVBvbGljeVRMU3YxLjJfMjAyMScsXG4gIENPUkVfVEFSR0VUX1BBUlRJVElPTlMgPSAnQGF3cy1jZGsvY29yZTp0YXJnZXQtcGFydGl0aW9ucycsXG4gIEVDU19TRVJWSUNFX0VYVEVOU0lPTlNfRU5BQkxFX0RFRkFVTFRfTE9HX0RSSVZFUiA9ICdAYXdzLWNkay1jb250YWluZXJzL2Vjcy1zZXJ2aWNlLWV4dGVuc2lvbnM6ZW5hYmxlRGVmYXVsdExvZ0RyaXZlcicsXG4gIEVDMl9VTklRVUVfSU1EU1YyX1RFTVBMQVRFX05BTUUgPSAnQGF3cy1jZGsvYXdzLWVjMjp1bmlxdWVJbWRzdjJUZW1wbGF0ZU5hbWUnLFxuICBJQU1fTUlOSU1JWkVfUE9MSUNJRVMgPSAnQGF3cy1jZGsvYXdzLWlhbTptaW5pbWl6ZVBvbGljaWVzJyxcbiAgQ09SRV9DSEVDS19TRUNSRVRfVVNBR0UgPSAnQGF3cy1jZGsvY29yZTpjaGVja1NlY3JldFVzYWdlJyxcbiAgTEFNQkRBX1JFQ09HTklaRV9MQVlFUl9WRVJTSU9OID0gJ0Bhd3MtY2RrL2F3cy1sYW1iZGE6cmVjb2duaXplTGF5ZXJWZXJzaW9uJyxcbiAgQ09SRV9WQUxJREFURV9TTkFQU0hPVF9SRU1PVkFMX1BPTElDWSA9ICdAYXdzLWNkay9jb3JlOnZhbGlkYXRlU25hcHNob3RSZW1vdmFsUG9saWN5JyxcbiAgQ09ERVBJUEVMSU5FX0NST1NTX0FDQ09VTlRfS0VZX0FMSUFTX1NUQUNLX1NBRkVfUkVTT1VSQ0VfTkFNRSA9ICdAYXdzLWNkay9hd3MtY29kZXBpcGVsaW5lOmNyb3NzQWNjb3VudEtleUFsaWFzU3RhY2tTYWZlUmVzb3VyY2VOYW1lJyxcbiAgUzNfQ1JFQVRFX0RFRkFVTFRfTE9HR0lOR19QT0xJQ1kgPSAnQGF3cy1jZGsvYXdzLXMzOmNyZWF0ZURlZmF1bHRMb2dnaW5nUG9saWN5JyxcbiAgU05TX1NVQlNDUklQVElPTlNfUkVTVFJJQ1RfU1FTX0RFQ1JZUFRJT04gPSAnQGF3cy1jZGsvYXdzLXNucy1zdWJzY3JpcHRpb25zOnJlc3RyaWN0U3FzRGVzY3J5cHRpb24nLFxuICBFQ1NfQVJOX0ZPUk1BVF9JTkNMVURFU19DTFVTVEVSX05BTUUgPSAnQGF3cy1jZGsvYXdzLWVjczphcm5Gb3JtYXRJbmNsdWRlc0NsdXN0ZXJOYW1lJyxcbiAgQVBJR0FURVdBWV9ESVNBQkxFX0NMT1VEX1dBVENIX1JPTEUgPSAnQGF3cy1jZGsvYXdzLWFwaWdhdGV3YXk6ZGlzYWJsZUNsb3VkV2F0Y2hSb2xlJyxcbiAgQ09SRV9FTkFCTEVfUEFSVElUSU9OX0xJVEVSQUxTID0gJ0Bhd3MtY2RrL2NvcmU6ZW5hYmxlUGFydGl0aW9uTGl0ZXJhbHMnLFxuICBFQ1NfRElTQUJMRV9FWFBMSUNJVF9ERVBMT1lNRU5UX0NPTlRST0xMRVJfRk9SX0NJUkNVSVRfQlJFQUtFUiA9ICdAYXdzLWNkay9hd3MtZWNzOmRpc2FibGVFeHBsaWNpdERlcGxveW1lbnRDb250cm9sbGVyRm9yQ2lyY3VpdEJyZWFrZXInLFxuICBFVkVOVFNfRVZFTlRTX1RBUkdFVF9RVUVVRV9TQU1FX0FDQ09VTlQgPSAnQGF3cy1jZGsvYXdzLWV2ZW50czpldmVudHNUYXJnZXRRdWV1ZVNhbWVBY2NvdW50JyxcbiAgSUFNX0lNUE9SVEVEX1JPTEVfU1RBQ0tfU0FGRV9ERUZBVUxUX1BPTElDWV9OQU1FID0gJ0Bhd3MtY2RrL2F3cy1pYW06aW1wb3J0ZWRSb2xlU3RhY2tTYWZlRGVmYXVsdFBvbGljeU5hbWUnLFxuICBTM19TRVJWRVJfQUNDRVNTX0xPR1NfVVNFX0JVQ0tFVF9QT0xJQ1kgPSAnQGF3cy1jZGsvYXdzLXMzOnNlcnZlckFjY2Vzc0xvZ3NVc2VCdWNrZXRQb2xpY3knLFxuICBDVVNUT01SRVNPVVJDRVNfSU5TVEFMTF9MQVRFU1RfQVdTX1NES19ERUZBVUxUID0gJ0Bhd3MtY2RrL2N1c3RvbXJlc291cmNlczppbnN0YWxsTGF0ZXN0QXdzU2RrRGVmYXVsdCcsXG4gIFJPVVRFNTNfUEFUVEVSTlNfVVNFX0NFUlRJRklDQVRFID0gJ0Bhd3MtY2RrL2F3cy1yb3V0ZTUzLXBhdHRlcm5zOnVzZUNlcnRpZmljYXRlJyxcbiAgQ09ERURFUExPWV9SRU1PVkVfQUxBUk1TX0ZST01fREVQTE9ZTUVOVF9HUk9VUCA9ICdAYXdzLWNkay9hd3MtY29kZWRlcGxveTpyZW1vdmVBbGFybXNGcm9tRGVwbG95bWVudEdyb3VwJyxcbiAgUkRTX0RBVEFCQVNFX1BST1hZX1VOSVFVRV9SRVNPVVJDRV9OQU1FID0gJ0Bhd3MtY2RrL2F3cy1yZHM6ZGF0YWJhc2VQcm94eVVuaXF1ZVJlc291cmNlTmFtZScsXG4gIEFQSUdBVEVXQVlfQVVUSE9SSVpFUl9DSEFOR0VfREVQTE9ZTUVOVF9MT0dJQ0FMX0lEID0gJ0Bhd3MtY2RrL2F3cy1hcGlnYXRld2F5OmF1dGhvcml6ZXJDaGFuZ2VEZXBsb3ltZW50TG9naWNhbElkJyxcbiAgRUMyX0xBVU5DSF9URU1QTEFURV9ERUZBVUxUX1VTRVJfREFUQSA9ICdAYXdzLWNkay9hd3MtZWMyOmxhdW5jaFRlbXBsYXRlRGVmYXVsdFVzZXJEYXRhJyxcbiAgU0VDUkVUU01BTkFHRVJfVVNFX0FUVEFDSEVEX1NFQ1JFVF9SRVNPVVJDRV9QT0xJQ1lfRk9SX1NFQ1JFVF9UQVJHRVRfQVRUQUNITUVOVFMgPSAnQGF3cy1jZGsvYXdzLXNlY3JldHNtYW5hZ2VyOnVzZUF0dGFjaGVkU2VjcmV0UmVzb3VyY2VQb2xpY3lGb3JTZWNyZXRUYXJnZXRBdHRhY2htZW50cycsXG4gIFJFRFNISUZUX0NPTFVNTl9JRCA9ICdAYXdzLWNkay9hd3MtcmVkc2hpZnQ6Y29sdW1uSWQnLFxuICBTVEVQRlVOQ1RJT05TX1RBU0tTX0VOQUJMRV9FTVJfU0VSVklDRV9QT0xJQ1lfVjIgPSAnQGF3cy1jZGsvYXdzLXN0ZXBmdW5jdGlvbnMtdGFza3M6ZW5hYmxlRW1yU2VydmljZVBvbGljeVYyJyxcbiAgQVBJR0FURVdBWV9SRVFVRVNUX1ZBTElEQVRPUl9VTklRVUVfSUQgPSAnQGF3cy1jZGsvYXdzLWFwaWdhdGV3YXk6cmVxdWVzdFZhbGlkYXRvclVuaXF1ZUlkJyxcbiAgRUMyX1JFU1RSSUNUX0RFRkFVTFRfU0VDVVJJVFlfR1JPVVAgPSAnQGF3cy1jZGsvYXdzLWVjMjpyZXN0cmljdERlZmF1bHRTZWN1cml0eUdyb3VwJyxcbiAgS01TX0FMSUFTX05BTUVfUkVGID0gJ0Bhd3MtY2RrL2F3cy1rbXM6YWxpYXNOYW1lUmVmJyxcbiAgQ09SRV9JTkNMVURFX1BSRUZJWF9JTl9VTklRVUVfTkFNRV9HRU5FUkFUSU9OID0gJ0Bhd3MtY2RrL2NvcmU6aW5jbHVkZVByZWZpeEluVW5pcXVlTmFtZUdlbmVyYXRpb24nLFxuICBBVVRPU0NBTElOR19HRU5FUkFURV9MQVVOQ0hfVEVNUExBVEVfSU5TVEVBRF9PRl9MQVVOQ0hfQ09ORklHID0gJ0Bhd3MtY2RrL2F3cy1hdXRvc2NhbGluZzpnZW5lcmF0ZUxhdW5jaFRlbXBsYXRlSW5zdGVhZE9mTGF1bmNoQ29uZmlnJyxcbiAgT1BFTlNFQVJDSFNFUlZJQ0VfRU5BQkxFX09QRU5TRUFSQ0hfTVVMVElfQVpfV0lUSF9TVEFOREJZID0gJ0Bhd3MtY2RrL2F3cy1vcGVuc2VhcmNoc2VydmljZTplbmFibGVPcGVuc2VhcmNoTXVsdGlBeldpdGhTdGFuZGJ5JyxcbiAgRUZTX0RFTllfQU5PTllNT1VTX0FDQ0VTUyA9ICdAYXdzLWNkay9hd3MtZWZzOmRlbnlBbm9ueW1vdXNBY2Nlc3MnLFxuICBFRlNfTU9VTlRfVEFSR0VUX09SREVSX0lOU0VOU0lUSVZFX0xPR0lDQUxfSUQgPSAnQGF3cy1jZGsvYXdzLWVmczptb3VudFRhcmdldE9yZGVySW5zZW5zaXRpdmVMb2dpY2FsSWQnLFxuICBMQU1CREFfTk9ERUpTX1VTRV9MQVRFU1RfUlVOVElNRV9WRVJTSU9OID0gJ0Bhd3MtY2RrL2F3cy1sYW1iZGEtbm9kZWpzOnVzZUxhdGVzdFJ1bnRpbWVWZXJzaW9uJyxcbiAgQVBQU1lOQ19VU0VfQVJOX0ZPUl9TT1VSQ0VfQVBJX0FTU09DSUFUSU9OX0lERU5USUZJRVIgPSAnQGF3cy1jZGsvYXdzLWFwcHN5bmM6dXNlQXJuRm9yU291cmNlQXBpQXNzb2NpYXRpb25JZGVudGlmaWVyJyxcbiAgUkRTX0FVUk9SQV9DTFVTVEVSX0NIQU5HRV9TQ09QRV9PRl9JTlNUQU5DRV9QQVJBTUVURVJfR1JPVVBfV0lUSF9FQUNIX1BBUkFNRVRFUlMgPSAnQGF3cy1jZGsvYXdzLXJkczphdXJvcmFDbHVzdGVyQ2hhbmdlU2NvcGVPZkluc3RhbmNlUGFyYW1ldGVyR3JvdXBXaXRoRWFjaFBhcmFtZXRlcnMnLFxuICBSRFNfUFJFVkVOVF9SRU5ERVJJTkdfREVQUkVDQVRFRF9DUkVERU5USUFMUyA9ICdAYXdzLWNkay9hd3MtcmRzOnByZXZlbnRSZW5kZXJpbmdEZXByZWNhdGVkQ3JlZGVudGlhbHMnLFxuICBDT0RFUElQRUxJTkVfQUNUSU9OU19VU0VfTkVXX0RFRkFVTFRfQlJBTkNIX0ZPUl9DT0RFX0NPTU1JVF9TT1VSQ0UgPSAnQGF3cy1jZGsvYXdzLWNvZGVwaXBlbGluZS1hY3Rpb25zOnVzZU5ld0RlZmF1bHRCcmFuY2hGb3JDb2RlQ29tbWl0U291cmNlJyxcbiAgQ0xPVURXQVRDSF9BQ1RJT05TX0NIQU5HRV9MQU1CREFfUEVSTUlTU0lPTl9MT0dJQ0FMX0lEX0ZPUl9MQU1CREFfQUNUSU9OID0gJ0Bhd3MtY2RrL2F3cy1jbG91ZHdhdGNoLWFjdGlvbnM6Y2hhbmdlTGFtYmRhUGVybWlzc2lvbkxvZ2ljYWxJZEZvckxhbWJkYUFjdGlvbicsXG4gIENPREVQSVBFTElORV9DUk9TU19BQ0NPVU5UX0tFWVNfREVGQVVMVF9WQUxVRV9UT19GQUxTRSA9ICdAYXdzLWNkay9hd3MtY29kZXBpcGVsaW5lOmNyb3NzQWNjb3VudEtleXNEZWZhdWx0VmFsdWVUb0ZhbHNlJyxcbiAgQ09ERVBJUEVMSU5FX0RFRkFVTFRfUElQRUxJTkVfVFlQRV9UT19WMiA9ICdAYXdzLWNkay9hd3MtY29kZXBpcGVsaW5lOmRlZmF1bHRQaXBlbGluZVR5cGVUb1YyJyxcbiAgS01TX1JFRFVDRV9DUk9TU19BQ0NPVU5UX1JFR0lPTl9QT0xJQ1lfU0NPUEUgPSAnQGF3cy1jZGsvYXdzLWttczpyZWR1Y2VDcm9zc0FjY291bnRSZWdpb25Qb2xpY3lTY29wZScsXG4gIEVLU19OT0RFR1JPVVBfTkFNRV9BVFRSSUJVVEUgPSAnQGF3cy1jZGsvYXdzLWVrczpub2RlZ3JvdXBOYW1lQXR0cmlidXRlJyxcbiAgRUMyX0VCU19ERUZBVUxUX0dQM19WT0xVTUUgPSAnQGF3cy1jZGsvYXdzLWVjMjplYnNEZWZhdWx0R3AzVm9sdW1lJyxcbiAgUElQRUxJTkVTX1JFRFVDRV9BU1NFVF9ST0xFX1RSVVNUX1NDT1BFID0gJ0Bhd3MtY2RrL3BpcGVsaW5lczpyZWR1Y2VBc3NldFJvbGVUcnVzdFNjb3BlJyxcbiAgRUNTX1JFTU9WRV9ERUZBVUxUX0RFUExPWU1FTlRfQUxBUk0gPSAnQGF3cy1jZGsvYXdzLWVjczpyZW1vdmVEZWZhdWx0RGVwbG95bWVudEFsYXJtJyxcbiAgQ1VTVE9NX1JFU09VUkNFU19MT0dfQVBJX1JFU1BPTlNFX0RBVEFfUFJPUEVSVFlfVFJVRV9ERUZBVUxUID0gJ0Bhd3MtY2RrL2N1c3RvbS1yZXNvdXJjZXM6bG9nQXBpUmVzcG9uc2VEYXRhUHJvcGVydHlUcnVlRGVmYXVsdCcsXG4gIFMzX0tFRVBfTk9USUZJQ0FUSU9OX0lOX0lNUE9SVEVEX0JVQ0tFVCA9ICdAYXdzLWNkay9hd3MtczM6a2VlcE5vdGlmaWNhdGlvbkluSW1wb3J0ZWRCdWNrZXQnLFxuICBTVEVQRlVOQ1RJT05TX1RBU0tTX1VTRV9ORVdfUzNfVVJJX1BBUkFNRVRFUlNfRk9SX0JFRFJPQ0tfSU5WT0tFX01PREVMX1RBU0sgPSAnQGF3cy1jZGsvYXdzLXN0ZXBmdW5jdGlvbnMtdGFza3M6dXNlTmV3UzNVcmlQYXJhbWV0ZXJzRm9yQmVkcm9ja0ludm9rZU1vZGVsVGFzaycsXG4gIEVDU19SRURVQ0VfRUMyX0ZBUkdBVEVfQ0xPVURfV0FUQ0hfUEVSTUlTU0lPTlMgPSAnQGF3cy1jZGsvYXdzLWVjczpyZWR1Y2VFYzJGYXJnYXRlQ2xvdWRXYXRjaFBlcm1pc3Npb25zJyxcbiAgRUMyX0VDMl9TVU1fVElNRU9VVF9FTkFCTEVEID0gJ0Bhd3MtY2RrL2F3cy1lYzI6ZWMyU3VtVGltZW91dEVuYWJsZWQnLFxuICBBUFBTWU5DX0FQUF9TWU5DX0dSQVBIUUxfQVBJX1NDT1BFX0xBTUJEQV9QRVJNSVNTSU9OID0gJ0Bhd3MtY2RrL2F3cy1hcHBzeW5jOmFwcFN5bmNHcmFwaFFMQVBJU2NvcGVMYW1iZGFQZXJtaXNzaW9uJyxcbiAgTEFNQkRBX05PREVKU19TREtfVjNfRVhDTFVERV9TTUlUSFlfUEFDS0FHRVMgPSAnQGF3cy1jZGsvYXdzLWxhbWJkYS1ub2RlanM6c2RrVjNFeGNsdWRlU21pdGh5UGFja2FnZXMnLFxuICBSRFNfU0VUX0NPUlJFQ1RfVkFMVUVfRk9SX0RBVEFCQVNFX0lOU1RBTkNFX1JFQURfUkVQTElDQV9JTlNUQU5DRV9SRVNPVVJDRV9JRCA9ICdAYXdzLWNkay9hd3MtcmRzOnNldENvcnJlY3RWYWx1ZUZvckRhdGFiYXNlSW5zdGFuY2VSZWFkUmVwbGljYUluc3RhbmNlUmVzb3VyY2VJZCcsXG4gIENPUkVfQ0ZOX0lOQ0xVREVfUkVKRUNUX0NPTVBMRVhfUkVTT1VSQ0VfVVBEQVRFX0NSRUFURV9QT0xJQ1lfSU5UUklOU0lDUyA9ICdAYXdzLWNkay9jb3JlOmNmbkluY2x1ZGVSZWplY3RDb21wbGV4UmVzb3VyY2VVcGRhdGVDcmVhdGVQb2xpY3lJbnRyaW5zaWNzJyxcbiAgU1RFUEZVTkNUSU9OU19UQVNLU19GSVhfUlVOX0VDU19UQVNLX1BPTElDWSA9ICdAYXdzLWNkay9hd3Mtc3RlcGZ1bmN0aW9ucy10YXNrczpmaXhSdW5FY3NUYXNrUG9saWN5JyxcbiAgRFlOQU1PREJfUkVTT1VSQ0VfUE9MSUNZX1BFUl9SRVBMSUNBID0gJ0Bhd3MtY2RrL2F3cy1keW5hbW9kYjpyZXNvdXJjZVBvbGljeVBlclJlcGxpY2EnLFxuICBFQzJfQkFTVElPTl9IT1NUX1VTRV9BTUFaT05fTElOVVhfMjAyM19CWV9ERUZBVUxUID0gJ0Bhd3MtY2RrL2F3cy1lYzI6YmFzdGlvbkhvc3RVc2VBbWF6b25MaW51eDIwMjNCeURlZmF1bHQnLFxuICBDT1JFX0FTUEVDVF9TVEFCSUxJWkFUSU9OID0gJ0Bhd3MtY2RrL2NvcmU6YXNwZWN0U3RhYmlsaXphdGlvbicsXG4gIFJPVVRFNTNfVEFSR0VUU19VU0VSX1BPT0xfRE9NQUlOX05BTUVfTUVUSE9EX1dJVEhPVVRfQ1VTVE9NX1JFU09VUkNFID0gJ0Bhd3MtY2RrL2F3cy1yb3V0ZTUzLXRhcmdldHM6dXNlclBvb2xEb21haW5OYW1lTWV0aG9kV2l0aG91dEN1c3RvbVJlc291cmNlJyxcbiAgRUNTX0RJU0FCTEVfRUNTX0lNRFNfQkxPQ0tJTkcgPSAnQGF3cy1jZGsvYXdzLWVjczpkaXNhYmxlRWNzSW1kc0Jsb2NraW5nJyxcbiAgRUNTX0VOQUJMRV9JTURTX0JMT0NLSU5HX0RFUFJFQ0FURURfRkVBVFVSRSA9ICdAYXdzLWNkay9hd3MtZWNzOmVuYWJsZUltZHNCbG9ja2luZ0RlcHJlY2F0ZWRGZWF0dXJlJyxcbiAgRUxBU1RJQ0xPQURCQUxBTkNJTkdWMl9BTEJfRFVBTFNUQUNLX1dJVEhPVVRfUFVCTElDX0lQVjRfU0VDVVJJVFlfR1JPVVBfUlVMRVNfREVGQVVMVCA9ICdAYXdzLWNkay9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmdWMjphbGJEdWFsc3RhY2tXaXRob3V0UHVibGljSXB2NFNlY3VyaXR5R3JvdXBSdWxlc0RlZmF1bHQnLFxuICBJQU1fT0lEQ19SRUpFQ1RfVU5BVVRIT1JJWkVEX0NPTk5FQ1RJT05TID0gJ0Bhd3MtY2RrL2F3cy1pYW06b2lkY1JlamVjdFVuYXV0aG9yaXplZENvbm5lY3Rpb25zJyxcbiAgQ09SRV9FTkFCTEVfQURESVRJT05BTF9NRVRBREFUQV9DT0xMRUNUSU9OID0gJ0Bhd3MtY2RrL2NvcmU6ZW5hYmxlQWRkaXRpb25hbE1ldGFkYXRhQ29sbGVjdGlvbicsXG4gIExBTUJEQV9DUkVBVEVfTkVXX1BPTElDSUVTX1dJVEhfQUREX1RPX1JPTEVfUE9MSUNZID0gJ0Bhd3MtY2RrL2F3cy1sYW1iZGE6Y3JlYXRlTmV3UG9saWNpZXNXaXRoQWRkVG9Sb2xlUG9saWN5JyxcbiAgUzNfU0VUX1VOSVFVRV9SRVBMSUNBVElPTl9ST0xFX05BTUUgPSAnQGF3cy1jZGsvYXdzLXMzOnNldFVuaXF1ZVJlcGxpY2F0aW9uUm9sZU5hbWUnLFxuICBQSVBFTElORVNfUkVEVUNFX1NUQUdFX1JPTEVfVFJVU1RfU0NPUEUgPSAnQGF3cy1jZGsvcGlwZWxpbmVzOnJlZHVjZVN0YWdlUm9sZVRydXN0U2NvcGUnLFxuICBFVkVOVFNfUkVRVUlSRV9FVkVOVF9CVVNfUE9MSUNZX1NJRCA9ICdAYXdzLWNkay9hd3MtZXZlbnRzOnJlcXVpcmVFdmVudEJ1c1BvbGljeVNpZCcsXG4gIERZTkFNT0RCX1JFVEFJTl9UQUJMRV9SRVBMSUNBID0gJ0Bhd3MtY2RrL2F3cy1keW5hbW9kYjpyZXRhaW5UYWJsZVJlcGxpY2EnLFxuICBDT0dOSVRPX0xPR19VU0VSX1BPT0xfQ0xJRU5UX1NFQ1JFVF9WQUxVRSA9ICdAYXdzLWNkay9jb2duaXRvOmxvZ1VzZXJQb29sQ2xpZW50U2VjcmV0VmFsdWUnLFxuICBTVEVQRlVOQ1RJT05TX1VTRV9ESVNUUklCVVRFRF9NQVBfUkVTVUxUX1dSSVRFUl9WMiA9ICdAYXdzLWNkay9hd3Mtc3RlcGZ1bmN0aW9uczp1c2VEaXN0cmlidXRlZE1hcFJlc3VsdFdyaXRlclYyJyxcbiAgUElQRUxJTkVTX1JFRFVDRV9DUk9TU19BQ0NPVU5UX0FDVElPTl9ST0xFX1RSVVNUX1NDT1BFID0gJ0Bhd3MtY2RrL3BpcGVsaW5lczpyZWR1Y2VDcm9zc0FjY291bnRBY3Rpb25Sb2xlVHJ1c3RTY29wZScsXG4gIENPUkVfQVNQRUNUX1BSSU9SSVRJRVNfTVVUQVRJTkcgPSAnQGF3cy1jZGsvY29yZTphc3BlY3RQcmlvcml0aWVzTXV0YXRpbmcnLFxuICBTM19OT1RJRklDQVRJT05TX0FERF9TM19UUlVTVF9LRVlfUE9MSUNZX0ZPUl9TTlNfU1VCU0NSSVBUSU9OUyA9ICdAYXdzLWNkay9zMy1ub3RpZmljYXRpb25zOmFkZFMzVHJ1c3RLZXlQb2xpY3lGb3JTbnNTdWJzY3JpcHRpb25zJyxcbiAgRUMyX0FMUEhBX1VTRV9SRVNPVVJDRV9JRF9GT1JfVlBDX1YyX01JR1JBVElPTiA9ICdAYXdzLWNkay9hd3MtZWMyLWFscGhhOnVzZVJlc291cmNlSWRGb3JWcGNWMk1pZ3JhdGlvbicsXG4gIEVDMl9SRVFVSVJFX1BSSVZBVEVfU1VCTkVUU19GT1JfRUdSRVNTX09OTFlfSU5URVJORVRfR0FURVdBWSA9ICdAYXdzLWNkay9hd3MtZWMyOnJlcXVpcmVQcml2YXRlU3VibmV0c0ZvckVncmVzc09ubHlJbnRlcm5ldEdhdGV3YXknLFxuICBTM19QVUJMSUNfQUNDRVNTX0JMT0NLRURfQllfREVGQVVMVCA9ICdAYXdzLWNkay9hd3MtczM6cHVibGljQWNjZXNzQmxvY2tlZEJ5RGVmYXVsdCcsXG4gIExBTUJEQV9VU0VfQ0RLX01BTkFHRURfTE9HX0dST1VQID0gJ0Bhd3MtY2RrL2F3cy1sYW1iZGE6dXNlQ2RrTWFuYWdlZExvZ0dyb3VwJyxcbiAgS01TX0FQUExZX0lNUE9SVEVEX0FMSUFTX1BFUk1JU1NJT05TX1RPX1BSSU5DSVBBTCA9ICdAYXdzLWNkay9hd3Mta21zOmFwcGx5SW1wb3J0ZWRBbGlhc1Blcm1pc3Npb25zVG9QcmluY2lwYWwnLFxuICBDT1JFX0VYUExJQ0lUX1NUQUNLX1RBR1MgPSAnQGF3cy1jZGsvY29yZTpleHBsaWNpdFN0YWNrVGFncycsXG59XG4iXX0=
@@ -1,9 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FileTelemetrySink = void 0;
4
- const fs = require("fs");
5
- const path = require("path");
6
4
  const toolkit_lib_1 = require("@aws-cdk/toolkit-lib");
5
+ const fs = require("fs-extra");
7
6
  const api_private_1 = require("../../api-private");
8
7
  /**
9
8
  * A telemetry client that collects events writes them to a file
@@ -18,21 +17,18 @@ class FileTelemetrySink {
18
17
  if (fs.existsSync(this.logFilePath)) {
19
18
  throw new toolkit_lib_1.ToolkitError(`Telemetry file already exists at ${this.logFilePath}`);
20
19
  }
21
- // Create the file if necessary
22
- const directory = path.dirname(this.logFilePath);
23
- if (!fs.existsSync(directory)) {
24
- fs.mkdirSync(directory, { recursive: true });
25
- }
20
+ // Create the file
21
+ fs.ensureFileSync(this.logFilePath);
22
+ fs.writeJsonSync(this.logFilePath, []);
26
23
  }
27
24
  /**
28
25
  * Emit an event.
29
26
  */
30
27
  async emit(event) {
31
28
  try {
32
- // Format the events as a JSON string with pretty printing
33
- const output = JSON.stringify(event, null, 2) + '\n';
34
- // Write to file
35
- fs.appendFileSync(this.logFilePath, output);
29
+ const json = fs.readJsonSync(this.logFilePath);
30
+ json.push(event);
31
+ fs.writeJSONSync(this.logFilePath, json, { spaces: 2 });
36
32
  }
37
33
  catch (e) {
38
34
  // Never throw errors, just log them via ioHost
@@ -44,4 +40,4 @@ class FileTelemetrySink {
44
40
  }
45
41
  }
46
42
  exports.FileTelemetrySink = FileTelemetrySink;
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zaW5rLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZmlsZS1zaW5rLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHlCQUF5QjtBQUN6Qiw2QkFBNkI7QUFDN0Isc0RBQWtFO0FBR2xFLG1EQUE2QztBQWlCN0M7O0dBRUc7QUFDSCxNQUFhLGlCQUFpQjtJQUk1Qjs7T0FFRztJQUNILFlBQVksS0FBNkI7UUFDdkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxzQkFBUSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3RCxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUM7UUFFckMsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSwwQkFBWSxDQUFDLG9DQUFvQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUNqRixDQUFDO1FBRUQsK0JBQStCO1FBQy9CLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7WUFDOUIsRUFBRSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUMvQyxDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFzQjtRQUN0QyxJQUFJLENBQUM7WUFDSCwwREFBMEQ7WUFDMUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQztZQUVyRCxnQkFBZ0I7WUFDaEIsRUFBRSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzlDLENBQUM7UUFBQyxPQUFPLENBQU0sRUFBRSxDQUFDO1lBQ2hCLCtDQUErQztZQUMvQyxNQUFNLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDcEYsQ0FBQztJQUNILENBQUM7SUFFTSxLQUFLLENBQUMsS0FBSztRQUNoQixPQUFPO0lBQ1QsQ0FBQztDQUNGO0FBekNELDhDQXlDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzJztcbmltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgeyBUb29sa2l0RXJyb3IsIHR5cGUgSUlvSG9zdCB9IGZyb20gJ0Bhd3MtY2RrL3Rvb2xraXQtbGliJztcbmltcG9ydCB0eXBlIHsgVGVsZW1ldHJ5U2NoZW1hIH0gZnJvbSAnLi9zY2hlbWEnO1xuaW1wb3J0IHR5cGUgeyBJVGVsZW1ldHJ5U2luayB9IGZyb20gJy4vc2luay1pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSW9IZWxwZXIgfSBmcm9tICcuLi8uLi9hcGktcHJpdmF0ZSc7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgdGhlIEZpbGVUZWxlbWV0cnlDbGllbnRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGaWxlVGVsZW1ldHJ5U2lua1Byb3BzIHtcbiAgLyoqXG4gICAqIFdoZXJlIG1lc3NhZ2VzIGFyZSBnb2luZyB0byBiZSBzZW50XG4gICAqL1xuICByZWFkb25seSBpb0hvc3Q6IElJb0hvc3Q7XG5cbiAgLyoqXG4gICAqIFRoZSBsb2NhbCBmaWxlIHRvIGxvZyB0ZWxlbWV0cnkgZGF0YSB0by5cbiAgICovXG4gIHJlYWRvbmx5IGxvZ0ZpbGVQYXRoOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQSB0ZWxlbWV0cnkgY2xpZW50IHRoYXQgY29sbGVjdHMgZXZlbnRzIHdyaXRlcyB0aGVtIHRvIGEgZmlsZVxuICovXG5leHBvcnQgY2xhc3MgRmlsZVRlbGVtZXRyeVNpbmsgaW1wbGVtZW50cyBJVGVsZW1ldHJ5U2luayB7XG4gIHByaXZhdGUgaW9IZWxwZXI6IElvSGVscGVyO1xuICBwcml2YXRlIGxvZ0ZpbGVQYXRoOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBGaWxlVGVsZW1ldHJ5Q2xpZW50XG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcm9wczogRmlsZVRlbGVtZXRyeVNpbmtQcm9wcykge1xuICAgIHRoaXMuaW9IZWxwZXIgPSBJb0hlbHBlci5mcm9tQWN0aW9uQXdhcmVJb0hvc3QocHJvcHMuaW9Ib3N0KTtcbiAgICB0aGlzLmxvZ0ZpbGVQYXRoID0gcHJvcHMubG9nRmlsZVBhdGg7XG5cbiAgICBpZiAoZnMuZXhpc3RzU3luYyh0aGlzLmxvZ0ZpbGVQYXRoKSkge1xuICAgICAgdGhyb3cgbmV3IFRvb2xraXRFcnJvcihgVGVsZW1ldHJ5IGZpbGUgYWxyZWFkeSBleGlzdHMgYXQgJHt0aGlzLmxvZ0ZpbGVQYXRofWApO1xuICAgIH1cblxuICAgIC8vIENyZWF0ZSB0aGUgZmlsZSBpZiBuZWNlc3NhcnlcbiAgICBjb25zdCBkaXJlY3RvcnkgPSBwYXRoLmRpcm5hbWUodGhpcy5sb2dGaWxlUGF0aCk7XG4gICAgaWYgKCFmcy5leGlzdHNTeW5jKGRpcmVjdG9yeSkpIHtcbiAgICAgIGZzLm1rZGlyU3luYyhkaXJlY3RvcnksIHsgcmVjdXJzaXZlOiB0cnVlIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBFbWl0IGFuIGV2ZW50LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGVtaXQoZXZlbnQ6IFRlbGVtZXRyeVNjaGVtYSk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICAvLyBGb3JtYXQgdGhlIGV2ZW50cyBhcyBhIEpTT04gc3RyaW5nIHdpdGggcHJldHR5IHByaW50aW5nXG4gICAgICBjb25zdCBvdXRwdXQgPSBKU09OLnN0cmluZ2lmeShldmVudCwgbnVsbCwgMikgKyAnXFxuJztcblxuICAgICAgLy8gV3JpdGUgdG8gZmlsZVxuICAgICAgZnMuYXBwZW5kRmlsZVN5bmModGhpcy5sb2dGaWxlUGF0aCwgb3V0cHV0KTtcbiAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgIC8vIE5ldmVyIHRocm93IGVycm9ycywganVzdCBsb2cgdGhlbSB2aWEgaW9Ib3N0XG4gICAgICBhd2FpdCB0aGlzLmlvSGVscGVyLmRlZmF1bHRzLnRyYWNlKGBGYWlsZWQgdG8gYWRkIHRlbGVtZXRyeSBldmVudDogJHtlLm1lc3NhZ2V9YCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFzeW5jIGZsdXNoKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybjtcbiAgfVxufVxuIl19
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zaW5rLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZmlsZS1zaW5rLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHNEQUFrRTtBQUNsRSwrQkFBK0I7QUFHL0IsbURBQTZDO0FBaUI3Qzs7R0FFRztBQUNILE1BQWEsaUJBQWlCO0lBSTVCOztPQUVHO0lBQ0gsWUFBWSxLQUE2QjtRQUN2QyxJQUFJLENBQUMsUUFBUSxHQUFHLHNCQUFRLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzdELElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQztRQUVyQyxJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLDBCQUFZLENBQUMsb0NBQW9DLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQ2pGLENBQUM7UUFFRCxrQkFBa0I7UUFDbEIsRUFBRSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDcEMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBc0I7UUFDdEMsSUFBSSxDQUFDO1lBQ0gsTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDL0MsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNqQixFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDMUQsQ0FBQztRQUFDLE9BQU8sQ0FBTSxFQUFFLENBQUM7WUFDaEIsK0NBQStDO1lBQy9DLE1BQU0sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUNwRixDQUFDO0lBQ0gsQ0FBQztJQUVNLEtBQUssQ0FBQyxLQUFLO1FBQ2hCLE9BQU87SUFDVCxDQUFDO0NBQ0Y7QUFyQ0QsOENBcUNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVG9vbGtpdEVycm9yLCB0eXBlIElJb0hvc3QgfSBmcm9tICdAYXdzLWNkay90b29sa2l0LWxpYic7XG5pbXBvcnQgKiBhcyBmcyBmcm9tICdmcy1leHRyYSc7XG5pbXBvcnQgdHlwZSB7IFRlbGVtZXRyeVNjaGVtYSB9IGZyb20gJy4vc2NoZW1hJztcbmltcG9ydCB0eXBlIHsgSVRlbGVtZXRyeVNpbmsgfSBmcm9tICcuL3NpbmstaW50ZXJmYWNlJztcbmltcG9ydCB7IElvSGVscGVyIH0gZnJvbSAnLi4vLi4vYXBpLXByaXZhdGUnO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIHRoZSBGaWxlVGVsZW1ldHJ5Q2xpZW50XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmlsZVRlbGVtZXRyeVNpbmtQcm9wcyB7XG4gIC8qKlxuICAgKiBXaGVyZSBtZXNzYWdlcyBhcmUgZ29pbmcgdG8gYmUgc2VudFxuICAgKi9cbiAgcmVhZG9ubHkgaW9Ib3N0OiBJSW9Ib3N0O1xuXG4gIC8qKlxuICAgKiBUaGUgbG9jYWwgZmlsZSB0byBsb2cgdGVsZW1ldHJ5IGRhdGEgdG8uXG4gICAqL1xuICByZWFkb25seSBsb2dGaWxlUGF0aDogc3RyaW5nO1xufVxuXG4vKipcbiAqIEEgdGVsZW1ldHJ5IGNsaWVudCB0aGF0IGNvbGxlY3RzIGV2ZW50cyB3cml0ZXMgdGhlbSB0byBhIGZpbGVcbiAqL1xuZXhwb3J0IGNsYXNzIEZpbGVUZWxlbWV0cnlTaW5rIGltcGxlbWVudHMgSVRlbGVtZXRyeVNpbmsge1xuICBwcml2YXRlIGlvSGVscGVyOiBJb0hlbHBlcjtcbiAgcHJpdmF0ZSBsb2dGaWxlUGF0aDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgRmlsZVRlbGVtZXRyeUNsaWVudFxuICAgKi9cbiAgY29uc3RydWN0b3IocHJvcHM6IEZpbGVUZWxlbWV0cnlTaW5rUHJvcHMpIHtcbiAgICB0aGlzLmlvSGVscGVyID0gSW9IZWxwZXIuZnJvbUFjdGlvbkF3YXJlSW9Ib3N0KHByb3BzLmlvSG9zdCk7XG4gICAgdGhpcy5sb2dGaWxlUGF0aCA9IHByb3BzLmxvZ0ZpbGVQYXRoO1xuXG4gICAgaWYgKGZzLmV4aXN0c1N5bmModGhpcy5sb2dGaWxlUGF0aCkpIHtcbiAgICAgIHRocm93IG5ldyBUb29sa2l0RXJyb3IoYFRlbGVtZXRyeSBmaWxlIGFscmVhZHkgZXhpc3RzIGF0ICR7dGhpcy5sb2dGaWxlUGF0aH1gKTtcbiAgICB9XG5cbiAgICAvLyBDcmVhdGUgdGhlIGZpbGVcbiAgICBmcy5lbnN1cmVGaWxlU3luYyh0aGlzLmxvZ0ZpbGVQYXRoKTtcbiAgICBmcy53cml0ZUpzb25TeW5jKHRoaXMubG9nRmlsZVBhdGgsIFtdKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbWl0IGFuIGV2ZW50LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGVtaXQoZXZlbnQ6IFRlbGVtZXRyeVNjaGVtYSk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBqc29uID0gZnMucmVhZEpzb25TeW5jKHRoaXMubG9nRmlsZVBhdGgpO1xuICAgICAganNvbi5wdXNoKGV2ZW50KTtcbiAgICAgIGZzLndyaXRlSlNPTlN5bmModGhpcy5sb2dGaWxlUGF0aCwganNvbiwgeyBzcGFjZXM6IDIgfSk7XG4gICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICAvLyBOZXZlciB0aHJvdyBlcnJvcnMsIGp1c3QgbG9nIHRoZW0gdmlhIGlvSG9zdFxuICAgICAgYXdhaXQgdGhpcy5pb0hlbHBlci5kZWZhdWx0cy50cmFjZShgRmFpbGVkIHRvIGFkZCB0ZWxlbWV0cnkgZXZlbnQ6ICR7ZS5tZXNzYWdlfWApO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBmbHVzaCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm47XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ import type { IoHelper } from '../../api-private';
2
+ /**
3
+ * Get or create installation id
4
+ */
5
+ export declare function getOrCreateInstallationId(ioHelper: IoHelper): Promise<string>;
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getOrCreateInstallationId = getOrCreateInstallationId;
4
+ const crypto_1 = require("crypto");
5
+ const fs = require("fs");
6
+ const path = require("path");
7
+ const util_1 = require("../../util");
8
+ const INSTALLATION_ID_PATH = path.join((0, util_1.cdkCacheDir)(), 'installation-id.json');
9
+ /**
10
+ * Get or create installation id
11
+ */
12
+ async function getOrCreateInstallationId(ioHelper) {
13
+ try {
14
+ // Create the cache directory if it doesn't exist
15
+ if (!fs.existsSync(path.dirname(INSTALLATION_ID_PATH))) {
16
+ fs.mkdirSync(path.dirname(INSTALLATION_ID_PATH), { recursive: true });
17
+ }
18
+ // Check if the installation ID file exists
19
+ if (fs.existsSync(INSTALLATION_ID_PATH)) {
20
+ const cachedId = fs.readFileSync(INSTALLATION_ID_PATH, 'utf-8').trim();
21
+ // Validate that the cached ID is a valid UUID
22
+ const UUID_REGEX = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
23
+ if (UUID_REGEX.test(cachedId)) {
24
+ return cachedId;
25
+ }
26
+ // If invalid, fall through to create a new one
27
+ }
28
+ // Create a new installation ID
29
+ const newId = (0, crypto_1.randomUUID)();
30
+ try {
31
+ fs.writeFileSync(INSTALLATION_ID_PATH, newId);
32
+ }
33
+ catch (e) {
34
+ // If we can't write the file, still return the generated ID
35
+ // but log a trace message about the failure
36
+ await ioHelper.defaults.trace(`Failed to write installation ID to ${INSTALLATION_ID_PATH}: ${e}`);
37
+ }
38
+ return newId;
39
+ }
40
+ catch (e) {
41
+ // If anything goes wrong, generate a temporary ID for this session
42
+ // and log a trace message about the failure
43
+ await ioHelper.defaults.trace(`Error getting installation ID: ${e}`);
44
+ return (0, crypto_1.randomUUID)();
45
+ }
46
+ }
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdGFsbGF0aW9uLWlkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiaW5zdGFsbGF0aW9uLWlkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBV0EsOERBbUNDO0FBOUNELG1DQUFvQztBQUNwQyx5QkFBeUI7QUFDekIsNkJBQTZCO0FBRTdCLHFDQUF5QztBQUV6QyxNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBQSxrQkFBVyxHQUFFLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztBQUU5RTs7R0FFRztBQUNJLEtBQUssVUFBVSx5QkFBeUIsQ0FBQyxRQUFrQjtJQUNoRSxJQUFJLENBQUM7UUFDSCxpREFBaUQ7UUFDakQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUN2RCxFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3hFLENBQUM7UUFFRCwyQ0FBMkM7UUFDM0MsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDLG9CQUFvQixDQUFDLEVBQUUsQ0FBQztZQUN4QyxNQUFNLFFBQVEsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLG9CQUFvQixFQUFFLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1lBRXZFLDhDQUE4QztZQUM5QyxNQUFNLFVBQVUsR0FBRyxpRUFBaUUsQ0FBQztZQUNyRixJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztnQkFDOUIsT0FBTyxRQUFRLENBQUM7WUFDbEIsQ0FBQztZQUNELCtDQUErQztRQUNqRCxDQUFDO1FBRUQsK0JBQStCO1FBQy9CLE1BQU0sS0FBSyxHQUFHLElBQUEsbUJBQVUsR0FBRSxDQUFDO1FBQzNCLElBQUksQ0FBQztZQUNILEVBQUUsQ0FBQyxhQUFhLENBQUMsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDaEQsQ0FBQztRQUFDLE9BQU8sQ0FBTSxFQUFFLENBQUM7WUFDaEIsNERBQTREO1lBQzVELDRDQUE0QztZQUM1QyxNQUFNLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLHNDQUFzQyxvQkFBb0IsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3BHLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFBQyxPQUFPLENBQU0sRUFBRSxDQUFDO1FBQ2hCLG1FQUFtRTtRQUNuRSw0Q0FBNEM7UUFDNUMsTUFBTSxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxrQ0FBa0MsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNyRSxPQUFPLElBQUEsbUJBQVUsR0FBRSxDQUFDO0lBQ3RCLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmFuZG9tVVVJRCB9IGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgKiBhcyBmcyBmcm9tICdmcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHR5cGUgeyBJb0hlbHBlciB9IGZyb20gJy4uLy4uL2FwaS1wcml2YXRlJztcbmltcG9ydCB7IGNka0NhY2hlRGlyIH0gZnJvbSAnLi4vLi4vdXRpbCc7XG5cbmNvbnN0IElOU1RBTExBVElPTl9JRF9QQVRIID0gcGF0aC5qb2luKGNka0NhY2hlRGlyKCksICdpbnN0YWxsYXRpb24taWQuanNvbicpO1xuXG4vKipcbiAqIEdldCBvciBjcmVhdGUgaW5zdGFsbGF0aW9uIGlkXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRPckNyZWF0ZUluc3RhbGxhdGlvbklkKGlvSGVscGVyOiBJb0hlbHBlcikge1xuICB0cnkge1xuICAgIC8vIENyZWF0ZSB0aGUgY2FjaGUgZGlyZWN0b3J5IGlmIGl0IGRvZXNuJ3QgZXhpc3RcbiAgICBpZiAoIWZzLmV4aXN0c1N5bmMocGF0aC5kaXJuYW1lKElOU1RBTExBVElPTl9JRF9QQVRIKSkpIHtcbiAgICAgIGZzLm1rZGlyU3luYyhwYXRoLmRpcm5hbWUoSU5TVEFMTEFUSU9OX0lEX1BBVEgpLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgICB9XG5cbiAgICAvLyBDaGVjayBpZiB0aGUgaW5zdGFsbGF0aW9uIElEIGZpbGUgZXhpc3RzXG4gICAgaWYgKGZzLmV4aXN0c1N5bmMoSU5TVEFMTEFUSU9OX0lEX1BBVEgpKSB7XG4gICAgICBjb25zdCBjYWNoZWRJZCA9IGZzLnJlYWRGaWxlU3luYyhJTlNUQUxMQVRJT05fSURfUEFUSCwgJ3V0Zi04JykudHJpbSgpO1xuXG4gICAgICAvLyBWYWxpZGF0ZSB0aGF0IHRoZSBjYWNoZWQgSUQgaXMgYSB2YWxpZCBVVUlEXG4gICAgICBjb25zdCBVVUlEX1JFR0VYID0gL15bMC05YS1mXXs4fS1bMC05YS1mXXs0fS1bMC05YS1mXXs0fS1bMC05YS1mXXs0fS1bMC05YS1mXXsxMn0kL2k7XG4gICAgICBpZiAoVVVJRF9SRUdFWC50ZXN0KGNhY2hlZElkKSkge1xuICAgICAgICByZXR1cm4gY2FjaGVkSWQ7XG4gICAgICB9XG4gICAgICAvLyBJZiBpbnZhbGlkLCBmYWxsIHRocm91Z2ggdG8gY3JlYXRlIGEgbmV3IG9uZVxuICAgIH1cblxuICAgIC8vIENyZWF0ZSBhIG5ldyBpbnN0YWxsYXRpb24gSURcbiAgICBjb25zdCBuZXdJZCA9IHJhbmRvbVVVSUQoKTtcbiAgICB0cnkge1xuICAgICAgZnMud3JpdGVGaWxlU3luYyhJTlNUQUxMQVRJT05fSURfUEFUSCwgbmV3SWQpO1xuICAgIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgICAgLy8gSWYgd2UgY2FuJ3Qgd3JpdGUgdGhlIGZpbGUsIHN0aWxsIHJldHVybiB0aGUgZ2VuZXJhdGVkIElEXG4gICAgICAvLyBidXQgbG9nIGEgdHJhY2UgbWVzc2FnZSBhYm91dCB0aGUgZmFpbHVyZVxuICAgICAgYXdhaXQgaW9IZWxwZXIuZGVmYXVsdHMudHJhY2UoYEZhaWxlZCB0byB3cml0ZSBpbnN0YWxsYXRpb24gSUQgdG8gJHtJTlNUQUxMQVRJT05fSURfUEFUSH06ICR7ZX1gKTtcbiAgICB9XG4gICAgcmV0dXJuIG5ld0lkO1xuICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAvLyBJZiBhbnl0aGluZyBnb2VzIHdyb25nLCBnZW5lcmF0ZSBhIHRlbXBvcmFyeSBJRCBmb3IgdGhpcyBzZXNzaW9uXG4gICAgLy8gYW5kIGxvZyBhIHRyYWNlIG1lc3NhZ2UgYWJvdXQgdGhlIGZhaWx1cmVcbiAgICBhd2FpdCBpb0hlbHBlci5kZWZhdWx0cy50cmFjZShgRXJyb3IgZ2V0dGluZyBpbnN0YWxsYXRpb24gSUQ6ICR7ZX1gKTtcbiAgICByZXR1cm4gcmFuZG9tVVVJRCgpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ import type { IoHelper } from '../../api-private';
2
+ export declare function getLibraryVersion(ioHelper: IoHelper): Promise<string | undefined>;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getLibraryVersion = getLibraryVersion;
4
+ const child_process_1 = require("child_process");
5
+ const path = require("path");
6
+ const util_1 = require("util");
7
+ const fs = require("fs-extra");
8
+ async function getLibraryVersion(ioHelper) {
9
+ try {
10
+ const command = "node -e 'process.stdout.write(require.resolve(\"aws-cdk-lib\"))'";
11
+ const { stdout } = await (0, util_1.promisify)(child_process_1.exec)(command);
12
+ // stdout should be a file path but lets double check
13
+ if (!fs.existsSync(stdout)) {
14
+ await ioHelper.defaults.trace('Could not get CDK Library Version: require.resolve("aws-cdk-lib") did not return a file path');
15
+ return;
16
+ }
17
+ const pathToPackageJson = path.join(path.dirname(stdout), 'package.json');
18
+ const packageJson = fs.readJSONSync(pathToPackageJson);
19
+ if (!packageJson.version) {
20
+ await ioHelper.defaults.trace('Could not get CDK Library Version: package.json does not have version field');
21
+ return;
22
+ }
23
+ return packageJson.version;
24
+ }
25
+ catch (e) {
26
+ await ioHelper.defaults.trace(`Could not get CDK Library Version: ${e}`);
27
+ return;
28
+ }
29
+ }
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlicmFyeS12ZXJzaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibGlicmFyeS12ZXJzaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBTUEsOENBdUJDO0FBN0JELGlEQUFxQztBQUNyQyw2QkFBNkI7QUFDN0IsK0JBQWlDO0FBQ2pDLCtCQUErQjtBQUd4QixLQUFLLFVBQVUsaUJBQWlCLENBQUMsUUFBa0I7SUFDeEQsSUFBSSxDQUFDO1FBQ0gsTUFBTSxPQUFPLEdBQUcsa0VBQWtFLENBQUM7UUFDbkYsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLE1BQU0sSUFBQSxnQkFBUyxFQUFDLG9CQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVsRCxxREFBcUQ7UUFDckQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUMzQixNQUFNLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLDhGQUE4RixDQUFDLENBQUM7WUFDOUgsT0FBTztRQUNULENBQUM7UUFFRCxNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxjQUFjLENBQUMsQ0FBQztRQUMxRSxNQUFNLFdBQVcsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUN6QixNQUFNLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLDZFQUE2RSxDQUFDLENBQUM7WUFDN0csT0FBTztRQUNULENBQUM7UUFFRCxPQUFPLFdBQVcsQ0FBQyxPQUFPLENBQUM7SUFDN0IsQ0FBQztJQUFDLE9BQU8sQ0FBTSxFQUFFLENBQUM7UUFDaEIsTUFBTSxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN6RSxPQUFPO0lBQ1QsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBleGVjIH0gZnJvbSAnY2hpbGRfcHJvY2Vzcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgcHJvbWlzaWZ5IH0gZnJvbSAndXRpbCc7XG5pbXBvcnQgKiBhcyBmcyBmcm9tICdmcy1leHRyYSc7XG5pbXBvcnQgdHlwZSB7IElvSGVscGVyIH0gZnJvbSAnLi4vLi4vYXBpLXByaXZhdGUnO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0TGlicmFyeVZlcnNpb24oaW9IZWxwZXI6IElvSGVscGVyKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBjb21tYW5kID0gXCJub2RlIC1lICdwcm9jZXNzLnN0ZG91dC53cml0ZShyZXF1aXJlLnJlc29sdmUoXFxcImF3cy1jZGstbGliXFxcIikpJ1wiO1xuICAgIGNvbnN0IHsgc3Rkb3V0IH0gPSBhd2FpdCBwcm9taXNpZnkoZXhlYykoY29tbWFuZCk7XG5cbiAgICAvLyBzdGRvdXQgc2hvdWxkIGJlIGEgZmlsZSBwYXRoIGJ1dCBsZXRzIGRvdWJsZSBjaGVja1xuICAgIGlmICghZnMuZXhpc3RzU3luYyhzdGRvdXQpKSB7XG4gICAgICBhd2FpdCBpb0hlbHBlci5kZWZhdWx0cy50cmFjZSgnQ291bGQgbm90IGdldCBDREsgTGlicmFyeSBWZXJzaW9uOiByZXF1aXJlLnJlc29sdmUoXCJhd3MtY2RrLWxpYlwiKSBkaWQgbm90IHJldHVybiBhIGZpbGUgcGF0aCcpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHBhdGhUb1BhY2thZ2VKc29uID0gcGF0aC5qb2luKHBhdGguZGlybmFtZShzdGRvdXQpLCAncGFja2FnZS5qc29uJyk7XG4gICAgY29uc3QgcGFja2FnZUpzb24gPSBmcy5yZWFkSlNPTlN5bmMocGF0aFRvUGFja2FnZUpzb24pO1xuICAgIGlmICghcGFja2FnZUpzb24udmVyc2lvbikge1xuICAgICAgYXdhaXQgaW9IZWxwZXIuZGVmYXVsdHMudHJhY2UoJ0NvdWxkIG5vdCBnZXQgQ0RLIExpYnJhcnkgVmVyc2lvbjogcGFja2FnZS5qc29uIGRvZXMgbm90IGhhdmUgdmVyc2lvbiBmaWVsZCcpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHJldHVybiBwYWNrYWdlSnNvbi52ZXJzaW9uO1xuICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICBhd2FpdCBpb0hlbHBlci5kZWZhdWx0cy50cmFjZShgQ291bGQgbm90IGdldCBDREsgTGlicmFyeSBWZXJzaW9uOiAke2V9YCk7XG4gICAgcmV0dXJuO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,40 @@
1
+ import type { Duration } from '@aws-cdk/toolkit-lib';
2
+ import type { ErrorDetails } from './schema';
3
+ import * as make from '../../api-private';
4
+ export interface EventResult extends Duration {
5
+ error?: ErrorDetails;
6
+ }
7
+ export interface EventStart {
8
+ }
9
+ /**
10
+ * Private message types specific to the CLI
11
+ */
12
+ export declare const CLI_PRIVATE_IO: {
13
+ CDK_CLI_I1000: make.IoMessageMaker<EventStart>;
14
+ CDK_CLI_I1001: make.IoMessageMaker<EventResult>;
15
+ CDK_CLI_I2000: make.IoMessageMaker<EventStart>;
16
+ CDK_CLI_I2001: make.IoMessageMaker<EventResult>;
17
+ CDK_CLI_I3000: make.IoMessageMaker<EventStart>;
18
+ CDK_CLI_I3001: make.IoMessageMaker<EventResult>;
19
+ };
20
+ /**
21
+ * Payload type of the end message must extend Duration
22
+ */
23
+ export declare const CLI_PRIVATE_SPAN: {
24
+ SYNTH_ASSEMBLY: {
25
+ name: string;
26
+ start: make.IoMessageMaker<EventStart>;
27
+ end: make.IoMessageMaker<EventResult>;
28
+ };
29
+ COMMAND: {
30
+ name: string;
31
+ start: make.IoMessageMaker<EventStart>;
32
+ end: make.IoMessageMaker<EventResult>;
33
+ };
34
+ DEPLOY: {
35
+ name: string;
36
+ start: make.IoMessageMaker<EventStart>;
37
+ end: make.IoMessageMaker<EventResult>;
38
+ };
39
+ };
40
+ export declare const CLI_TELEMETRY_CODES: make.IoMessageMaker<EventResult>[];
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CLI_TELEMETRY_CODES = exports.CLI_PRIVATE_SPAN = exports.CLI_PRIVATE_IO = void 0;
4
+ const make = require("../../api-private");
5
+ /**
6
+ * Private message types specific to the CLI
7
+ */
8
+ exports.CLI_PRIVATE_IO = {
9
+ CDK_CLI_I1000: make.trace({
10
+ code: 'CDK_CLI_I1000',
11
+ description: 'Cloud Execution is starting',
12
+ interface: 'EventStart',
13
+ }),
14
+ CDK_CLI_I1001: make.trace({
15
+ code: 'CDK_CLI_I1001',
16
+ description: 'Cloud Executable Result',
17
+ interface: 'EventResult',
18
+ }),
19
+ CDK_CLI_I2000: make.trace({
20
+ code: 'CDK_CLI_I2000',
21
+ description: 'Command has started',
22
+ interface: 'EventStart',
23
+ }),
24
+ CDK_CLI_I2001: make.trace({
25
+ code: 'CDK_CLI_I2001',
26
+ description: 'Command has finished executing',
27
+ interface: 'EventResult',
28
+ }),
29
+ CDK_CLI_I3000: make.trace({
30
+ code: 'CDK_CLI_I3000',
31
+ description: 'Deploy has started',
32
+ interface: 'EventStart',
33
+ }),
34
+ CDK_CLI_I3001: make.trace({
35
+ code: 'CDK_CLI_I3001',
36
+ description: 'Deploy has finished',
37
+ interface: 'EventResult',
38
+ }),
39
+ };
40
+ /**
41
+ * Payload type of the end message must extend Duration
42
+ */
43
+ exports.CLI_PRIVATE_SPAN = {
44
+ SYNTH_ASSEMBLY: {
45
+ name: 'Synthesis',
46
+ start: exports.CLI_PRIVATE_IO.CDK_CLI_I1000,
47
+ end: exports.CLI_PRIVATE_IO.CDK_CLI_I1001,
48
+ },
49
+ COMMAND: {
50
+ name: 'Command',
51
+ start: exports.CLI_PRIVATE_IO.CDK_CLI_I2000,
52
+ end: exports.CLI_PRIVATE_IO.CDK_CLI_I2001,
53
+ },
54
+ DEPLOY: {
55
+ name: 'Deploy',
56
+ start: exports.CLI_PRIVATE_IO.CDK_CLI_I3000,
57
+ end: exports.CLI_PRIVATE_IO.CDK_CLI_I3001,
58
+ },
59
+ };
60
+ exports.CLI_TELEMETRY_CODES = [
61
+ exports.CLI_PRIVATE_IO.CDK_CLI_I1001,
62
+ exports.CLI_PRIVATE_IO.CDK_CLI_I2001,
63
+ exports.CLI_PRIVATE_IO.CDK_CLI_I3001,
64
+ ];
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJtZXNzYWdlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSwwQ0FBMEM7QUFVMUM7O0dBRUc7QUFDVSxRQUFBLGNBQWMsR0FBRztJQUM1QixhQUFhLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBYTtRQUNwQyxJQUFJLEVBQUUsZUFBZTtRQUNyQixXQUFXLEVBQUUsNkJBQTZCO1FBQzFDLFNBQVMsRUFBRSxZQUFZO0tBQ3hCLENBQUM7SUFDRixhQUFhLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBYztRQUNyQyxJQUFJLEVBQUUsZUFBZTtRQUNyQixXQUFXLEVBQUUseUJBQXlCO1FBQ3RDLFNBQVMsRUFBRSxhQUFhO0tBQ3pCLENBQUM7SUFDRixhQUFhLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBYTtRQUNwQyxJQUFJLEVBQUUsZUFBZTtRQUNyQixXQUFXLEVBQUUscUJBQXFCO1FBQ2xDLFNBQVMsRUFBRSxZQUFZO0tBQ3hCLENBQUM7SUFDRixhQUFhLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBYztRQUNyQyxJQUFJLEVBQUUsZUFBZTtRQUNyQixXQUFXLEVBQUUsZ0NBQWdDO1FBQzdDLFNBQVMsRUFBRSxhQUFhO0tBQ3pCLENBQUM7SUFDRixhQUFhLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBYTtRQUNwQyxJQUFJLEVBQUUsZUFBZTtRQUNyQixXQUFXLEVBQUUsb0JBQW9CO1FBQ2pDLFNBQVMsRUFBRSxZQUFZO0tBQ3hCLENBQUM7SUFDRixhQUFhLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBYztRQUNyQyxJQUFJLEVBQUUsZUFBZTtRQUNyQixXQUFXLEVBQUUscUJBQXFCO1FBQ2xDLFNBQVMsRUFBRSxhQUFhO0tBQ3pCLENBQUM7Q0FDSCxDQUFDO0FBRUY7O0dBRUc7QUFDVSxRQUFBLGdCQUFnQixHQUFHO0lBQzlCLGNBQWMsRUFBRTtRQUNkLElBQUksRUFBRSxXQUFXO1FBQ2pCLEtBQUssRUFBRSxzQkFBYyxDQUFDLGFBQWE7UUFDbkMsR0FBRyxFQUFFLHNCQUFjLENBQUMsYUFBYTtLQUNsQztJQUNELE9BQU8sRUFBRTtRQUNQLElBQUksRUFBRSxTQUFTO1FBQ2YsS0FBSyxFQUFFLHNCQUFjLENBQUMsYUFBYTtRQUNuQyxHQUFHLEVBQUUsc0JBQWMsQ0FBQyxhQUFhO0tBQ2xDO0lBQ0QsTUFBTSxFQUFFO1FBQ04sSUFBSSxFQUFFLFFBQVE7UUFDZCxLQUFLLEVBQUUsc0JBQWMsQ0FBQyxhQUFhO1FBQ25DLEdBQUcsRUFBRSxzQkFBYyxDQUFDLGFBQWE7S0FDbEM7Q0FDaUQsQ0FBQztBQUV4QyxRQUFBLG1CQUFtQixHQUFHO0lBQ2pDLHNCQUFjLENBQUMsYUFBYTtJQUM1QixzQkFBYyxDQUFDLGFBQWE7SUFDNUIsc0JBQWMsQ0FBQyxhQUFhO0NBQzdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IER1cmF0aW9uIH0gZnJvbSAnQGF3cy1jZGsvdG9vbGtpdC1saWInO1xuaW1wb3J0IHR5cGUgeyBFcnJvckRldGFpbHMgfSBmcm9tICcuL3NjaGVtYSc7XG5pbXBvcnQgKiBhcyBtYWtlIGZyb20gJy4uLy4uL2FwaS1wcml2YXRlJztcbmltcG9ydCB0eXBlIHsgU3BhbkRlZmluaXRpb24gfSBmcm9tICcuLi8uLi9hcGktcHJpdmF0ZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXZlbnRSZXN1bHQgZXh0ZW5kcyBEdXJhdGlvbiB7XG4gIGVycm9yPzogRXJyb3JEZXRhaWxzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50U3RhcnQge1xufVxuXG4vKipcbiAqIFByaXZhdGUgbWVzc2FnZSB0eXBlcyBzcGVjaWZpYyB0byB0aGUgQ0xJXG4gKi9cbmV4cG9ydCBjb25zdCBDTElfUFJJVkFURV9JTyA9IHtcbiAgQ0RLX0NMSV9JMTAwMDogbWFrZS50cmFjZTxFdmVudFN0YXJ0Pih7XG4gICAgY29kZTogJ0NES19DTElfSTEwMDAnLFxuICAgIGRlc2NyaXB0aW9uOiAnQ2xvdWQgRXhlY3V0aW9uIGlzIHN0YXJ0aW5nJyxcbiAgICBpbnRlcmZhY2U6ICdFdmVudFN0YXJ0JyxcbiAgfSksXG4gIENES19DTElfSTEwMDE6IG1ha2UudHJhY2U8RXZlbnRSZXN1bHQ+KHtcbiAgICBjb2RlOiAnQ0RLX0NMSV9JMTAwMScsXG4gICAgZGVzY3JpcHRpb246ICdDbG91ZCBFeGVjdXRhYmxlIFJlc3VsdCcsXG4gICAgaW50ZXJmYWNlOiAnRXZlbnRSZXN1bHQnLFxuICB9KSxcbiAgQ0RLX0NMSV9JMjAwMDogbWFrZS50cmFjZTxFdmVudFN0YXJ0Pih7XG4gICAgY29kZTogJ0NES19DTElfSTIwMDAnLFxuICAgIGRlc2NyaXB0aW9uOiAnQ29tbWFuZCBoYXMgc3RhcnRlZCcsXG4gICAgaW50ZXJmYWNlOiAnRXZlbnRTdGFydCcsXG4gIH0pLFxuICBDREtfQ0xJX0kyMDAxOiBtYWtlLnRyYWNlPEV2ZW50UmVzdWx0Pih7XG4gICAgY29kZTogJ0NES19DTElfSTIwMDEnLFxuICAgIGRlc2NyaXB0aW9uOiAnQ29tbWFuZCBoYXMgZmluaXNoZWQgZXhlY3V0aW5nJyxcbiAgICBpbnRlcmZhY2U6ICdFdmVudFJlc3VsdCcsXG4gIH0pLFxuICBDREtfQ0xJX0kzMDAwOiBtYWtlLnRyYWNlPEV2ZW50U3RhcnQ+KHtcbiAgICBjb2RlOiAnQ0RLX0NMSV9JMzAwMCcsXG4gICAgZGVzY3JpcHRpb246ICdEZXBsb3kgaGFzIHN0YXJ0ZWQnLFxuICAgIGludGVyZmFjZTogJ0V2ZW50U3RhcnQnLFxuICB9KSxcbiAgQ0RLX0NMSV9JMzAwMTogbWFrZS50cmFjZTxFdmVudFJlc3VsdD4oe1xuICAgIGNvZGU6ICdDREtfQ0xJX0kzMDAxJyxcbiAgICBkZXNjcmlwdGlvbjogJ0RlcGxveSBoYXMgZmluaXNoZWQnLFxuICAgIGludGVyZmFjZTogJ0V2ZW50UmVzdWx0JyxcbiAgfSksXG59O1xuXG4vKipcbiAqIFBheWxvYWQgdHlwZSBvZiB0aGUgZW5kIG1lc3NhZ2UgbXVzdCBleHRlbmQgRHVyYXRpb25cbiAqL1xuZXhwb3J0IGNvbnN0IENMSV9QUklWQVRFX1NQQU4gPSB7XG4gIFNZTlRIX0FTU0VNQkxZOiB7XG4gICAgbmFtZTogJ1N5bnRoZXNpcycsXG4gICAgc3RhcnQ6IENMSV9QUklWQVRFX0lPLkNES19DTElfSTEwMDAsXG4gICAgZW5kOiBDTElfUFJJVkFURV9JTy5DREtfQ0xJX0kxMDAxLFxuICB9LFxuICBDT01NQU5EOiB7XG4gICAgbmFtZTogJ0NvbW1hbmQnLFxuICAgIHN0YXJ0OiBDTElfUFJJVkFURV9JTy5DREtfQ0xJX0kyMDAwLFxuICAgIGVuZDogQ0xJX1BSSVZBVEVfSU8uQ0RLX0NMSV9JMjAwMSxcbiAgfSxcbiAgREVQTE9ZOiB7XG4gICAgbmFtZTogJ0RlcGxveScsXG4gICAgc3RhcnQ6IENMSV9QUklWQVRFX0lPLkNES19DTElfSTMwMDAsXG4gICAgZW5kOiBDTElfUFJJVkFURV9JTy5DREtfQ0xJX0kzMDAxLFxuICB9LFxufSBzYXRpc2ZpZXMgUmVjb3JkPHN0cmluZywgU3BhbkRlZmluaXRpb248YW55LCBhbnk+PjtcblxuZXhwb3J0IGNvbnN0IENMSV9URUxFTUVUUllfQ09ERVMgPSBbXG4gIENMSV9QUklWQVRFX0lPLkNES19DTElfSTEwMDEsXG4gIENMSV9QUklWQVRFX0lPLkNES19DTElfSTIwMDEsXG4gIENMSV9QUklWQVRFX0lPLkNES19DTElfSTMwMDEsXG5dO1xuIl19