Я настроил AWS CodePipeline, который использует github в качестве источника, CodeBuild для сборки и развертывается на ElasticBeanstalk.
Мне удалось заставить его работать, когда все было настроено в консоли, и я был администратором учетной записи github (я использовал другую учетную запись для тестирования)
Фактический код, который мне нужно развернуть, принадлежит учетной записи, в которой я не являюсь администратором, поэтому следуйте это руководство Я получил токен личного доступа и обновил CodePipeline с помощью интерфейса командной строки.
Как только я обновил проект с помощью cli, он больше не запускается, когда код фиксируется.
Я не уверен, что изменилось, потому что это все еще не работает, даже когда я использую консоль и настраиваю веб-перехватчик напрямую как администратор учетной записи github, с которой я тестировал.
Это json, с помощью которого я обновил конвейер:
{
"pipeline": {
"roleArn": "arn:aws:iam::xxxxxxx:role/service-role/AWSCodePipelineServiceRole-us-west-2-xxxxx-xxxx",
"stages": [
{
"name": "Source",
"actions": [
{
"inputArtifacts": [],
"name": "Source",
"actionTypeId": {
"category": "Source",
"owner": "ThirdParty",
"version": "1",
"provider": "GitHub"
},
"outputArtifacts": [
{
"name": "SourceArtifact"
}
],
"configuration": {
"Owner": "xxx",
"Repo": "xxx",
"PollForSourceChanges": "false",
"Branch": "stage"
},
"runOrder": 1
}
]
},
{
"name": "Build",
"actions": [
{
"inputArtifacts": [
{
"name": "SourceArtifact"
}
],
"name": "Build",
"actionTypeId": {
"category": "Build",
"owner": "AWS",
"version": "1",
"provider": "CodeBuild"
},
"outputArtifacts": [
{
"name": "BuildArtifact"
}
],
"configuration": {
"ProjectName": "xxx-stage-codebuild"
},
"runOrder": 1
}
]
},
{
"name": "Deploy",
"actions": [
{
"inputArtifacts": [
{
"name": "BuildArtifact"
}
],
"name": "Deploy",
"actionTypeId": {
"category": "Deploy",
"owner": "AWS",
"version": "1",
"provider": "ElasticBeanstalk"
},
"outputArtifacts": [],
"configuration": {
"ApplicationName": "xxx",
"EnvironmentName": "xxx-stage"
},
"runOrder": 1
}
]
}
],
"artifactStore": {
"type": "S3",
"location": "xxx-artifacts-stage"
},
"name": "xxx-stage",
"version": 15
}
}