Skip to main content

CloudFormationDeployer

@webda/aws


Class: CloudFormationDeployer<T>

Defined in: aws/src/deployers/cloudformation.service.ts:296

Deploy the application and its resources using AWS CloudFormation

Declared as a unit of a deployment:

{
"units": [{
"name": "MyStack",
"type": "Webda/CloudFormationDeployer",
"AssetsBucket": "my-assets",
"Lambda": {},
"APIGateway": {}
}]
}

then webda -d <deployment> deploy

Webda Modda​

Extends​

Type Parameters​

T​

T extends CloudFormationDeployerParameters = CloudFormationDeployerParameters

Implements​

  • Deployer

Constructors​

Constructor​

new CloudFormationDeployer<T>(name, params): CloudFormationDeployer<T>

Defined in: core/lib/services/service.d.ts:72

Service

Parameters​

name​

string

The name of the service

params​

T

The parameters block define in the configuration file

Returns​

CloudFormationDeployer<T>

Inherited from​

AWSDeployer.constructor

Properties​

_compiledCapabilities​

protected _compiledCapabilities: Record<string, any>

Defined in: core/lib/services/iservice.d.ts:39

Capabilities detected at compile-time from @WebdaCapability-tagged interfaces.

Populated during Service.resolve by reading the service's entry in webda.module.json. Each key is a capability name (e.g., "request-filter"), and the value is an empty object {} by default. Override getCapabilities to provide capability-specific configuration or to conditionally disable capabilities.

See​

getCapabilities

Inherited from​

AWSDeployer._compiledCapabilities


[WEBDA_EVENTS]​

[WEBDA_EVENTS]: object

Defined in: core/lib/services/service.d.ts:50

Set the Webda events here

Inherited from​

AWSDeployer.[WEBDA_EVENTS]


logger​

protected logger: Logger

Defined in: core/lib/services/service.d.ts:59

Logger with class context

Inherited from​

AWSDeployer.logger


metrics?​

protected optional metrics?: object

Defined in: core/lib/services/service.d.ts:63

Get metrics

Inherited from​

AWSDeployer.metrics


name​

readonly name: string

Defined in: core/lib/services/iservice.d.ts:19

Inherited from​

AWSDeployer.name


openapiS3Object​

openapiS3Object: object

Defined in: aws/src/deployers/cloudformation.service.ts:311

OpenAPI definition uploaded to the AssetsBucket

key​

key: string

src​

src: any


parameters​

readonly parameters: T

Defined in: core/lib/services/iservice.d.ts:20

Inherited from​

AWSDeployer.parameters


resources​

resources: DeployerResources<T> & object

Defined in: aws/src/deployers/awsdeployer.ts:127

Parameters of the deployer with the deployment variables replaced and the defaults applied

Computed by AWSDeployer.prepare

Inherited from​

AWSDeployer.resources


result​

result: any = {}

Defined in: aws/src/deployers/cloudformation.service.ts:307

Result of the deployment


template​

template: any = {}

Defined in: aws/src/deployers/cloudformation.service.ts:303

The template being generated


createConfiguration?​

static optional createConfiguration?: (params) => any

Defined in: core/lib/services/iservice.d.ts:24

Create configuration set by the application on load

Parameters​

params​

any

Returns​

any

Inherited from​

AWSDeployer.createConfiguration


filterConfiguration?​

static optional filterConfiguration?: (params) => any

Defined in: core/lib/services/iservice.d.ts:28

Create configuration set by the application on load

Parameters​

params​

any

Returns​

any

Inherited from​

AWSDeployer.filterConfiguration


Parameters​

static Parameters: typeof ServiceParameters

Defined in: core/lib/services/service.d.ts:46

Service parameters

Inherited from​

AWSDeployer.Parameters

Methods​

__clean()​

abstract __clean(): Promise<void>

Defined in: core/lib/services/service.d.ts:215

Clean the service data, can only be used in test mode

Returns​

Promise<void>

Inherited from​

AWSDeployer.__clean


_replaceForAWS()​

_replaceForAWS(id): string

Defined in: aws/src/deployers/awsdeployer.ts:271

Replace / by _ as theses ID are not allowed in AWS

Parameters​

id​

string

to replace

Returns​

string

the AWS compatible id

Inherited from​

AWSDeployer._replaceForAWS


