Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 25 additions & 7 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,21 +16,39 @@ Thank you for your interest in contributing to this project! Here's how to get s

### Prerequisites

- Java 17
- GraalVM CE 17
- AWS SAM CLI
- Docker (for native image builds)
- **Java 17**
- **GraalVM Community Edition 17.0.9** (with `native-image` installed)
- **Maven 3.9.6+**
- **Docker** — required for building the native image in an Amazon Linux 2023 environment
- **AWS SAM CLI** — for building, packaging, and deploying
- **AWS CLI** — configured with valid credentials

### Build & Test

Build the Docker image that provides the GraalVM + Maven build environment:

```bash
docker build -t al2023-graalvm:maven .
```

Build the native image using SAM:

```bash
# Build the native image using Docker
docker build -t lambda-graalvm .
sam build --build-image al2023-graalvm:maven --use-container
```

# Deploy locally with SAM
This runs `mvn clean install -P native` inside the container, compiling the Java source into a GraalVM native binary.

### Deploy Locally

```bash
sam local start-api --template template.yaml
```

## CI Pipeline

Pull requests targeting `main` automatically trigger a Docker image build test via GitHub Actions. Ensure the Docker build passes before requesting a review.

## Reporting Issues

- Use [GitHub Issues](https://github.com/maschnetwork/aws-lambda-graalvm-crt/issues) to report bugs or request features.
Expand Down
Loading