
Я настроил конвейер cicd на aws, используя jenkins. Я написал очень маленькое приложение, которое обслуживает только файл stati c index. html file. Он работает полностью, но ломается на самом последнем этапе codedeploy. проблема в том, что когда я запускаю codedeploy из jenkins, используя проект aws codedeploy, это приводит к сбою развертывания на экземплярах ec2. Журнал Jenkins не выдает достаточно информации для его отладки. Некоторые моменты, о которых мне следует знать -
- Я использую развертывание конфигурации развертывания по одному за раз
- Я не установил aws агент codedeploy на экземплярах ec2
- где я могу получить подробный журнал о том, где он не работает? В этом случае cloudwatch не регистрирует журнал codedeploy.
Журналы ошибок -
HttpMethod: GET
URL: https://aws-devops-jenkins-docker.s3.amazonaws.com/aws_docker_codebuild_jenkins
Sending request to url: https://aws-devops-jenkins-docker.s3.amazonaws.com/aws_docker_codebuild_jenkins
Response Code: HTTP/1.1 200 OK
Success code from [100‥399]
Saving response body to /var/lib/jenkins/workspace/aws_docker_demo/aws-codebuild-artifact.zip
Zipping files into /tmp/#61-6687599754523764921.zip
Uploading zip to s3://aws-devops-jenkins-docker/#61-6687599754523764921.zip
Registering revision for application 'aws_docker_codedeploy_jenkins'
Creating deployment with revision at {RevisionType: S3,S3Location: {Bucket: aws-devops-jenkins-docker,Key: #61-6687599754523764921.zip,BundleType: zip,ETag: 86c6ace4adeaa41f5206ca96c6ff6637},}
Monitoring deployment with ID d-V1R54BRY1...
Deployment status: Created; instances: null
Deployment status: Created; instances: null
Deployment status: InProgress; instances: {Pending: 2,InProgress: 0,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 2,InProgress: 0,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 2,InProgress: 0,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 2,InProgress: 0,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 1,InProgress: 1,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 1,InProgress: 1,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 1,InProgress: 1,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 1,InProgress: 1,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 1,InProgress: 1,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 1,InProgress: 1,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 1,InProgress: 1,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 1,InProgress: 1,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 1,InProgress: 1,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 1,InProgress: 1,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 1,InProgress: 1,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 1,InProgress: 1,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 1,InProgress: 1,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 1,InProgress: 1,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 1,InProgress: 1,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: InProgress; instances: {Pending: 1,InProgress: 1,Succeeded: 0,Failed: 0,Skipped: 0,Ready: 0}
Deployment status: Failed; instances: {Pending: 0,InProgress: 0,Succeeded: 0,Failed: 1,Skipped: 1,Ready: 0}
Deployment did not succeed. Final status: Failed
ERROR: Step ‘Deploy an application to AWS CodeDeploy’ failed: null
Finished: FAILURE
Buildspe c .yml
version: 0.2
phases:
install:
runtime-versions:
nodejs: 10
commands:
- echo "installing nodejs"
pre_build:
commands:
- printenv
- echo "we are in the pre build phase"
build:
commands:
- echo "we are in the build block"
- echo "running test ...."
- grep -Fq "cloud" index.html
post_build:
commands:
- echo "we are in the post build phase"
artifacts:
files:
- '**/*'
name: aws_devops_poc_mywebb_artifacts
appspe c .yml
version: 0.0
os: linux
files:
- source: /index.html
destination: /var/www/html/
Hooks:
ApplicationStop:
- location: scripts/stop_server.sh
timeout: 300
runas: root
AfterInstall:
- location: scripts/after_install.sh
timeout: 300
runas: root
BeforeInstall:
- location: scripts/install_dependencies.sh
timeout: 300
runas: root
ApplicationStart:
- scripts/start_server.sh
timeout: 300
runas: root
ValidateService:
- location: scripts/validate_service.sh
timeout: 300
stop_server и start_server Сценарии предназначены только для запуска остановки службы httpd.
validate_service скрипт только проверяет, содержит ли html слово "мир".
install_dependencies скрипт только устанавливает службу httpd
Я очень новичок в aws devops. Любая помощь высоко ценится.