Использование команд AWS Powershell для проверки состояния создания зависимого ресурса - PullRequest
0 голосов
/ 22 марта 2019

Я создаю сценарий AWS powershell для создания лямбда-функции.Как часть сценария, я сначала создаю нужную настраиваемую политику, создаю роль, присоединяю политики, затем пытаюсь создать функцию лямбда-выражения.Тем не менее, кажется, что происходит задержка в получении полностью созданной роли IAM, и я получаю сообщение об ошибке, если у меня нет оператора sleep.

Я знаю, что в шаблонах облачной информации я потенциально могу использовать атрибут зависимость от.Есть ли что-то, что я могу проверить, чтобы подтвердить статус создания, прежде чем пытаться создать функцию.Вот что я пытаюсь сделать -

New-IAMRole -RoleName "lambdarole" -AssumeRolePolicyDocument $assumerolelambdapolicy #creates role
New-IAMPolicy -PolicyName "policyarn1" -Description "custompolicy" `
                  -PolicyDocument $policyarndocument
$Executionrolepolicies = @("custompolicyarn1", "awsmanagedpolicyarn2", "awsmanagedpolicyarn3") #list of policy arns to be attached to the policy

foreach ($policy in $Executionrolepolicies) {
        Register-IAMRolePolicy -RoleName "lambdarole" -PolicyArn $policy 
    }

Start-Sleep -s 60 #If I don't have this sleep to wait for the role 
#to fully create, then I get the error of "role defined 
#for the function cannot be assumed by lambda"

Publish-LMFunction -FunctionName "Test" `
                -ZipFilename "C:\lambdacode.zip" `
                -Region $region `
                -Role  "arn:aws:iam::1234567890:role/lambdarole" `
                -Handler "lambda_function.lambda_handler" -Runtime "python2.7" `
                -Description "Test function"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...