Я пытаюсь настроить AWS Codebuild для развертывания приложения в AWS Elastic Beanstalk.
Проблема в том, что кажется, что интерфейс командной строки EB недоступен из AWS CodeBuild (кажется, что так и должно быть, читая это ... https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/eb-cli-codebuild.html)
Поэтому, когда я указываю команду eb cli в CodeBuild:
version: 0.2
phases:
install:
commands:
- echo Logging into Amazon ECR...
- eb init --platform "multi-container-docker-18.03.1-ce-(generic)" --region us-west-1 application
Я получаю:
/codebuild/output/tmp/script.sh: eb: not found
Я также пытался установить CLI с:
- pip install --upgrade awsebcli awscli
- eb init --platform "multi-container-docker-18.03.1-ce-(generic)" --region us-west-1 application
И расширил сгенерированную роль AWS CodeBuild с полным доступом к Elastic Beanstalk
Но я получаю эту ошибку:
ERROR: NotAuthorizedError - Operation Denied. Access Denied
Я добавил в команду флаг --debug
, и это точная ошибка:
2018-09-10 13:33:55,151 (DEBUG) ebcli.lib.aws : Making api call: (elasticbeanstalk, describe_configuration_settings) to region: us-west-1 with args:{'ApplicationName': 'application', 'EnvironmentName': 'staging'}
2018-09-10 13:33:55,495 (DEBUG) ebcli.lib.aws : Response: {'Error': {'Type': 'Sender', 'Code': 'InsufficientPrivilegesException', 'Message': 'Access Denied'}, 'ResponseMetadata': {'RequestId': '32f4e739-1694-4aa2-9e2e-076ec4861ae7', 'HTTPStatusCode': 403, 'date': 'Mon, 10 Sep 2018 13:33:55 GMT', 'RetryAttempts': 0}}
2018-09-10 13:33:55,495 (DEBUG) ebcli.lib.aws : API call finished, status = 403
Я что-то упустил? Как правильно использовать интерфейс командной строки EB из CodeBuild?