addAssumeRolePolicyStatement()​

addAssumeRolePolicyStatement(...statements): void

Defined in: aws/src/deployers/cloudformation.service.ts:1075

Add statements to the generated Role assume policy

Parameters​

statements​

...any[]

to add

Returns​

void


addListener()​

addListener<Key>(eventName, listener): this

Defined in: core/lib/events/asynceventemitter.d.ts:80

Type Parameters​

Key​

Key extends never

Parameters​

eventName​

Key

the event name

listener​

(event) => void | Promise<void>

the event listener

Returns​

this

this for chaining

See​

EventEmitter.addListener

Inherited from​

AWSDeployer.addListener


addRoute()​

protected addRoute(url, methods, executer, openapi?, override?): void

Defined in: core/lib/services/service.d.ts:177

Add a route dynamicaly

Parameters​

url​

string

of the route can contains dynamic part like {uuid}

methods​

HttpMethodType[]

the HTTP methods

executer​

Function

Method to execute for this route

openapi?​

OpenAPIWebdaDefinition

the OpenAPI specification

override?​

boolean

whether to override existing

Returns​

void

Inherited from​

AWSDeployer.addRoute


APIGateway()​

APIGateway(): Promise<void>

Defined in: aws/src/deployers/cloudformation.service.ts:960

Add the API Gateway in front of the Lambda function

Returns​

Promise<void>


APIGatewayDomain()​

APIGatewayDomain(): Promise<void>

Defined in: aws/src/deployers/cloudformation.service.ts:1017

Add the API Gateway custom domain

Returns​

Promise<void>


authorizeClientEvent()​

authorizeClientEvent(_event, _context): boolean

Defined in: core/lib/services/service.d.ts:153

Authorize a public event subscription

Parameters​

_event​

string

the event name

_context​

OperationContext

the execution context

Returns​

boolean

true if the condition is met

Inherited from​

AWSDeployer.authorizeClientEvent


buildLambdaPackage()​

buildLambdaPackage(options): Promise<LambdaPackageResult>

Defined in: aws/src/deployers/cloudformation.service.ts:1132

Create the Lambda zip of the application

Parameters​

options​

LambdaPackageOptions

the package options

Returns​

Promise<LambdaPackageResult>

the zip information


commonPrefix()​

commonPrefix(str1, str2): string

Defined in: aws/src/deployers/awsdeployer.ts:672

Find the common prefix between two strings

Example

commonPrefix("/test/plop1", "/templates/") => "/te"

Parameters​

str1​

string

to compare

str2​

string

to compare

Returns​

string

the common prefix

Inherited from​

AWSDeployer.commonPrefix


completeOpenAPI()​

completeOpenAPI(openapi): Promise<any>

Defined in: aws/src/deployers/cloudformation.service.ts:897

Add the API Gateway integration to the OpenAPI definition

Parameters​

openapi​

any

the definition

Returns​

Promise<any>

the definition


computeParameters()​

computeParameters(): void

Defined in: core/lib/services/service.d.ts:77

Used to compute or derivate input parameter to attribute

Returns​

void

Deprecated​

Inherited from​

AWSDeployer.computeParameters


createBucket()​

createBucket(Bucket): Promise<void>

Defined in: aws/src/deployers/awsdeployer.ts:600

Create a bucket if it does not exist

Parameters​

Bucket​

string

to create

Returns​

Promise<void>

Inherited from​

AWSDeployer.createBucket


createCloudFormation()​

createCloudFormation(): Promise<void>

Defined in: aws/src/deployers/cloudformation.service.ts:742

Upload and create the cloudformation stack or update it

Returns​

Promise<void>


createCloudFormationChangeSet()​

createCloudFormationChangeSet(cloudformation): Promise<any>

Defined in: aws/src/deployers/cloudformation.service.ts:663

Create the stack changeset

Parameters​

cloudformation​

CloudFormation

the client

Returns​

Promise<any>

the changeset


createCloudFormationDNSEntry()​

createCloudFormationDNSEntry(ref, domain, HostedZoneId): Promise<void>

Defined in: aws/src/deployers/cloudformation.service.ts:625

Add a Route53 alias record to the template

Parameters​

ref​

any

the alias target

domain​

string

the domain

HostedZoneId​

any

the zone of the alias target

Returns​

