in src/tasks/LambdaDeployFunction/TaskOperations.ts [25:55]
public async execute(): Promise<void> {
let functionArn: string
const functionExists = await this.testFunctionExists(this.taskParameters.functionName)
switch (this.taskParameters.deploymentMode) {
case deployCodeOnly:
if (functionExists) {
functionArn = await this.updateFunctionCode()
} else {
throw new Error(tl.loc('FunctionNotFound', this.taskParameters.functionName))
}
break
case deployCodeAndConfig:
if (functionExists) {
functionArn = await this.updateFunction()
} else {
functionArn = await this.createFunction()
}
break
default:
throw new Error(`Unrecognized deployment mode ${this.taskParameters.deploymentMode}`)
}
if (this.taskParameters.outputVariable) {
console.log(tl.loc('SettingOutputVariable', this.taskParameters.outputVariable))
tl.setVariable(this.taskParameters.outputVariable, functionArn)
}
console.log(tl.loc('TaskCompleted', this.taskParameters.functionName, functionArn))
}