Развертывание / публикация нескольких лямбда-проектов без сервера за один раз - PullRequest
1 голос
/ 03 апреля 2019

У меня есть файл решения VS и несколько лямбда-проектов в нем.Чтобы развернуть / опубликовать мою лямбду в AWS, мне нужно перейти к отдельному проекту, и мне нужно щелкнуть правой кнопкой мыши, а затем нажать «Опубликовать в AWS Lambda».У меня есть 10+ лямбда-проектов в моем решении, и мне нужно делать это упражнение повторно.

Есть ли какое-либо решение для развертывания всей этой лямбда-функции одним щелчком мыши?

1 Ответ

0 голосов
/ 04 апреля 2019

Вы сможете использовать инструменты AWS PowerShell , чтобы создать быстрый скрипт для публикации ваших функций за один запуск

Этих двух функций Публикация и Обновление должно хватить.

Вот пример сценария PowerShell для публикации одной лямбды

$zipFile = "E:\my-awesome-function\release.zip"
$zipFileItem = Get-Item -Path $zipFile
$fileStream = $zipFileItem.OpenRead()
$memoryStream = New-Object System.IO.MemoryStream
$fileStream.CopyTo($memoryStream)   

//Check if function exists
$cmdOutput = Get-LMFunction -FunctionName my-awesome-function;

try{
    if($?) {
        "Function exists update the code"               
        Update-LMFunctionCode -FunctionName my-awesome-function -ZipFile $memoryStream -Publish 1

    } else {
        "Publish new function"           
        Publish-LMFunction -FunctionName my-awesome-function -FunctionZip $zipFilePath -Handler exports.handler -Role arn:aws:iam::0000000:role/my-extract -Region us-east-1 --Runtime python3.6
    }
}
finally {
    $fileStream.Close()
}
...