Promise<void>


createDNSEntry()​

createDNSEntry(domain, type, value, targetZone?): Promise<void>

Defined in: aws/src/deployers/awsdeployer.ts:493

Create DNS entry

Parameters​

domain​

string

to create

type​

RRType

of DNS

value​

string

the value of the record

targetZone?​

HostedZone = undefined

the zone, found from the domain if not provided

Returns​

Promise<void>

Inherited from​

AWSDeployer.createDNSEntry


createStatic()​

createStatic(info): Promise<void>

Defined in: aws/src/deployers/cloudformation.service.ts:529

Add the resources of a static website

Parameters​

info​

the static website

AssetsPath?​

string

Path to store on the AssetsBucket

Bucket?​

any

Bucket parameter to add, a bucket named after the domain is created

CloudFront?​

any

CloudFront parameter to add

DomainName​

string

Domain name to deploy on

Source​

string

Source on local folder

Returns​

Promise<void>


defaultResources()​

defaultResources(): Promise<void>

Defined in: aws/src/deployers/cloudformation.service.ts:316

Returns​

Promise<void>

Overrides​

AWSDeployer.defaultResources


deleteCloudFormation()​

deleteCloudFormation(): Promise<void>

Defined in: aws/src/deployers/cloudformation.service.ts:597

Delete the CloudFormation stack

Returns​

Promise<void>

when the stack is deleted


deploy()​

deploy(): Promise<any>

Defined in: aws/src/deployers/cloudformation.service.ts:459

Deploy the application with CloudFormation

It packages the Lambda, uploads the assets, the OpenAPI definition and the template to the AssetsBucket, then creates or updates the stack.

Returns​

Promise<any>

the deployment result: the template location and content


doCreateCertificate()​

doCreateCertificate(domain, zone, region?): Promise<CertificateDetail>

Defined in: aws/src/deployers/awsdeployer.ts:421

Create a certificate for a domain Will use Route 53 to do the validation

Parameters​

domain​

string

to create the certificate for

zone​

HostedZone

to create the validation record in

region?​

string

of the certificate

Returns​

Promise<CertificateDetail>

the certificate

Inherited from​

AWSDeployer.doCreateCertificate


emit()​

emit<Key>(event, data): Promise<void>

Defined in: core/lib/services/service.d.ts:204

Emit the event with data and wait for Promise to finish if listener returned a Promise

Type Parameters​

Key​

Key extends never

Parameters​

event​

Key

the event name

data​

object[Key]

the data to process

Returns​

Promise<void>

Inherited from​

AWSDeployer.emit


Fargate()​

Fargate(): Promise<void>

Defined in: aws/src/deployers/cloudformation.service.ts:1118

Allow the ECS tasks to use the generated Role

Returns​

Promise<void>


generateLambdaPackage()​

generateLambdaPackage(): Promise<{ S3Bucket: string; S3Key: string; }>

Defined in: aws/src/deployers/cloudformation.service.ts:1141

Create the Lambda package and upload it to the AssetsBucket

Returns​

Promise<{ S3Bucket: string; S3Key: string; }>

the S3 location of the package


generateTemplate()​

generateTemplate(): Promise<any>

Defined in: aws/src/deployers/cloudformation.service.ts:475

Upload the assets and generate the CloudFormation template

Returns​

Promise<any>

the template


getAPIGateway()​

protected getAPIGateway(): APIGateway

Defined in: aws/src/deployers/cloudformation.service.ts:589

API Gateway client

Returns​

APIGateway

the client


getApplicationServices()​

getApplicationServices(): Service<ServiceParameters, { }>[]

Defined in: aws/src/deployers/awsdeployer.ts:589

Services of the application, the deployers excluded

Returns​

Service<ServiceParameters, { }>[]

the services

Inherited from​

AWSDeployer.getApplicationServices


getARNPolicy()​

getARNPolicy(accountId, region): any[]

Defined in: aws/src/deployers/awsdeployer.ts:538

Permissions needed by the deployed application itself

Parameters​

accountId​

string

the account

region​

string

the region

Returns​

any[]

the policy statements

Inherited from​

AWSDeployer.getARNPolicy


getAWSIdentity()​

getAWSIdentity(): Promise<GetCallerIdentityResponse>

Defined in: aws/src/deployers/awsdeployer.ts:206

