We love pull requests. For new features, consider opening an issue to discuss the idea first. When you're ready to open a pull requset, here's a quick guide.
- Fork, clone and branch off:
git clone [email protected]:<your-username>/datadog-lambda-rb.git git checkout -b <my-branch>
- Install the repositories dependencies
bundle install
- Lint and run tests
rubocop ./scripts/run_tests.sh
- Build a testing Lambda layer and publish it to your own AWS account.
# Build layers using docker ./scripts/build_layers.sh # If you want to build a layer for a specific ruby version then RUBY_VERSION=3.3 ./scripts/build_layers.sh # Publish the testing layer to your own AWS account, and the ARN will be returned # Example: ./scripts/publish_layers.sh us-east-1 ./scripts/publish_layers.sh <AWS_REGION>
- Test your own serverless application using the testing Lambda layer in your own AWS account.
- Run the integration tests against your own AWS account and Datadog org (or ask a Datadog member to run):
BUILD_LAYERS=true DD_API_KEY=<your Datadog api key> ./scripts/run_integration_tests.sh
- Update integration test snapshots if needed:
UPDATE_SNAPSHOTS=true DD_API_KEY=<your Datadog api key> ./scripts/run_integration_tests.sh
- Push to your fork and submit a pull request.
At this point you're waiting on us. We may suggest some changes or improvements or alternatives.