aws-actions / aws-codebuild-run-build

Run an AWS CodeBuild project as a step in a GitHub Actions workflow job.
https://aws.amazon.com/codebuild
Apache License 2.0
263 stars 139 forks source link

Codebuild not recognizing Docker commands #53

Open twigs67 opened 3 years ago

twigs67 commented 3 years ago

Hello,

Initially, I was receiving an exit error 125, but now I'm receiving an error of 1. Both cases, it seems that CodeBuild isn't recognizing one or more Docker commands or arguments.

This is the current error:


[Container] 2020/08/19 22:15:32 Running command docker build -t $IMAGE_REPO_NAME:$IMAGE_TAG .
--
41 | "docker build" requires exactly 1 argument.
42 | See 'docker build --help'.

My buildspec.yml is straightforward:

version: 0.2

phases:
  pre_build:
    commands:
      - echo Logging in to Amazon ECR...
      - $(aws ecr get-login --no-include-email --region $AWS_DEFAULT_REGION)
  build:
    commands:
      - echo Build started on `date`
      - echo Building the Docker image...
      - docker build -t $IMAGE_REPO_NAME:$IMAGE_TAG .
      - docker tag $IMAGE_REPO_NAME:$IMAGE_TAG $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com/$IMAGE_REPO_NAME:$IMAGE_TAG
  post_build:
    commands:
      - echo Build completed on `date`
      - echo Pushing the Docker image...
      - docker push $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com/$IMAGE_REPO_NAME:$IMAGE_TAG

Image: aws/codebuild/standard:3.0 Privileged: True Environment Type: Linux

Any idea what the issue might be? I couldn't find any mention of this error in the troubleshooting docs

dawood76 commented 3 years ago

@twigs67 did you find any solution, I am getting the same error in the code build.

fearphage commented 2 years ago

"docker build" requires exactly 1 argument

The problem lies in this line:

docker build -t $IMAGE_REPO_NAME:$IMAGE_TAG .

One of those variables has a space in it. You can fix this by quoting them. To replicate this error locally:

docker build -t meh hi-there .

This is not an issue with this action.