Return the current AWS Identity used

Returns​

Promise<GetCallerIdentityResponse>

the identity

Inherited from​

AWSDeployer.getAWSIdentity


getCapabilities()​

getCapabilities(): Record<string, any>

Defined in: core/lib/services/iservice.d.ts:61

Return the capabilities of this service.

By default returns capabilities detected at compile-time from

Returns​

Record<string, any>

the result

Webda Capability-tagged​

interfaces in webda.module.json.

Override to disable capabilities based on configuration:

getCapabilities() {
const caps = super.getCapabilities();
if (!this.parameters.enabled) delete caps["request-filter"];
return caps;
}

Inherited from​

AWSDeployer.getCapabilities


getCertificate()​

getCertificate(domain, region?): Promise<any>

Defined in: aws/src/deployers/awsdeployer.ts:282

Get a certificate or create it

Parameters​

domain​

string

to get certificate for

region?​

string = undefined

of the certificate

Returns​

Promise<any>

the certificate

Inherited from​

AWSDeployer.getCertificate


getClientConfig()​

getClientConfig(endpoint?, region?): any

Defined in: aws/src/deployers/awsdeployer.ts:176

Configuration of an AWS client

Parameters​

endpoint?​

AWSDeployerEndpoint

the client, to use its custom endpoint

region?​

string

force a region

Returns​

any

the client configuration

Inherited from​

AWSDeployer.getClientConfig


getClientEvents()​

getClientEvents(): string[]

Defined in: core/lib/services/service.d.ts:144

Return the events that an external system can subscribe to

Returns​

string[]

the list of results

Inherited from​

AWSDeployer.getClientEvents


getCloudFormation()​

protected getCloudFormation(): CloudFormation

Defined in: aws/src/deployers/cloudformation.service.ts:581

CloudFormation client

Returns​

CloudFormation

the client


getDefaultTags()​

getDefaultTags(key?): object[]

Defined in: aws/src/deployers/awsdeployer.ts:356

Take this.resources[key].Tags and add all remaining Tags from this.resources.Tags

Parameters​

key?​

string | TagsDefinition

of the resources to add, or the tags themselves

Returns​

object[]

the tags array

Inherited from​

AWSDeployer.getDefaultTags


getDefaultTagsAsMap()​

getDefaultTagsAsMap(key?): object

Defined in: aws/src/deployers/awsdeployer.ts:377

Take this.resources[key].Tags and add all remaining Tags from this.resources.Tags

Parameters​

key?​

string | TagsDefinition

of the resources to add

Returns​

object

the tags map

Inherited from​

AWSDeployer.getDefaultTagsAsMap


getDefaultTagsAsS3Tagging()​

getDefaultTagsAsS3Tagging(key?): string

Defined in: aws/src/deployers/awsdeployer.ts:388

Return the S3 Tagging string

Parameters​

key?​

string | TagsDefinition

of the resources to add

Returns​

string

the url encoded tags

Inherited from​

AWSDeployer.getDefaultTagsAsS3Tagging


getDefaultVpc()​

getDefaultVpc(): Promise<{ Id: string; Subnets: any[]; }>

Defined in: aws/src/deployers/awsdeployer.ts:216

Return the default VPC for the current region

Returns​

Promise<{ Id: string; Subnets: any[]; }>

the VPC id and its subnets, undefined if there is no default VPC

Inherited from​

AWSDeployer.getDefaultVpc


getMaxListeners()​

getMaxListeners(): number

Defined in: core/lib/events/asynceventemitter.d.ts:84

Returns​

number

Inherited from​

AWSDeployer.getMaxListeners


getMetric()​

getMetric<T>(type, configuration): T

Defined in: core/lib/services/service.d.ts:138

Add service name label

Type Parameters​

T​

T = Gauge<string> | Counter<string> | Histogram<string>

Parameters​

type​

CustomConstructor<T, [MetricConfiguration<T>]>

the type to look up

configuration​

MetricConfiguration<T>

the configuration

Returns​

T

the result

Inherited from​

AWSDeployer.getMetric


getName()​

getName(): string

Defined in: core/lib/services/service.d.ts:209

Get service name

Returns​

string

the result string

Inherited from​

AWSDeployer.getName


getOpenApiReplacements()​

getOpenApiReplacements(): any

