1
0
Fork 0

Add protocol support and improve FastCGI plugin handling

- Introduced `easyhaproxy.proto` annotation for backend protocol configuration.
- Automatically set FastCGI protocol (`proto: fcgi`) when using the FastCGI plugin.
- Updated Kubernetes processor to handle `proto` annotations.
- Enhanced EasyMapping to allow plugin overrides for host-level configs.
- Updated documentation to reflect new `proto` behavior and FastCGI improvements.
- Improved multiprocessing configuration with better context handling in `haproxy.py`.
This commit is contained in:
Joao Gilberto Magalhaes 2026-06-24 21:21:27 -04:00
parent 2b7b2c887f
commit e4b62a3925
8 changed files with 33 additions and 14 deletions

View file

@ -269,6 +269,7 @@ class Kubernetes(ProcessorInterface):
redirect_ssl = self._check_annotation(annotations, "easyhaproxy.redirect_ssl")
redirect = self._check_annotation(annotations, "easyhaproxy.redirect")
mode = self._check_annotation(annotations, "easyhaproxy.mode")
proto = self._check_annotation(annotations, "easyhaproxy.proto")
listen_port = self._check_annotation(annotations, "easyhaproxy.listen_port", 80)
plugins = self._check_annotation(annotations, "easyhaproxy.plugins")
@ -432,6 +433,8 @@ class Kubernetes(ProcessorInterface):
rule_data[f"{definition}.redirect"] = redirect
if mode is not None:
rule_data[f"{definition}.mode"] = mode
if proto is not None:
rule_data[f"{definition}.proto"] = proto
rule_data[f"{definition}.balance"] = self._check_annotation(ingress.metadata.annotations, "easyhaproxy.balance", "roundrobin")
# Add plugin configuration