/* eslint-disable */ /** * This file was automatically generated by json-schema-to-typescript. * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file, * and run json-schema-to-typescript to regenerate this file. */ /** * Resource Type definition for AWS::OpsWorks::Layer */ export interface AwsOpsworksLayer { Id?: string; Attributes?: { /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "[a-zA-Z0-9]+". */ [k: string]: string; }; AutoAssignElasticIps: boolean; AutoAssignPublicIps: boolean; CustomInstanceProfileArn?: string; CustomJson?: { [k: string]: unknown; }; CustomRecipes?: Recipes; CustomSecurityGroupIds?: string[]; EnableAutoHealing: boolean; InstallUpdatesOnBoot?: boolean; LifecycleEventConfiguration?: LifecycleEventConfiguration; LoadBasedAutoScaling?: LoadBasedAutoScaling; Name: string; Packages?: string[]; Shortname: string; StackId: string; Tags?: Tag[]; Type: string; UseEbsOptimizedInstances?: boolean; VolumeConfigurations?: VolumeConfiguration[]; } export interface Recipes { Configure?: string[]; Deploy?: string[]; Setup?: string[]; Shutdown?: string[]; Undeploy?: string[]; } export interface LifecycleEventConfiguration { ShutdownEventConfiguration?: ShutdownEventConfiguration; } export interface ShutdownEventConfiguration { DelayUntilElbConnectionsDrained?: boolean; ExecutionTimeout?: number; } export interface LoadBasedAutoScaling { DownScaling?: AutoScalingThresholds; Enable?: boolean; UpScaling?: AutoScalingThresholds; } export interface AutoScalingThresholds { CpuThreshold?: number; IgnoreMetricsTime?: number; InstanceCount?: number; LoadThreshold?: number; MemoryThreshold?: number; ThresholdsWaitTime?: number; } export interface Tag { Key: string; Value: string; } export interface VolumeConfiguration { Encrypted?: boolean; Iops?: number; MountPoint?: string; NumberOfDisks?: number; RaidLevel?: number; Size?: number; VolumeType?: string; }