代码之家  ›  专栏  ›  技术社区  ›  Daisuke

代码构建是成功的,但Jenkins不会停止

  •  0
  • Daisuke  · 技术社区  · 1 年前

    我在詹金斯有这样的管道。

    我可以从Jenkins开始Codebuild,但Jenkins没有抓住Codebuild的退出,这是一个问题。

    如果你知道这个问题的原因,你能告诉我吗?

    管道

    pipeline {
        agent any
        stages {
            stage("Codebuild start") {
                steps {
                    withAWS(region:'ap-northeast-1', credentials:'AWS_CREDENTIAL_KEY')
                    {
                        awsCodeBuild(
                            projectName: 'ProjectName',
                            region: 'ap-northeast-1',
                            credentialsType: 'keys',
                            sourceControlType: 'jenkins'
                        )
                    }
                }
            }
        }
    }
    

    国际机械师协会

    以下IAM角色被授予运行代码构建的用户。

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "s3:ListAllMyBuckets",
                    "s3:ListBucket",
                    "s3:GetObject",
                    "s3:PutObject",
                    "s3:DeleteObject",
                    "s3:GetBucketVersioning"
                ],
                "Resource": "*"
            },
            {
                "Effect": "Allow",
                "Action": [
                    "codebuild:StartBuild",
                    "codebuild:BatchGetBuilds",
                    "codebuild:BatchGetProjects"
                ],
                "Resource": "*"
            },
            {
                "Effect": "Allow", 
                "Action": [
                    "logs:GetLogEvents"
                ],
                "Resource": "*"
            }
        ]
    }
    

    环境

    • Jenkins是由Docker在AWS EC2上启动的。
    • 安全组也设置正确,您可以在GUI的基础上运行jenkins。
    • AWS Steps插件和Codebuild插件安装在Jenkins中。

    非常感谢。

    • 将日志记录角色授予IAM用户。
    • 将IAM角色的日志事件资源缩小到特定的资源。
    0 回复  |  直到 1 年前