11import { v4 as uuidv4 } from 'uuid' ;
2+ import CloudFormation from 'aws-sdk/clients/cloudformation' ;
23
34import {
45 SessionProxy ,
56} from './proxy' ;
67import { BaseResourceModel , OperationStatus , Response } from './interface' ;
7- import { KitchenSinkEncoder } from './utils' ;
88
99
1010const LOG = console ;
@@ -25,24 +25,27 @@ export async function reportProgress(options: ProgressOptions): Promise<void> {
2525 resourceModel,
2626 message,
2727 } = options ;
28- const client = session . client ( 'CloudFormation' ) ;
28+ const client : CloudFormation = session . client ( 'CloudFormation' ) as CloudFormation ;
2929
30- const request : { [ key : string ] : any ; } = {
30+ const request : CloudFormation . RecordHandlerProgressInput = {
3131 BearerToken : bearerToken ,
3232 OperationStatus : operationStatus ,
3333 StatusMessage : message ,
3434 ClientRequestToken : uuidv4 ( ) ,
35- } ;
35+ } as CloudFormation . RecordHandlerProgressInput ;
3636 if ( resourceModel ) {
3737 request . ResourceModel = JSON . stringify ( resourceModel ) ;
3838 }
3939 if ( errorCode ) {
4040 request . ErrorCode = errorCode ;
4141 }
4242 if ( currentOperationStatus ) {
43- request [ 'CurrentOperationStatus' ] = currentOperationStatus ;
44- const response : { [ key : string ] : any ; } = await client . makeRequest ( 'recordHandlerProgress' , request ) . promise ( )
45- const requestId = response [ 'ResponseMetadata' ] [ 'RequestId' ] ;
43+ request . CurrentOperationStatus = currentOperationStatus ;
44+ const response : { [ key : string ] : any ; } = await client . recordHandlerProgress ( request ) . promise ( ) ;
45+ let requestId : string = '' ;
46+ if ( response [ 'ResponseMetadata' ] ) {
47+ requestId = response . ResponseMetadata . RequestId ;
48+ }
4649 LOG . info ( `Record Handler Progress with Request Id ${ requestId } and Request: ${ request } ` ) ;
4750 }
4851}
0 commit comments