Defined in: core/lib/services/service.d.ts:182

Return variables for replacement in openapi

Returns​

any

the result

Inherited from​

AWSDeployer.getOpenApiReplacements


getOperationId()​

getOperationId(id): string

Defined in: core/lib/services/service.d.ts:167

If undefined is returned it cancel the operation registration

Parameters​

id​

string

the identifier

Returns​

string

the result

Inherited from​

AWSDeployer.getOperationId


getParameters()​

getParameters(): T

Defined in: core/lib/services/service.d.ts:82

Get the service parameters

Returns​

T

the result

Inherited from​

AWSDeployer.getParameters


getPolicyDocument()​

getPolicyDocument(additionalStatements?): Promise<any>

Defined in: aws/src/deployers/awsdeployer.ts:560

Generate the PolicyDocument

It will browse all services for a method getARNPolicy Allowing you to write some specific Service or Bean that requires specific AWS permissions

Parameters​

additionalStatements?​

any[] = []

statements to add

Returns​

Promise<any>

the optimized policy document

Inherited from​

AWSDeployer.getPolicyDocument


getRawParameters()​

protected getRawParameters(): any

Defined in: aws/src/deployers/awsdeployer.ts:151

Parameters as a plain object

Returns​

any

a copy of the parameters

Inherited from​

AWSDeployer.getRawParameters


getRegion()​

getRegion(): string

Defined in: aws/src/deployers/awsdeployer.ts:197

Return AWS region

Returns​

string

the region

Inherited from​

AWSDeployer.getRegion


getS3()​

protected getS3(): S3

Defined in: aws/src/deployers/awsdeployer.ts:631

S3 client

Returns​

S3

the client

Inherited from​

AWSDeployer.getS3


getService()​

getService<T>(name): ServicesMap[T]

Defined in: core/lib/services/service.d.ts:131

Get a service by name

Type Parameters​

T​

T extends keyof ServicesMap

Parameters​

name​

T

the name to use

Returns​

ServicesMap[T]

the result map

Deprecated​

Use useService, might reconsider

Inherited from​

AWSDeployer.getService


getState()​

getState(): ServiceStates

Defined in: core/lib/services/service.d.ts:55

Get the current state

Returns​

ServiceStates

the result

Inherited from​

AWSDeployer.getState


getStringified()​

getStringified(object, filename, addPrefix?): object

Defined in: aws/src/deployers/cloudformation.service.ts:926

Serialize an object for the AssetsBucket

Parameters​

object​

any

to serialize

filename​

string

name of the file, its extension forces the format

addPrefix?​

boolean = true

add the AssetsPrefix

Returns​

object

the key and content

key​

key: string

src​

src: Buffer


getUrl()​

getUrl(url, _methods): string

Defined in: core/lib/services/service.d.ts:161

Return the full path url based on parameters

Parameters​

url​

string

relative url to service

_methods​

HttpMethodType[]

in case we need filtering (like Store)

Returns​

string

absolute url or undefined if need to skip the Route

Inherited from​

AWSDeployer.getUrl


getZoneForDomainName()​

getZoneForDomainName(domain): Promise<HostedZone>

Defined in: aws/src/deployers/awsdeployer.ts:314

Get the closest zone to the domain

Parameters​

domain​

string

to get zone for

Returns​

Promise<HostedZone>

the zone

Inherited from​

AWSDeployer.getZoneForDomainName


hash()​

protected hash(str, type?, format?): string

Defined in: aws/src/deployers/awsdeployer.ts:261

Hash the string

Parameters​

str​

string | Buffer<ArrayBufferLike>

to hash

type?​

string = "md5"

of hash

format?​

"hex" | "base64"

hex or b64

Returns​

string

the hash

Inherited from​

AWSDeployer.hash


importOpenApi()​

importOpenApi(openapi): Promise<void>

Defined in: aws/src/deployers/cloudformation.service.ts:649

Import the OpenAPI definition into an existing REST API

Parameters​

openapi​

any

the definition

Returns​

Promise<void>


init()​

abstract init(): Promise<CloudFormationDeployer<T>>

Defined in: core/lib/services/service.d.ts:198

Will be called after all the Services are created

Returns​

Promise<CloudFormationDeployer<T>>

Inherited from​

AWSDeployer.init


initMetrics()​

initMetrics(): void

