terraform-aws-modules/terraform-aws-lambda

Plan-time validation that `runtime` is available

lorengordon opened this issue · 2 comments

Description

This module by default requires that the specified runtime be available in order to build the package (at least, for python requirements). When the runtime is not available, you get the error:

FileNotFoundError: [Errno 2] No such file or directory: 'python3.8'

However, that error only happens during the apply phase. The plan is still generated perfectly fine. That gets frustrating in a CICD workflow, where the changeset is merged on a valid plan, and then the pipeline runs the apply and fails. Now you have to go back and modify the pipeline to make sure the (new) runtime is available after the code is merged (and the pipeline is now broken).

  • I have searched the open/closed issues and my issue is not listed.

Versions

  • Module version [Required]: 4.1.1

I think I see where to inject an appropriate check. Testing now...

I'm going to lock this issue because it has been closed for 30 days . This helps our maintainers find and focus on the active issues. If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.