Adding english documentation on how to configure lambdas on cloudprem.#35254
Adding english documentation on how to configure lambdas on cloudprem.#35254fulmicoton-dd wants to merge 1 commit intomasterfrom
Conversation
f71ed05 to
adb1f15
Compare
There was a problem hiding this comment.
Pull request overview
Adds documentation for configuring Lambda-based search offloading in CloudPrem (AWS-only) and links it from the CloudPrem “Configure” landing page.
Changes:
- Introduces a new
lambda.mdpage describing Lambda search offloading, IAM prerequisites, and Helm values configuration. - Updates the CloudPrem configure index to include a “Lambda Search Offloading” navigation entry.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 5 comments.
| File | Description |
|---|---|
content/en/cloudprem/configure/lambda.md |
New doc page covering feature overview, IAM role policies, and Helm configuration for Lambda search offloading. |
content/en/cloudprem/configure/_index.md |
Adds a “Lambda Search Offloading” link in the Configure section’s “what’s next” list. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| - **The Lambda execution role**: the role assumed by the Lambda function itself at runtime. This role needs read access to your index data in S3. Its arn has to be set in the | ||
| `searcher.lambda.auto_deploy.execution_role_arn` key as we will see in [Configuration](#configuration). |
There was a problem hiding this comment.
In this paragraph the documented config key path (searcher.lambda.auto_deploy.execution_role_arn) is inconsistent with the later Helm values example (cloudprem.searcher.lambda...). This is likely to confuse users; consider using the full Helm values path consistently (and also capitalize ARN as "ARN").
| - **The Lambda execution role**: the role assumed by the Lambda function itself at runtime. This role needs read access to your index data in S3. Its arn has to be set in the | |
| `searcher.lambda.auto_deploy.execution_role_arn` key as we will see in [Configuration](#configuration). | |
| - **The Lambda execution role**: the role assumed by the Lambda function itself at runtime. This role needs read access to your index data in S3. Its ARN has to be set in the | |
| `cloudprem.searcher.lambda.auto_deploy.execution_role_arn` key as we will see in [Configuration](#configuration). |
| "Action": [ | ||
| "lambda:InvokeFunction" | ||
| ], | ||
| "Resource": "arn:aws:lambda:<REGION>:<ACCOUNT_ID>:function:quickwit-lambda-search:*" |
There was a problem hiding this comment.
The lambda:InvokeFunction policy resource ARN ends with :*, which does not match the unqualified function ARN (no suffix). If CloudPrem ever invokes the function without specifying a version/alias (or during create/validation steps), this policy will deny the call. Consider including both the base function ARN and the :* variant (or using a wildcard that covers both).
| "Resource": "arn:aws:lambda:<REGION>:<ACCOUNT_ID>:function:quickwit-lambda-search:*" | |
| "Resource": [ | |
| "arn:aws:lambda:<REGION>:<ACCOUNT_ID>:function:quickwit-lambda-search", | |
| "arn:aws:lambda:<REGION>:<ACCOUNT_ID>:function:quickwit-lambda-search:*" | |
| ] |
|
|
||
| <div class="alert alert-warning">If a lambda configuration is present, but invalid, Cloudprem's searcher will fail to start.</div> | ||
|
|
||
| After the <link to prerequisites> iam permissions have been properly set up, to enable Lambda offloading, add a `lambda` section under `cloudprem.searcher` in your Helm chart values file: |
There was a problem hiding this comment.
<link to prerequisites> appears to be a placeholder and will render literally in the published docs. Replace it with an actual link (for example, to the "Prerequisite: IAM permissions" section anchor) and capitalize "IAM".
| After the <link to prerequisites> iam permissions have been properly set up, to enable Lambda offloading, add a `lambda` section under `cloudprem.searcher` in your Helm chart values file: | |
| After the [Prerequisite: IAM permissions](#prerequisite-iam-permissions) have been properly set up, to enable Lambda offloading, add a `lambda` section under `cloudprem.searcher` in your Helm chart values file: |
|
|
||
| ## Configuration | ||
|
|
||
| <div class="alert alert-warning">If a lambda configuration is present, but invalid, Cloudprem's searcher will fail to start.</div> |
There was a problem hiding this comment.
Spelling/capitalization in this warning is inconsistent with the rest of the CloudPrem docs ("lambda"/"Cloudprem" should be "Lambda"/"CloudPrem"). Consistent product/feature capitalization helps searchability and avoids looking like a typo in an alert banner.
| <div class="alert alert-warning">If a lambda configuration is present, but invalid, Cloudprem's searcher will fail to start.</div> | |
| <div class="alert alert-warning">If a Lambda configuration is present, but invalid, CloudPrem's searcher will fail to start.</div> |
| auto_deploy: | ||
| execution_role_arn: arn:aws:iam::123456789012:role/cloudprem-lambda-role | ||
| memory_size: 5 GiB |
There was a problem hiding this comment.
The memory size value is written as 5 GiB (with a space), but elsewhere in CloudPrem docs units are written without a space (for example, 2GiB, 500MiB in content/en/cloudprem/operate/sizing.md:115-137). Aligning the unit format here would reduce ambiguity and keep documentation consistent.
Preview links (active after the
|
b292eb1 to
37f1aa2
Compare
37f1aa2 to
e957dd3
Compare
What does this PR do? What is the motivation?
We recently introduced a new feature that allows to offload Logs Cloudprem work to AWS Lambda.
This feature is experimental and AWS specific.
Merge instructions
Merge readiness:
[6/5/2025] Merge queue has been disabled on the documentation repo. If you have write access to the repo, the PR has been reviewed by a Documentation team member, and all of the required checks have passed, you can use the Squash and Merge button to merge the PR. If you don't have write access, or you need help, reach out in the #documentation channel in Slack.
AI assistance
I used to Claude code for the initial draft. It based it off our repository documentation.
https://github.com/quickwit-oss/quickwit/blob/main/docs/configuration/lambda-config.md