Defined in: core/lib/services/service.d.ts:124

Init the metrics

Returns​

void

Inherited from​

AWSDeployer.initMetrics


initOperations()​

initOperations(): void

Defined in: core/lib/services/service.d.ts:186

Init the operations from

Returns​

void

Operation​

decorators on this service

Inherited from​

AWSDeployer.initOperations


Lambda()​

Lambda(): Promise<void>

Defined in: aws/src/deployers/cloudformation.service.ts:1098

Package the application and add the Lambda function

Returns​

Promise<void>


listeners()​

listeners(eventName): Function[]

Defined in: core/lib/events/asynceventemitter.d.ts:139

Get all listeners for an event

Parameters​

eventName​

never

the event name

Returns​

Function[]

the list of results

Inherited from​

AWSDeployer.listeners


loadCapabilities()​

protected loadCapabilities(): void

Defined in: core/lib/services/service.d.ts:120

Load capabilities from webda.module.json metadata into _compiledCapabilities.

Called during resolve after dependency injection. Reads the service's type name from parameters, looks it up in the application's module metadata (moddas or beans section), and populates _compiledCapabilities with an empty object for each declared capability name.

Fails silently if the application is not available (e.g., in unit tests where services are instantiated without a full application context).

Returns​

void

Example​

// If webda.module.json contains:
// { "moddas": { "MyApp/HawkService": { "capabilities": ["request-filter", "cors-filter"] } } }
// Then after resolve(), this.getCapabilities() returns:
// { "request-filter": {}, "cors-filter": {} }

See​

getCapabilities

Inherited from​

AWSDeployer.loadCapabilities


log()​

log(level, ...args): void

Defined in: core/lib/services/service.d.ts:226

Parameters​

level​

WorkerLogLevel

to log

args​

...any[]

additional arguments

Returns​

void

Inherited from​

AWSDeployer.log


md5()​

protected md5(str): string

Defined in: aws/src/deployers/awsdeployer.ts:249

Generate a MD5 in hex

Parameters​

str​

string

to hash

Returns​

string

the hash

Inherited from​

AWSDeployer.md5


off()​

off<Key>(eventName, listener): this

Defined in: core/lib/events/asynceventemitter.d.ts:116

Type Parameters​

Key​

Key extends never

Parameters​

eventName​

Key

the event name

listener​

(event) => void

the event listener

Returns​

this

this for chaining

See​

EventEmitter.off

Inherited from​

AWSDeployer.off


on()​

on<Key>(eventName, listener): this

Defined in: core/lib/events/asynceventemitter.d.ts:102

Type Parameters​

Key​

Key extends never

Parameters​

eventName​

Key

the event name

listener​

(event) => void

the event listener

Returns​

this

this for chaining

See​

EventEmitter.once

Inherited from​

AWSDeployer.on


once()​

once<Key>(eventName, listener): this

Defined in: core/lib/events/asynceventemitter.d.ts:95

Type Parameters​

Key​

Key extends never

Parameters​

eventName​

Key

the event name

listener​

(event) => void

the event listener

Returns​

this

this for chaining

See​

EventEmitter.once

Inherited from​

AWSDeployer.once


Policy()​

Policy(): Promise<void>

Defined in: aws/src/deployers/cloudformation.service.ts:1059

Add the IAM policy of the application

Returns​

Promise<void>


prepare()​

prepare(extra?): Promise<DeployerResources<T> & object>

Defined in: aws/src/deployers/awsdeployer.ts:135

Compute the resources from the parameters

Parameters​

extra?​

Record<string, any> = {}

additional deployment variables

Returns​

Promise<DeployerResources<T> & object>

the resources

Inherited from​

AWSDeployer.prepare


putFilesOnBucket()​

putFilesOnBucket(bucket, files): Promise<void>

Defined in: aws/src/deployers/awsdeployer.ts:694

Add files to a bucket

It uses hash and ETag to avoid uploading files already present

The files src can be either:

  • a string representing the local path
  • a Buffer with the dynamic content

Parameters​

bucket​

string

to send bucket

files​

object[]

to send

Returns​

Promise<void>

Inherited from​

AWSDeployer.putFilesOnBucket


putFolderOnBucket()​

putFolderOnBucket(bucket, folder, prefix?): Promise<void>

Defined in: aws/src/deployers/awsdeployer.ts:645

