Kuadrant / Kuadrant/kuadrant-operator

Add ActionMethodConfig with Name and MessageTemplate fields

Open
#1,900 0 comments 0 reactions 1 assignee Claimed by @philbrookes View on GitHub
feat/extensions kind/enhancement
Dominant language
Go
Stars
94
Forks
89
Avg merge
3d 4h
Merged PRs (30d)
43

Description

## Description

Add `Name` and `MessageTemplate` fields to `ActionMethodConfig` (renamed from `UpstreamConfig` in #1899). `Name` provides a per-policy unique identifier for the action method that pipeline actions reference. `MessageTemplate` is an opaque string that will be passed through to the data plane for request message construction.

**Note:** The format of `MessageTemplate` is still evolving. The current direction (per discussion on PR #1922) is toward CEL struct syntax (e.g. `"ThreatRequest { uri: request.path, method: request.method }"`), but the operator treats it as an opaque string — no JSON parsing or CEL validation is performed at this stage. This allows the format to evolve without requiring operator-side changes.

## Acceptance Criteria

- [ ] `ActionMethodConfig` has `Name`, `URL`, `Service`, `Method`, `MessageTemplate` fields
- [ ] `Name` field added to the `RegisterActionMethodRequest` proto message
- [ ] `MessageTemplate` field added to the proto message
- [ ] Server validates `Name` is non-empty and unique per-policy
- [ ] `MessageTemplate` is stored and passed through as an opaque string (no parsing/validation)
- [ ] Unit tests

## References

- Design: [extensions-SDK-action-pipeline-design.md](https://github.com/Kuadrant/kuadrant-operator/blob/action-pipeline-proposal/doc/proposals/extensions-SDK-action-pipeline-design.md)
- PR #1922 (messageTemplate as opaque string)
- Parent: #1898

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.