I am trying to run codebuild according to this CFT but getting this error message while building. The codebuild is simple..reading the source from codecommit and build and store it in S3 bucket Can anybody point out what is the issue
Error Message:
[Container] 2024/02/29 17:32:12.865253 Waiting for agent ping
[Container] 2024/02/29 17:32:15.073019 Waiting for DOWNLOAD_SOURCE
[Container] 2024/02/29 17:32:19.478936 Phase is DOWNLOAD_SOURCE
[Container] 2024/02/29 17:32:19.481311 CODEBUILD_SRC_DIR=/codebuild/output/src1892399736/src/git-codecommit.us-east-1.amazonaws.com/v1/repos/spring-petclinic
[Container] 2024/02/29 17:32:19.481832 YAML location is /codebuild/output/src1892399736/src/git-codecommit.us-east-1.amazonaws.com/v1/repos/spring-petclinic/buildspec.yaml
[Container] 2024/02/29 17:32:19.485543 Phase complete: DOWNLOAD_SOURCE State: FAILED
[Container] 2024/02/29 17:32:19.485556 Phase context status code: YAML_FILE_ERROR Message: wrong number of container tags, expected 1
My buildspec.yaml file
======================================
:
AWSTemplateFormatVersion: 2010-09-09
Description: Create CodeBuild Stack Template
Parameters:
ApplicationRepoName:
Type: String
Description: Name of the repo which contains Rest Application.
Default: spring-petclinic
ArtifactStoreS3Location:
Type: String
Description: Name of the S3 bucket to store CodePipeline artificat.
Default: rest-apps-cbd
Resources:
CodeBuildRole:
Type: "AWS::IAM::Role"
Properties:
RoleName:
Fn::Sub: CodeBuildRole-${AWS::StackName}
AssumeRolePolicyDocument:
Version: "2012-10-17"
Statement:
- Effect: "Allow"
Principal:
Service:
- "codebuild.amazonaws.com"
Action:
- "sts:AssumeRole"
Path: /service-role/
Policies:
- PolicyName: "CodeBuildCICDAccessPolicy"
PolicyDocument:
Version: "2012-10-17"
Statement:
- Effect: "Allow"
Action:
- "codecommit:GitPull"
Resource:
- Fn::Sub: arn:aws:codecommit:${AWS::Region}:${AWS::AccountId}:${ApplicationRepoName}
- Effect: "Allow"
Action:
- "logs:CreateLogGroup"
- "logs:CreateLogStream"
- "logs:PutLogEvents"
Resource:
- Fn::Sub: arn:aws:logs:${AWS::Region}:${AWS::AccountId}:log-group:/aws/codebuild/*
- Effect: "Allow"
Action:
- "s3:PutObject"
- "s3:GetObject"
- "s3:GetObjectVersion"
- "s3:ListBucket"
Resource:
- Fn::Sub: arn:aws:s3:::codepipeline-${AWS::Region}-*
- Fn::Sub: arn:aws:s3:::${ArtifactStoreS3Location}/*
- Fn::Sub: arn:aws:s3:::${ArtifactStoreS3Location}
BuildRestAppCFNProject:
Type: AWS::CodeBuild::Project
Properties:
Name: !Sub BuildRestAppCFN-${AWS::StackName}
Description: Build war file for rest application
ServiceRole: !GetAtt [ CodeBuildRole, Arn ]
Artifacts:
Type: S3
Location: !Ref ArtifactStoreS3Location
Name: !Sub BuildRestAppCFN-${AWS::StackName}
Environment:
Type: LINUX_CONTAINER
ComputeType: BUILD_GENERAL1_SMALL
Image: aws/codebuild/standard:2.0
Source:
Location: !Sub https://git-codecommit.us-east-1.amazonaws.com/v1/repos/${ApplicationRepoName}
Type: CODECOMMIT
TimeoutInMinutes: 10
Tags:
- Key: Name
Value: !Sub BuildRestAppCFN-${AWS::StackName}