Repository navigation
Conversation
* docs(event-gateway): mask field policy guide * docs(event-gateway): mask fields selected by schema registry tags guide * Feat/add mask fields policies (#7195) * chore(egw): add mask-fields produce and consume policies * fix(ewg): render min version as part of the title in plugin policy examples * refactor(automated-tests): extract URL-mode selection Extraction now follows the same pattern, files that are meant to be skipped are skipeed both when using --product and not. * fix(egw): how-to, run it as part of the test and add cleanup setps * chore(egw): add tools/event-gateway-policy-examples-validator Tool that validates existing policy examples agains the corresponding schema in the api spec * Update event-gateway minimum version in how-to Update minimum version for event-gateway to 1.1.0. * feat(event-gateway): add {% quickstart %} block Adds a standalone Liquid block/drop pair that renders the canonical Event Gateway quickstart instructions (script, exported gateway ID, demo-only note), with an optional env map and test-step declaration. No page calls it yet; that's tickets 03-05. * refactor(event-gateway): rename quickstart block, build command in Liquid Renames {% quickstart %} to {% event_gateway_quickstart %} and moves the curl command construction out of the Ruby drop and into snippet.md, iterating over the env map directly. The drop is now limited to parsing env/section and building the test-step payload, with the script URL, network name, and control-plane name hardcoded in the template since this block is Event Gateway-specific. * feat(automated-tests): run quickstart steps in the test harness Adds a `quickstart` step handler that composes a page's env flags onto the runtime's base quickstart command, runs it, and persists every `export NAME=VALUE` line it prints for later steps. The Konnect Event Gateway runtime gains that base command plus a reset-time wipe of files a previous test file generated. * feat(event-gateway): render observability guide quickstart from shared block Renders the OTel quickstart command from {% event_gateway_quickstart %} with the four OTel env flags, so the copy-pasted command and the harness-run command come from the same source. * fix(how-to): add class="content" to egw so it renders the correct spacing * chore(egw): replace hardcoded eventgateway quickstart script invocations with the block * feat(event-gateway): render prerequisite quickstart from shared block Uses the event_gateway_quickstart block with section: none so the prerequisite's wording can no longer drift from the other call sites, while staying inert to the test harness (no data-test-step emitted). * test(event-gateway): move quickstart command-content specs to snippet.md Content-shape assertions for the curl command (env formatting, special characters) belong at the snippet.md render seam, not the Liquid block seam, matching the claude-code snippet_spec.rb pattern. The block spec keeps only block-wiring behavior: test-declaration emission, malformed YAML, and markdown output_format. Also drops a leftover byebug breakpoint and its now-incorrect expectation. * fix(egw): refactor egw quickstart snippet and fix section handling * chore(egw): update how-tos with missing test markup, cleanup steps and run them as part of the test suite * fix(egw): delete directory url and specify in which section it should be run - cleanup - * refactor(egw): how we render the quickstart script and the prereqs Make the docker-compose-start.md prereq blocks and have the extractor run them, not all the how-tos need this so running them always was causing issues with clusters defined in specific how-tos. * refactor(automated-test): how event-gateway runs the setup/cleanup/reset cycle A file that runs the quickstart itself (a `quickstart` liquid tag in its steps) provisions its own gateway, and usually its own cluster too. The runtime only provisions a kafka cluster and quickstart script when the file declares no quickstart of its own. * chore(automated-tests): Make the test fail when the cleanup step fails * chore(automated-test): add openssl and other deps to the docker image and sleep for 5s after creating the egw to give it time to be ready * fix(egw): generate a v3 mTLS client certificate in the backend cluster how-to `openssl x509 -req` produces a version 1 certificate when it receives no extensions. Event Gateway rejects a v1 client certificate with "invalid peer certificate: UnsupportedCertVersion", so the mTLS handshake to the broker fails and kafkactl reports "run out of available brokers". Sign the client certificate with an extension file, as the broker certificates already do, to make it a v3 certificate. OpenSSL 3.2 and later add key identifier extensions by default, which hides the problem, but OpenSSL 3.0 is still the version on Ubuntu 24.04, Debian 12 and RHEL 9. * chore(egw): run egw automated tests every wednesday * fix(how-to): use `body_file` to upload a file using curl in how-to * copyedit policies and add diagrams * hide quickstart from vale * fix diagram --------- Co-authored-by: lena-larionova <lena.larionova@konghq.com> * Apply batched suggestions from code review Co-authored-by: lena-larionova <54370747+lena-larionova@users.noreply.github.com> --------- Co-authored-by: Fabian Rodriguez <fabian.rodriguez@konghq.com> Co-authored-by: lena-larionova <lena.larionova@konghq.com> Co-authored-by: lena-larionova <54370747+lena-larionova@users.noreply.github.com>
* record transcode policy docs + examples * add transcode to dictionary * how-to guide for record transcode consume policy * add deserializer to dictionary
✅ Deploy Preview for kongdeveloper ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
conatiner to a network, it's already part of it
One drop-level definition of the section-to-attribute map, shared by every block that needs to declare which automated-test phase it belongs to.
Validations::Base now includes the shared concern instead of its own section reader, and rejects an unrecognized section at construction time, before validate_yaml!.
KonnectApiRequest, ControlPlaneRequest and HttpRequest now validate section at construction time and drop it from the instruction config, matching Validations::Base.
Covers the prereqs and cleanup cases for both a konnect-only div and a dual-topology block, asserting the other test attributes stay absent and the attribute value stays unchanged from the step case. Not yet used by any block spec until the templates print config.test_attribute.
Drops the hand-written section conditional and the dead duplicate data-test-step="block" attribute (kramdown already discarded it), and switches the block spec to the section-aware shared example. Full suite: 1386 -> 1391 examples, 0 failures both times.
Both topology divs now select the test attribute from the drop
instead of hardcoding data-test-step, so section: prereqs/cleanup
takes effect for {% control_plane_request %} too.
Keeps unless config.skip as the outer condition, printing the section attribute inside it instead of hardcoding data-test-step. Also covers skip together with section: skip still suppresses the attribute entirely.
Keeps block as the attribute value, only the attribute name now comes
from the drop, so {% http_request %} accepts section: prereqs/cleanup
like the other request blocks.
…ates
env-variables already printed the same JSON value on both branches, so
this is a straightforward attribute-name swap. custom-command's
prereqs branch previously hardcoded the literal "block" while its step
branch printed the JSON instruction; per explicit direction, it now
always prints the JSON value, matching the new spec's invariant that
the attribute value doesn't change with the section. Only one page
(app/_how-tos/ai-gateway/v1/compare-llm-models-accuracy.md) sets
section: prereqs on {% validation custom-command %}; the automated
test runner already treats a JSON value as a validation to parse and
dispatch, same as it does for the step case today.
EventGatewayQuickstart drops its own section/test_attribute in favor of the shared TestSection concern, which only accepts the plural. The one page that set the singular moves to it in the same commit.
auth-headers and directories when resetting ai-gatewat and event-gateway how-tos just in case, so we always start with a clean set.
* draft of request rule validator * fix(egw): request-rule-policy example so it's valida against the spec and tested it against .tech * Update app/_event_gateway_policies/request-rule-validator/index.md Co-authored-by: Jakub Dyszkiewicz <jakub.dyszkiewicz@gmail.com> --------- Co-authored-by: Fabian Rodriguez <fabian.rodriguez@konghq.com> Co-authored-by: Jakub Dyszkiewicz <jakub.dyszkiewicz@gmail.com>
* CEL support in KEG * copyedit and remove legacy examples * Update app/event-gateway/entities/policy.md Co-authored-by: Mattia Lavacca <lavacca.mattia@gmail.com> * add some details from the API spec * add missing 1.3 fields and examples --------- Co-authored-by: Mattia Lavacca <lavacca.mattia@gmail.com>
…7387) * feat(event-gateway): encrypt fields selected by schema registry tags guide * Apply copyedits Co-authored-by: lena-larionova <54370747+lena-larionova@users.noreply.github.com> --------- Co-authored-by: lena-larionova <54370747+lena-larionova@users.noreply.github.com>
* feat(event-gw): log level explanation * Apply copyedits Co-authored-by: lena-larionova <54370747+lena-larionova@users.noreply.github.com> --------- Co-authored-by: lena-larionova <54370747+lena-larionova@users.noreply.github.com>
* feat(event-gw): more rule validator policy examples * Apply copyedits Co-authored-by: lena-larionova <54370747+lena-larionova@users.noreply.github.com> --------- Co-authored-by: lena-larionova <54370747+lena-larionova@users.noreply.github.com>
* docs(event-gateway): add guide for producing JSON to Avro * fix: quotes * Apply copyedits + quote fix Co-authored-by: lena-larionova <54370747+lena-larionova@users.noreply.github.com> --------- Co-authored-by: lena-larionova <54370747+lena-larionova@users.noreply.github.com>
* docs(event-gw): clarify max wait time in example * Update app/_event_gateway_policies/request-rule-validator/examples/enforce-produce-fetch-settings.yml Co-authored-by: kong-ksai[bot] <313415923+kong-ksai[bot]@users.noreply.github.com> --------- Co-authored-by: kong-ksai[bot] <313415923+kong-ksai[bot]@users.noreply.github.com>
* docs for protobuf support * Apply batched suggestions from code review Co-authored-by: tomek-labuk <tomasz.labuk@konghq.com> * revert changes to record transcode policies * add version tag to schema validation doc * add supported schema formats to schema validation policy pages * fix typos Co-authored-by: kong-ksai[bot] <313415923+kong-ksai[bot]@users.noreply.github.com> --------- Co-authored-by: tomek-labuk <tomasz.labuk@konghq.com> Co-authored-by: kong-ksai[bot] <313415923+kong-ksai[bot]@users.noreply.github.com>
# Conflicts: # .github/styles/base/Dictionary.txt # tools/automated-tests/collect-urls.mjs # tools/automated-tests/generate-instructions-files.js
… blocks The accordion binds its click handler on DOMContentLoaded, but extraction navigates with waitUntil: "domcontentloaded" and clicks the trigger immediately, so the handler may not be bound yet. A click on an unbound trigger leaves the panel hidden and every [data-test-prereq] block inside is silently skipped, so the generated instruction file loses the how-to's prerequisite commands (e.g. the Kafka compose stack) and the test only fails later on a missing docker network. Reveal each item's panels directly (mirroring revealHiddenTabPanel) instead of trusting the trigger click, in both extractPrereqs and extractCleanup.
The verify-image-signatures-and-attestations how-to runs cosign and regctl steps inside the runtime container, but neither tool was installed, so the test failed with 'cosign: command not found'. Install both, pinned and checksum-verified, following the existing kubectl/helm/k3d/yq pattern. cosign is pinned to the latest v2 (2.6.5) because the how-to uses --new-bundle-format=true, which was introduced in 2.4.0 and is not guaranteed to still exist as a flag in v3.
… selection (#7375) Co-authored-by: lena-larionova <54370747+lena-larionova@users.noreply.github.com>
Co-authored-by: Charly Molter <charly.molter@konghq.com> Co-authored-by: lena-larionova <54370747+lena-larionova@users.noreply.github.com>
…release/event-gateway-1.3
* modify release changelog skill to support event gateway * better categorization of policies * improve grouping rules * apply fixes from ksai review * update link in comment * Apply batched suggestions from code review Co-authored-by: tomek-labuk <tomasz.labuk@konghq.com> Co-authored-by: lena-larionova <54370747+lena-larionova@users.noreply.github.com> * clean up the skill a bit more --------- Co-authored-by: tomek-labuk <tomasz.labuk@konghq.com>
* add links to changelog and add missing breaking changes entries for 1.3 and 1.2 * appease linters * Update app/event-gateway/changelog.md Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com> * Update app/event-gateway/changelog.md Co-authored-by: kong-ksai[bot] <313415923+kong-ksai[bot]@users.noreply.github.com> --------- Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com> Co-authored-by: kong-ksai[bot] <313415923+kong-ksai[bot]@users.noreply.github.com>
* feat(event-gw): backfill missing policies * apply suggestion Co-authored-by: kong-ksai[bot] <313415923+kong-ksai[bot]@users.noreply.github.com> --------- Co-authored-by: lena-larionova <54370747+lena-larionova@users.noreply.github.com> Co-authored-by: kong-ksai[bot] <313415923+kong-ksai[bot]@users.noreply.github.com>
* docs(egw): add `schema_validation` `any` * docs: reduce duplication * Apply style + grammar copyedits Co-authored-by: lena-larionova <54370747+lena-larionova@users.noreply.github.com> * update dictionary --------- Co-authored-by: lena-larionova <54370747+lena-larionova@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Fixes #issue
Preview Links
Checklist
descriptionentry in frontmatter.