EvoX Genesis
EvoX Genesis turns a high-level software objective into a persistent recursive software world: finite-lived agents recursively develop software, while only accepted consequences persist across develop
翻譯準備中
HAPTIC: template-driven HAProxy ingress controller for Kubernetes. Full control over HAProxy configuration through Scriggo templates.
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗HAPTIC (HAProxy Template Ingress Controller) is a template-driven HAProxy Ingress Controller for Kubernetes that generates HAProxy configurations using Scriggo templates and deploys them through the HAPTIC agent in each HAProxy pod.
Documentation: https://haproxy-haptic.org/
Traditional ingress controllers embed configuration logic in code. HAPTIC inverts this:
haproxy.cfg but also map files, SSL certificates, CRT-lists, and custom auxiliary filesFeatures described on main can include unreleased changes. Select your installed
release in the versioned documentation before
following setup instructions.
helm install my-controller oci://ghcr.io/haproxy-haptic/haptic/charts/haptic --version 0.11.0
The chart ships with template libraries for Kubernetes Ingress and Gateway API enabled by default. Use them for standard routing, or extend them with your own templates.
For complete setup instructions including HAProxy pod deployment, see the Getting Started guide.
For AI-assisted configuration, see the agent skill guide.
# Build the controller binary
make build
# Run unit tests
make test
# Run integration tests (requires kind cluster)
make test-integration
# Run Gateway API conformance (requires the test-e2e cluster)
make test-gateway-conformance
# Run Ingress conformance (requires the test-e2e cluster)
make test-ingress-conformance
# Run linting checks
make lint
# Run tests, linting, and security checks
make check-all
# Build Docker image
make docker-build
# Generate coverage report
make test-coverage
The project includes scripts for local development with kind:
# Start development cluster with controller
./scripts/start-dev-env.sh
# Rebuild and restart controller after code changes
./scripts/start-dev-env.sh restart
# View controller logs
./scripts/start-dev-env.sh logs
# Check deployment status
./scripts/start-dev-env.sh status
# Test ingress functionality
./scripts/start-dev-env.sh test
# Clean up development environment
./scripts/start-dev-env.sh down
[!WARNING] Always use the
kind-haptic-devcluster context for development work. Thekind-haproxy-testcontext is reserved for integration tests and will be automatically created and destroyed by test runs.
Set up automatic code quality checks using pre-commit:
# Install pre-commit (one-time setup)
pip install pre-commit
# or: brew install pre-commit
# Install git hooks (one-time per repository clone)
pre-commit install
# Hooks now run automatically on git commit (run `make lint` and `make audit`)
git commit -m "my changes"
# Run hooks manually on all files
pre-commit run --all-files
Do not bypass the hooks with --no-verify; CI runs the same checks, so skipping them only defers the failure.
Contributions are welcome. Before submitting pull requests:
make check-all to verify code qualitySee the development documentation for architecture and patterns.
Licensed under the Apache License 2.0 - see LICENSE file for details.
Copyright 2025 Philipp Hossner
This project builds on open source software: