AWS Cloud Development Kit (CDK) is an Infrastructure-as-Code (IaC) system developed by Amazon Web Services that builds on top of CloudFormation.
See the PRs here.
Docker Ignore Features
CDK had a built-in support for processing
.dockerignore files for its Docker Image asset handling, but instead of processing it according to
.dockerignore’s own rules, it processed them using the minimatch library which aims to provide
fnmatch(3) pattern matching behavior. This led to certain behaviors commonly found in
.dockerignore files were not supported, such as writing it as a white-list. More confusingly, no error would be emitted, rather the rules would be processed in an unexpected way that would confuse the user.
To resolve this, I implemented support for native handling of
.dockerignore according to Docker’s rules and also implemented support for native handling of
.gitignore which is much more common.
See the PR.
Allow Configuring WorkDir
AWS Lambda resources defined with CDK had no way of overriding the
WorkDir CloudFormation property which allows overriding the working directory for a specified Docker image. I went ahead and exposed this property.
See the PR.