Send a full folder (recursive) on bucket

Parameters​

bucket​

string

to send data to

folder​

string

path to local folder to send

prefix?​

string = ""

prefix on the bucket

Returns​

Promise<void>

Inherited from​

AWSDeployer.putFolderOnBucket


removeAllListeners()​

removeAllListeners<Key>(eventName?): this

Defined in: core/lib/events/asynceventemitter.d.ts:122

Type Parameters​

Key​

Key extends never

Parameters​

eventName?​

Key

the event name

Returns​

this

this for chaining

See​

EventEmitter.removeAllListeners

Inherited from​

AWSDeployer.removeAllListeners


removeListener()​

removeListener<Key>(eventName, listener): this

Defined in: core/lib/events/asynceventemitter.d.ts:109

Type Parameters​

Key​

Key extends never

Parameters​

eventName​

Key

the event name

listener​

(event) => void

the event listener

Returns​

this

this for chaining

See​

EventEmitter.removeListener

Inherited from​

AWSDeployer.removeListener


resolve()​

resolve(): this

Defined in: core/lib/services/service.d.ts:98

Resolve parameters and load metadata. @Route-declared routes are scanned and registered by Router.discoverRoutes(services) from Core.init() once every service has resolved — nothing to do per-service here.

Returns​

this

the result

Inherited from​

AWSDeployer.resolve


Resources()​

Resources(): Promise<void>

Defined in: aws/src/deployers/cloudformation.service.ts:879

Add the CloudFormation contributions of the application services

Returns​

Promise<void>


Role()​

Role(): Promise<void>

Defined in: aws/src/deployers/cloudformation.service.ts:1085

Add the IAM role of the application

Returns​

Promise<void>


sendCloudFormationTemplate()​

sendCloudFormationTemplate(): Promise<void>

Defined in: aws/src/deployers/cloudformation.service.ts:567

Copy the CloudFormation template to the Assets bucket

Returns​

Promise<void>


setMaxListeners()​

setMaxListeners(n): this

Defined in: core/lib/events/asynceventemitter.d.ts:88

Parameters​

n​

number

Returns​

this

Inherited from​

AWSDeployer.setMaxListeners


sleep()​

sleep(sec): Promise<void>

Defined in: aws/src/deployers/cloudformation.service.ts:872

Pause for x seconds

Parameters​

sec​

number

seconds to wait

Returns​

Promise<void>


stop()​

stop(): Promise<void>

Defined in: core/lib/services/service.d.ts:86

Shutdown the current service if action need to be taken

Returns​

Promise<void>

Inherited from​

AWSDeployer.stop


toJSON()​

toJSON(): string

Defined in: core/lib/services/service.d.ts:191

Prevent service to be serialized

Returns​

string

the result

Inherited from​

AWSDeployer.toJSON


toString()​

toString(): string

Defined in: core/lib/services/service.d.ts:91

Return service representation

Returns​

string

the result

Inherited from​

AWSDeployer.toString


transformArrayTagsToMap()​

transformArrayTagsToMap(tags): object

Defined in: aws/src/deployers/awsdeployer.ts:341

Transform a tag array into a tag map

Parameters​

tags​

TagsDefinition

to transform

Returns​

object

the tags map

Inherited from​

AWSDeployer.transformArrayTagsToMap


transformMapTagsToArray()​

transformMapTagsToArray(tags): object[]

Defined in: aws/src/deployers/awsdeployer.ts:324

Transform a tag map into a tag array

Parameters​

tags​

TagsDefinition

to transform

Returns​

object[]

the tags array

Inherited from​

AWSDeployer.transformMapTagsToArray


uploadStatics()​

uploadStatics(): Promise<void>

Defined in: aws/src/deployers/cloudformation.service.ts:518

Upload any asset to bucket

Returns​

Promise<void>


waitFor()​

waitFor(callback, retries, title, delay): Promise<any>

Defined in: aws/src/deployers/awsdeployer.ts:403

Wait for a condition with a linear delay

Parameters​

callback​

(resolve?, reject?) => Promise<boolean>

resolve when done, return true to stop

retries​

number

maximum number of tries

title​

string

of the wait

delay​

number

between tries in ms

Returns​

Promise<any>

the resolved value

Inherited from​

AWSDeployer.waitFor