一键导入
09-misc
Use for pre-commit/local checks, CI/CD workflows, Docker builds, release automation, dev hot-replace deployment, or TLS troubleshooting.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use for pre-commit/local checks, CI/CD workflows, Docker builds, release automation, dev hot-replace deployment, or TLS troubleshooting.
用 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 | 09-misc |
| description | Use for pre-commit/local checks, CI/CD workflows, Docker builds, release automation, dev hot-replace deployment, or TLS troubleshooting. |
Edgion build and release workflow. Cargo workspace; Rust toolchain is pinned by CI /
rust-toolchain.toml(currently1.92, channelstable). Default features:allocator-jemalloc+boringssl. In-repo binaries:edgion-gateway(data plane),edgion-controller(control plane), andedgion-cli(CLI). The federation Center lives in the separate EdgionCenter repository.
| File | Topic | Status |
|---|---|---|
| cicd/ | CI/CD: local build, Docker build, GitHub Workflow, Release publishing | ✅ |
| debugging-tls-gateway.md | Targeted TLS debugging in K8s environments (kubectl exec + log files + grep patterns) | ✅ |
| debugging-conformance.md | Conformance test debugging: rv/sv/access log triple, orbstack-dev.sh log commands, per-profile failure modes | ✅ |
| 03-dev-deploy-hot-replace.md | Dev deployment hot replace: native image + shell restart loop + cross compile + kubectl cp end-to-end flow | ✅ |
# Development mode (fast compile)
cargo build
# Release mode
cargo build --release
# Specify TLS backend (rustls experimental build)
cargo build --release --no-default-features --features "allocator-jemalloc,rustls"
# Code checks
cargo check && cargo clippy && cargo fmt --check
python3 cicd/checks/validate_agent_docs.py
Additional entry points:
# See the Dockerfiles under the cicd/docker/ directory
docker build -f cicd/docker/Dockerfile -t edgion .
build-image.yml is currently workflow_dispatch-only (the tag-push trigger is commented out). Release is a manual dispatch:
write releases/v0.x.x.md → push tag v0.x.x → manually dispatch build-image.yml against that tag
→ Docker Hub pandaala/edgion-gateway, pandaala/edgion-controller → create-release
See cicd/02-github-workflow.md for the full job breakdown.
| Feature | Description | Default |
|---|---|---|
allocator-jemalloc | Use the jemalloc memory allocator | ✅ |
boringssl | Use BoringSSL as the TLS backend | ✅ |
rustls | Use rustls as the TLS backend | |
allocator-mimalloc | Use the mimalloc memory allocator | |
allocator-system | Use the system default allocator | |
legacy_route_tests | Enable legacy route tests |
⚠️
boringsslandrustlsare mutually exclusive and cannot be enabled simultaneously.