Skip to content

(core): Docker stdout is not printed on error during bundling #20892

Open
@indrora

Description

@indrora

Describe the bug

In quite a few different scenarios, Docker errors simply happen and "Docker returned 1" gets spat out.

I suspect Docker is writing to stderr but it is getting squashed somewhere.

Expected Behavior

Docker outputs (both stdout and stderr are preserved)

Current Behavior

Docker's error status isn't printed

Reproduction Steps

  • Run cdk synth on a stack that requires docker, but without permissions to talk to Docker's control plane
  • watch as it crashes and burns:
39907defbe84: Pull complete
8f7631647f07: Pull complete
d83e11d24ec9: Pull complete
b09b92bf5cf8: Pull complete
[WARNING] 
software.amazon.jsii.JsiiException: docker exited with status 1
Error: docker exited with status 1
    at dockerExec (/tmp/jsii-kernel-ENBrAx/node_modules/@aws-cdk/core/lib/bundling.js:355:15)
    at Function.fromBuild (/tmp/jsii-kernel-ENBrAx/node_modules/@aws-cdk/core/lib/bundling.js:243:9)
    at new Bundling (/tmp/jsii-kernel-ENBrAx/node_modules/@aws-cdk/aws-lambda-python/lib/bundling.js:28:86)
    at Function.bundle (/tmp/jsii-kernel-ENBrAx/node_modules/@aws-cdk/aws-lambda-python/lib/bundling.js:43:50)
    at new PythonFunction (/tmp/jsii-kernel-ENBrAx/node_modules/@aws-cdk/aws-lambda-python/lib/function.js:43:39)

The error that is being quashed here was Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/images/create?fromImage=public.ecr.aws%2Fsam%2Fbuild-python3.7&tag=latest": dial unix /var/run/docker.sock: connect: permission denied

Metadata

Metadata

Assignees

No one assigned

    Labels

    @aws-cdk/assetsRelated to the @aws-cdk/assets packagebugThis issue is a bug.effort/smallSmall work item – less than a day of effortgood first issueRelated to contributions. See CONTRIBUTING.mdp2package/toolsRelated to AWS CDK Tools or CLI

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions