Add upstream module documentation and BCR tracking template #3530
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.
Provides structured process for upstreaming bazel-registry modules (
.envoysuffixed versions) to source repos and Bazel Central Registry. Reduces envoy-specific patches by documenting configurable patterns over hardcoding.Issue Template:
.github/ISSUE_TEMPLATE/upstream-module.ymlGitHub issue form for tracking module upstreaming with fields for:
Documentation:
bazel-registry/README.mdUpstreaming philosophy - Favor generic, configurable changes:
3-stage workflow: source repo (MODULE.bazel + generic fixes) → BCR (once source supports Bazel) → envoy switch (toolshed module retained)
Scenario matrix: Actions for BCR exact match, needs patches, missing module, missing MODULE.bazel
Module structure: Documents
modules/<name>/<version>.envoy/layout with patches/overlaysChecklist: BCR lookup, source MODULE.bazel check, issue creation, upstreaming path
Original prompt
Summary
Add documentation and an issue template to guide the process of upstreaming modules from the
bazel-registry/to Bazel Central Registry (BCR) and source repos.Background
The
bazel-registry/modules/directory contains Bazel modules with.envoysuffixed versions. The goal is to upstream these to:Key principles:
Files to Create
1. Issue Template:
.github/ISSUE_TEMPLATE/upstream-module.yml2. README:
bazel-registry/README.mdCreate a comprehensive README with:
Upstreaming Philosophy
Goal: Minimize envoy-specific patches by upstreaming to source repos first.
MODULE.bazel,BUILD.bazelAvoid:
@envoy//bazel:foo)Good vs Bad Example:
Bad (hardcoded):
Good (configurable):
Upstreaming Workflow