Skip to main content

core.medpluminfraconfig

Home > @medplum/core > MedplumInfraConfig

MedplumInfraConfig interface​

Signature:

export interface MedplumInfraConfig

Properties​

Property

Modifiers

Type

Description

accountNumber

string

additionalContainers?

{ name: string; image: string; cpu?: number; memory?: number; essential?: boolean; command?: string[]; environment?: { [key: string]: string; }; }[]

(Optional)

apiDomainName

string

apiInternetFacing?

boolean

(Optional)

apiPort

number

apiSslCertArn

string

apiWafIpSetArn?

string

(Optional)

appApiProxy?

boolean

(Optional)

appDomainName

string

appLoggingBucket?

string

(Optional)

appLoggingPrefix?

string

(Optional)

appSslCertArn

string

appWafIpSetArn?

string

(Optional)

backgroundJobsRedis?

{ nodeType?: string; securityGroupId?: string; engine?: string; engineVersion?: string; }

(Optional)

baseUrl

string

blockedEmailDomains?

string

(Optional)

cacheEngine?

string

(Optional)

cacheEngineVersion?

string

(Optional)

cacheNodeType?

string

(Optional)

cacheRedis?

{ nodeType?: string; securityGroupId?: string; engine?: string; engineVersion?: string; }

(Optional)

cacheSecurityGroupId?

string

(Optional)

clamscanEnabled

boolean

clamscanLoggingBucket

string

clamscanLoggingPrefix

string

cloudTrailAlarms?

{ logGroupName: string; logGroupCreate?: boolean; snsTopicArn?: string; snsTopicName?: string; }

(Optional)

containerInsightsV2?

'enabled' | 'disabled' | 'enhanced'

(Optional)

containerRegistryCredentialsSecretArn?

string

(Optional)

desiredServerCount

number

domainName

string

environment?

StringMap

(Optional)

fargateAutoScaling?

{ minCapacity: number; maxCapacity: number; targetUtilizationPercent: number; scaleInCooldown: number; scaleOutCooldown: number; }

(Optional)

fireLens?

{ enabled: true; logDriverConfig?: { options?: { [key: string]: string; }; secretOptions?: { [key: string]: string; }; }; logRouterConfig: { type: 'fluentbit' | 'fluentd'; options?: Record<string, unknown>; }; environment?: { [key: string]: string; }; }

(Optional)

guardDutyMalwareProtectionEnabled?

boolean

(Optional)

guardDutyMalwareProtectionOnDemandOnly?

boolean

(Optional) With guardDutyMalwareProtectionEnabled, scan only via Binary $scan, and only block Binaries with threats found.

hostedZoneName?

string

(Optional)

loadBalancerAlgorithm?

'round_robin' | 'least_outstanding_requests' | 'weighted_random'

(Optional)

loadBalancerLoggingBucket?

string

(Optional)

loadBalancerLoggingPrefix?

string

(Optional)

loadBalancerSecurityGroupId?

string

(Optional)

maxAzs

number

mtlsDomainName?

string

(Optional)

mtlsInternetFacing?

boolean

(Optional)

mtlsSslCertArn?

string

(Optional)

mtlsWafIpSetArn?

string

(Optional)

name

string

pinAdditionalContainerImages?

boolean

(Optional) Resolve each additional container image tag to its current digest at synth time, so tasks only change on deploy.

pubSubRedis?

{ nodeType?: string; securityGroupId?: string; engine?: string; engineVersion?: string; }

(Optional)

rateLimitRedis?

{ nodeType?: string; securityGroupId?: string; engine?: string; engineVersion?: string; }

(Optional)

rdsAutoMinorVersionUpgrade?

boolean

(Optional)

rdsClusterParameters?

StringMap

(Optional)

rdsForceRetain?

boolean

(Optional)

rdsIdsMajorVersionSuffix?

boolean

(Optional)

rdsInstances

number

rdsInstanceType

string

rdsInstanceVersion?

string

(Optional)

rdsPersistentParameterGroups?

boolean

(Optional)

rdsProxyEnabled?

boolean

(Optional)

rdsReaderInstanceType?

string

(Optional)

rdsSecretsArn?

string

(Optional)

region

string

serverCpu

number

serverImage

string

serverMemory

number

signingKeyId

string

skipDns?

boolean

(Optional)

stackName

string

storageBotInputExpirationDays?

number

(Optional) Delete bot inputs written by the server's storeBotInput setting (bot/ prefix) after this many days.

storageBucketName

string

storageDomainName

string

storageLoggingBucket?

string

(Optional)

storageLoggingPrefix?

string

(Optional)

storagePublicKey

string

storageSslCertArn

string

storageWafIpSetArn?

string

(Optional)

vpcId

string

wafLogGroupCreate?

boolean

(Optional)

wafLogGroupName?

string

(Optional)

workers?

{ enabled?: string[]; bullmq?: Record<string, unknown>; }

(Optional)

workerServices?

{ id: string; serverImage?: string; serverMemory?: number; serverCpu?: number; desiredCount: number; environment?: StringMap; workers?: { enabled?: string[]; bullmq?: Record<string, unknown>; }; fargateAutoScaling?: { minCapacity: number; maxCapacity: number; targetUtilizationPercent: number; scaleInCooldown: number; scaleOutCooldown: number; }; additionalContainers?: { name: string; image: string; cpu?: number; memory?: number; essential?: boolean; command?: string[]; environment?: { [key: string]: string; }; }[]; }[]

(Optional)