diff --git a/solutions/cncf-generated/contour/contour-5822-add-per-httpproxy-http-version-support-to-address-http2-coalescing-.json b/solutions/cncf-generated/contour/contour-5822-add-per-httpproxy-http-version-support-to-address-http2-coalescing-.json new file mode 100644 index 00000000..b5de934d --- /dev/null +++ b/solutions/cncf-generated/contour/contour-5822-add-per-httpproxy-http-version-support-to-address-http2-coalescing-.json @@ -0,0 +1,77 @@ +{ + "version": "kc-mission-v1", + "name": "contour-5822-add-per-httpproxy-http-version-support-to-address-http2-coalescing-", + "missionClass": "solution", + "author": "KubeStellar Bot", + "authorGithub": "kubestellar", + "mission": { + "title": "contour: Add Per-HTTPProxy HTTP-Version Support to Address HTTP2 Coalescing Issues with Wildcards", + "description": "Add Per-HTTPProxy HTTP-Version Support to Address HTTP2 Coalescing Issues with Wildcards. Requested by 11+ users.", + "type": "feature", + "status": "completed", + "steps": [ + { + "title": "Check current contour deployment", + "description": "Verify your contour version and configuration:\n```bash\nkubectl get pods -n projectcontour -l app.kubernetes.io/name=contour\nhelm list -n projectcontour 2>/dev/null || echo \"Not installed via Helm\"\n```\nThis feature requires a working contour installation." + }, + { + "title": "Review contour configuration", + "description": "Inspect the relevant contour configuration:\n```bash\nkubectl get all -n projectcontour -l app.kubernetes.io/name=contour\nkubectl get configmap -n projectcontour -l app.kubernetes.io/part-of=contour\n```\n### Description:\n\nWith the emergence of the `HTTP2 Coalescing` issue, where using a wildcard can result in complications in SNI-based routing (as fully discussed in multiple issues including https://github.com/projectcontour/contour/issues/1493)," + }, + { + "title": "Apply the fix for Add Per-HTTPProxy HTTP-Version Support to Address HTTP2…", + "description": "This PR adds a new field to HTTPProxy spec which specifies the HTTP versions to offer for that HTTPProxy. It's used only when `spec.tls` is set and `spec.tcpproxy` is not.\n\nA critical use case for the field is when we're serving multiple HTTPProxies where a subset of them use the same wildcard certificate. We can disable http/2 for those utilizing this field while keeping it enabled for others.\n\nSee the source issue for community-verified solutions." + }, + { + "title": "Upgrade contour to include the fix", + "description": "If the fix is included in a newer release, upgrade contour:\n```bash\nhelm repo update\nhelm upgrade contour contour/contour --namespace contour\n```\nVerify the upgrade:\n```bash\nkubectl get pods -n projectcontour\nhelm list -n projectcontour\n```" + }, + { + "title": "Verify the feature works", + "description": "Test that the new capability is working as expected:\n```bash\nkubectl get pods -n projectcontour -l app.kubernetes.io/name=contour\nkubectl get events -n projectcontour --sort-by='.lastTimestamp' | tail -10\n```\nConfirm the feature described in \"Add Per-HTTPProxy HTTP-Version Support to Address HTTP2…\" is functioning correctly." + } + ], + "resolution": { + "summary": "This PR adds a new field to HTTPProxy spec which specifies the HTTP versions to offer for that HTTPProxy. It's used only when `spec.tls` is set and `spec.tcpproxy` is not.\n\nA critical use case for the field is when we're serving multiple HTTPProxies where a subset of them use the same wildcard certificate. We can disable http/2 for those utilizing this field while keeping it enabled for others.", + "codeSnippets": [] + } + }, + "metadata": { + "tags": [ + "contour", + "incubating", + "networking", + "feature" + ], + "cncfProjects": [ + "contour" + ], + "targetResourceKinds": [], + "difficulty": "beginner", + "issueTypes": [ + "feature" + ], + "maturity": "incubating", + "sourceUrls": { + "issue": "https://github.com/projectcontour/contour/issues/5822", + "repo": "https://github.com/projectcontour/contour", + "pr": "https://github.com/projectcontour/contour/pull/5802" + }, + "reactions": 11, + "comments": 3, + "synthesizedBy": "copilot" + }, + "prerequisites": { + "kubernetes": ">=1.24", + "tools": [ + "kubectl" + ], + "description": "A running Kubernetes cluster with contour installed or the issue environment reproducible." + }, + "security": { + "scannedAt": "2026-03-16T06:38:00.690Z", + "scannerVersion": "cncf-gen-3.0.0", + "sanitized": true, + "findings": [] + } +}