一键导入
05-resources
Resource taxonomy and processing — common processing flow, per-resource feature points / special handling / cross-resource relationships.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Resource taxonomy and processing — common processing flow, per-resource feature points / special handling / cross-resource relationships.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Conventions shared by the in-repo binaries (edgion-controller, edgion-gateway, edgion-cli) — project overview, command line / directory / config-path conventions, Core layering conventions, resource system.
KubernetesCenter implementation — K8s Reflector watching, leader election, HA mode, ResourceController lifecycle, status writeback.
ConfigCenter subsystem — ConfCenter trait abstraction, FileSystemCenter and KubernetesCenter implementations, unified Workqueue + ResourceProcessor pipeline.
edgion-controller control plane architecture — overall design, startup/shutdown, Admin API, ConfigCenter, Workqueue, ResourceProcessor, Requeue, CacheServer, ACME service.
Route matching overview — multi-stage pipeline (Listener→Domain→Path→DeepMatch), per-listener isolation, registration flow, atomic swap.
TLS subsystem overview — TLS Store, SNI matching, certificate management, BoringSSL/OpenSSL backend selection.
| name | 05-resources |
| description | Resource taxonomy and processing — common processing flow, per-resource feature points / special handling / cross-resource relationships. |
This directory describes the internal processing flow of each resource from Controller to Gateway: per-stage Handler logic, requeue relationships, source code locations. The external contract of each resource (YAML schema, field types and defaults) lives in 02-features/03-resources/ — the numbering on the two sides is aligned, and code changes typically need to look at both.
Each resource document follows a unified structure:
- Common-flow reference — points to the common flow in 00-resource-flow.md
- Resource-specific behavior — concrete behavior of each Handler stage (filter/validate/preparse/parse/on_change/on_delete/update_status)
- Cross-resource relationships — references, cascading updates, and requeue relationships between this resource and others
| File | Topic | Recommended reading scenario |
|---|---|---|
| 00-resource-flow.md | Common resource processing flow | Understanding how resources flow from Controller to Gateway |
| Core configuration | ||
| 01-gateway.md | Gateway resource | Modifying Gateway/Listener logic |
| 02-gateway-class.md | GatewayClass resource | Modifying GatewayClass handling |
| 03-edgion-gateway-config.md | EdgionGatewayConfig resource | Modifying global configuration |
| Routes | ||
| 04-http-route.md | HTTPRoute resource | Modifying HTTP routing |
| 05-grpc-route.md | GRPCRoute resource | Modifying gRPC routing |
| 06-tcp-route.md | TCPRoute resource | Modifying TCP routing |
| 07-tls-route.md | TLSRoute resource | Modifying TLS routing |
| 08-udp-route.md | UDPRoute resource | Modifying UDP routing |
| Security and policy | ||
| 09-edgion-tls.md | EdgionTls resource | Modifying TLS certificate management |
| 10-secret.md | Secret resource | Understanding Secret handling and security constraints |
| 11-reference-grant.md | ReferenceGrant resource | Understanding cross-namespace references |
| 12-backend-tls-policy.md | BackendTLSPolicy resource | Configuring backend TLS |
| Plugins and extensions | ||
| 13-edgion-plugins.md | EdgionPlugins resource | Understanding plugin configuration |
| 14-edgion-stream-plugins.md | EdgionStreamPlugins resource | Understanding Stream plugins |
| 15-edgion-config-data.md | EdgionConfigData resource + overlay model | Understanding EdgionConfigData, base+overlay architecture, fail-to-base, variant taxonomy |
| Backends and services | ||
| 16-service-endpoints.md | Service + EndpointSlice + Endpoint | Backend discovery |
| ACME | ||
| 17-edgion-acme.md | EdgionAcme resource | Automatic certificates |
| Infrastructure | ||
| 18-link-sys.md | LinkSys resource | External system connections |
| Relationships | ||
| 19-resource-dependency.md | Inter-resource dependencies | Understanding cross-resource references, Store queries, and requeue cascades |
Spec-level reference relationships (simplified):
GatewayClass ──────► Gateway ◄────── EdgionGatewayConfig
│
┌──────────┼──────────┐
▼ ▼ ▼
HTTPRoute GRPCRoute TCP/TLS/UDPRoute
│ │ │
▼ ▼ ▼
Service ──► EndpointSlice/Endpoint
│
▼
BackendTLSPolicy
Gateway ──► Secret (TLS certificates)
──► EdgionTls (extended TLS)
──► EdgionAcme (automatic certificates)
HTTPRoute/GRPCRoute ──► EdgionPlugins (HTTP plugins)
──► EdgionStreamPlugins (Stream plugins)
EdgionPlugins/EdgionStreamPlugins ──► EdgionConfigData (overlay/data primitive via overrideRef)
Cross-namespace references ──► ReferenceGrant
AccessLog/Plugin data ──► LinkSys (external systems)
Controller-internal Store queries and requeue cascades are documented in 19-resource-dependency.md.