Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: allow all optional props for the NodejsFunction CDK construct to be passed via defineFunction in @aws-amplify/backend-function #1971

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

ataylorme
Copy link
Contributor

@ataylorme ataylorme commented Sep 6, 2024

Problem

defineFunction does not allow all props available on NodejsFunction

Issue number, if available: #1968

Changes

Validation

I created a unit test that validates the presence of AWS::Lambda::EventInvokeConfig with MaximumRetryAttempts in the generated CloudFormation when retryAttempts is passed as a prop to defineFunction

Checklist

  • If this PR includes a functional change to the runtime behavior of the code, I have added or updated automated test coverage for this change.
  • If this PR requires a change to the Project Architecture README, I have included that update in this PR.
  • If this PR requires a docs update, I have linked to that docs PR above.
  • If this PR modifies E2E tests, makes changes to resource provisioning, or makes SDK calls, I have run the PR checks with the run-e2e label set.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@ataylorme ataylorme requested a review from a team as a code owner September 6, 2024 19:10
Copy link

changeset-bot bot commented Sep 6, 2024

🦋 Changeset detected

Latest commit: 1fab1ab

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@aws-amplify/backend-function Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@ataylorme ataylorme changed the title Feat/allow optional props for nodejs function to be passed to define function Feature: allow all optional props for the NodejsFunction CDK construct to be passed via defineFunction in @aws-amplify/backend-function Sep 6, 2024
@ataylorme ataylorme mentioned this pull request Nov 26, 2024
4 tasks
@josefaidt
Copy link
Contributor

Hey @ataylorme 👋 thanks for taking the time to file this and your interest in contributing! A few of these properties will require values that rely on CDK scope like VPC configuration, or enums that must be imported from CDK. Are there any particular properties you're interested in?

@ataylorme
Copy link
Contributor Author

ataylorme commented Nov 26, 2024

@josefaidt the ones I am personally interested in are the log related options (systemLogLevelV2, logRetention, logGroup, etc.), maxEventAge and retryAttempts.

Other users will have other needs, which is why I made the PR to support all options.

A few of these properties will require values that rely on CDK scope like VPC configuration, or enums that must be imported from CDK

In this case it would be up to the user to import those types/values and pass valid parameters that satisfy CDKNodejsFunctionProps

@josefaidt
Copy link
Contributor

Hey @ataylorme thanks for the clarification! Coincidentally enough we have a PR filed for exposing function logging props #2245

We'll work to evaluate exposing other NodejsFunctionProps in the meantime 🙂

@ataylorme
Copy link
Contributor Author

Oh nice! I have been manually provisioning a log group in CDK with retention settings to match the Lambda names. That PR will make it much simpler.

@ataylorme ataylorme mentioned this pull request Nov 27, 2024
4 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants