2016-09-30 3 views
0

У меня есть приложение php, которое я хочу развернуть в среде эластичного beanstalk с использованием Jenkins. Код находится на git, и я хочу использовать команды eb cli, такие как eb use eb deploy.Развертывание веб-приложения php на эластичном бобовом стебле с использованием Jenkins, git и eb cli

Итак, я не уверен, как это сделать ... как в том, как настроить учетные данные, чтобы я мог запускать команды eb cli с помощью оболочки Jenkins.

Любые мысли о том, как это сделать, были бы очень полезными.

Мой сценарий в настоящее время выглядит немного как этого

git fetch 

git checkout "$GIT_REF" 

git pull origin "$GIT_REF" 

eb use "$CUSTOM_EB_ENV" 

eb deploy 

$ GIT_REF и $ CUSTOM_EB_ENV является переменными, указывающим на мерзавец ветви и среду ElasticBeanstalk имени.

Когда я запускаю работу, я получаю следующую ошибку

+ git fetch 
+ git checkout master 
Previous HEAD position was 36f0456t... f 
Switched to branch 'master' 
Your branch is up-to-date with 'origin/master'. 
+ git pull origin master 
From github.com:something/foo_bar 
* branch   master  -> FETCH_HEAD 
Already up-to-date. 
+ eb use Environment_name 
ERROR: Operation Denied. The security token included in the request is invalid. 
+ eb deploy 
ERROR: This branch does not have a default environment. You must either specify an environment by typing "deploy my-env-name" or set a default environment by typing "eb use my-env-name". 

ответ

1

Для того, чтобы использовать EB CLI в каталоге вы должны сначала запустить eb init, но похоже, что вы уже сделали это.

Проблема, с которой вы сталкиваетесь, связана с отсутствием действительных учетных данных. EB CLI выдает учетные данные так же, как это делает AWS CLI, вы можете найти дополнительную информацию в documentation.

Вам, скорее всего, придется настроить пару учетных данных AWS для вашего сервера jenkins. Один из способов сделать это - создать файл $JENKINS_HOME/.aws/credentials и сохранить ваши учетные данные AWS там.

[default] 
aws_access_key_id = MYAWSACCESSKEY 
aws_secret_access_key = MYAWSSECRETKEY 

С созданным этим файлом EB CLI автоматически выведет учетные данные и выполнит требуемые операции.