1
0
Fork 0
Commit graph

367 commits

Author SHA1 Message Date
Joao Gilberto Magalhaes
f75cb8aab2 Add comprehensive plugin usage examples for Docker, Kubernetes, and Swarm
- Introduced multiple detailed plugin examples for Cloudflare IP restoration, IP whitelisting, JWT validation, and combined usage.
- Added configurations for `docker-compose`, `Kubernetes`, and `Swarm` showcasing individual and multi-plugin use cases.
- Included clear prerequisites, setup steps, and testing procedures for each example.
- Documented advanced scenarios like path blocking, custom IP lists, and JWT validation for production environments.
2025-11-27 19:31:15 -05:00
Joao Gilberto Magalhaes
06d1d447f8 Add comprehensive Docker, Kubernetes, Swarm, and static configuration examples
- Added detailed `README.md` files with step-by-step instructions for Docker Compose, Kubernetes, Swarm, and static configuration examples.
- Included use cases for SSL setup, Let's Encrypt integration, load balancing, and advanced features like plugins and path-based routing.
- Documented environment variables, service labels, and troubleshooting tips across all examples.
- Enhanced examples with clear testing guidelines, SSL certificate generation steps, and debugging workflows.
2025-11-27 19:02:39 -05:00
Joao Gilberto Magalhaes
75d6833769 Enhance plugin documentation and add Kubernetes plugin annotation support
- Updated `plugins.md` and `kubernetes.md` with detailed plugin configuration examples for Kubernetes annotations.
- Introduced support for `easyhaproxy.plugins` and `easyhaproxy.plugin.{name}.{key}` annotations in Kubernetes.
- Added comprehensive examples for JWT validation, IP whitelisting, and deny pages
2025-11-27 18:54:07 -05:00
Joao Gilberto Magalhaes
ebc4b2bf7a Add JWT Validator Plugin and corresponding tests
- Introduced `JwtValidatorPlugin` (DOMAIN): Validates JWT tokens for protected API endpoints using HAProxy's JWT functionality.
- Added configuration options: `enabled`, `algorithm`, `issuer`, `audience`, `pubkey_path`, and `pubkey`.
- Documented the plugin setup and usage in `plugins.md` and `plugin-development.md`.
- Created fixtures for `services-with-jwt-validator`.
- Added extensive test cases to validate configuration and HAProxy output generation.
- Ensured seamless integration into the plugin framework alongside existing domain plugins.
2025-11-27 18:48:10 -05:00
Joao Gilberto Magalhaes
57387f3e32 Add IP Whitelist Plugin and corresponding tests
- Introduced `IpWhitelistPlugin` (DOMAIN): Restricts access to specific IP addresses or CIDR ranges.
- Added configuration options: `enabled`, `allowed_ips`, and `status_code`.
- Updated `plugins.md` and `plugin-development.md` to document `IpWhitelistPlugin`.
- Created fixtures for `services-with-ip-whitelist`.
- Added extensive test cases for `IpWhitelistPlugin` to validate configuration and HAProxy output generation.
- Ensured seamless integration into the plugin framework alongside other domain plugins.
2025-11-27 18:35:37 -05:00
Joao Gilberto Magalhaes
91f8ff5d08 Add tests for plugin integration and improve plugin configuration handling
- Created fixtures for `services-with-cloudflare`, `services-with-deny-pages`, and `services-with-multiple-plugins`.
- Added comprehensive test cases for `CloudflarePlugin`, `DenyPagesPlugin`, and `CleanupPlugin`.
- Ensured proper configuration propagation to plugins using labels in `easymapping/__init__.py`.
- Validated multi-plugin integration and consistent output in HAProxy configuration generation.
2025-11-27 18:17:58 -05:00
Joao Gilberto Magalhaes
113b90a697 Add support for plugin configurations and minor refactoring
- Added `plugin_configs` attribute to test cases.
- Improved handling of enabled plugins in `easymapping/__init__.py`.
- Updated templates directory path resolution for robustness.
- Refactored example files to enhance formatting consistency.
2025-11-27 18:08:05 -05:00
Joao Gilberto Magalhaes
90e3df2b75 Add built-in plugin framework and initial plugins
- Introduced a plugin system enabling EasyHAProxy extensions.
- Added `CleanupPlugin` (GLOBAL): Handles temporary file cleanup.
- Added `CloudflarePlugin` (DOMAIN): Restores visitor IP from Cloudflare headers.
- Added `DenyPagesPlugin` (DOMAIN): Blocks access to specified paths.
- Documented the plugin architecture, configuration options, and built-in plugins in `docs/plugin-development.md` and `docs/plugins.md`.
2025-11-27 17:43:59 -05:00
Joao Gilberto Magalhaes
fdb6ddf3b9
Merge pull request #63 from byjg/claude/audit-docs-sidebar-position-011CUyCPndSvfgQT9p3YFcn7
Audit and organize Docusaurus documentation structure
2025-11-27 14:11:43 -03:00
Joao Gilberto Magalhaes
facbaaabb6 Update documentation and examples
- Improved container labels documentation formatting and fixed typos.
- Clarified static discovery mode requirements in static.md.
- Updated Kubernetes annotations explanations.
- Enhanced README.md with details about supported platforms and features.
- Bumped Swarm example image to version 4.6.0.
2025-11-10 16:36:05 -05:00
Claude
aee9645b43
Enhance documentation with Docusaurus features and fix inaccuracies
Verified against source code and enhanced with Docusaurus markdown features:

Documentation Accuracy Fixes:
- Fixed acme.md: Added "letsencrypt" as valid AUTOCONFIG value (was incorrectly shown as "-")
- Added reference to ACME docs from environment-variable.md
- Verified all features against actual implementation in /src

Docusaurus Enhancements Added:
- Admonitions (:::note, :::tip, :::warning, :::danger, :::info) for important callouts
- Code block titles for all bash/yaml examples (e.g., title="Install EasyHAProxy")
- Better structured warnings and notes for limitations
- Improved formatting and readability throughout

Files Enhanced:
- kubernetes.md: Added info boxes, warnings, code titles
- docker.md: Added limitation warnings, code titles
- swarm.md: Added advantage tips, limitation warnings
- acme.md: Fixed Let's Encrypt autoconfig, enhanced requirements with admonitions
- ssl.md: Added code block titles for all examples
- static.md: Added live reload tip, SSL certificate note
- container-labels.md: Added definition explanation, code titles
- limitations.md: Restructured with clear warnings and explanations
- helm.md: Added warnings, code titles
- microk8s.md: Added ingress controller warning, code titles
- volumes.md: Added info box about volume purposes
- other.md: Added code block titles
- environment-variable.md: Added ACME reference note

All changes verified against actual Python source code implementation.
2025-11-09 23:50:44 +00:00
Claude
96120d4554
Add Docusaurus frontmatter and improve documentation structure
- Add sidebar_position to all documentation files (1-15)
- Add "Configuration Reference" section to README.md with links to:
  - Container Labels
  - Environment Variables
  - Volumes
  - Other Configurations
  - Limitations
- Ensure sidebar_position values match README.md link order exactly
- Order follows logical flow: Platform installation → Tool installation → Special topics → Configuration reference
- All documentation now properly configured for Docusaurus
2025-11-09 23:44:14 +00:00
Joao M
58eea44929
Update README.md 2025-08-24 18:24:46 -05:00
byjg CI/CD
14cce510bf [skip ci] Update from 4.5.0 to 4.6.0 2025-08-24 23:14:07 +00:00
Joao M
c861d9b276
Merge pull request #61 from byjg/fix-some-issues
Improve ACME and Docker documentation with fixes
2025-08-24 19:02:36 -04:00
Joao Gilberto Magalhaes
2cfd9aea80 Add example ACME 2025-08-24 22:48:56 +00:00
Joao Gilberto Magalhaes
d3727197ce Update Dockerfile. 2025-08-24 18:12:24 -04:00
Joao Gilberto Magalhaes
329711b3f9 Update Dockerfile. 2025-08-24 18:11:42 -04:00
Joao Gilberto Magalhaes
ea9e4ee7c8 Some fixes and documentation
- Introduced ACME HTTP-01 challenge documentation.
- Added Docker Compose example for HTTP-01 setup.
- Updated `get_haproxy_command` logic with improved PID validation using `psutil`.
- Enhanced logging with a new `SingleLineNonEmptyFilter`.
- Expanded tests for daemonize functionalities.
- Updated dependencies to include `psutil`.
2025-08-24 17:49:25 -04:00
Joao Gilberto Magalhaes
b4b02916af Deploy 2025-04-16 13:58:27 -05:00
byjg CI/CD
f1c1d117f5 [skip ci] Update from 4.4.0 to 4.5.0 2025-04-16 18:53:24 +00:00
Joao Gilberto Magalhaes
54b04ba3a5 Remove the affinity for deployment. 2025-04-16 12:10:25 -05:00
Joao M
64bc49b0be
Merge pull request #58
Log Refactor
2024-11-19 10:18:40 -06:00
Joao Gilberto Magalhaes
d8049f331f Fix com duplicated name in tests 2024-11-18 09:15:40 -06:00
Joao Gilberto Magalhaes
9d97d568ec creating constants 2024-11-18 09:13:11 -06:00
Joao Gilberto Magalhaes
6df8e39bb1 rename skip_log to setup_log 2024-11-16 10:49:46 -06:00
Joao Gilberto Magalhaes
06ea2bbd3f Log Refactor 2024-11-15 22:39:05 -06:00
Joao M
5ac73ded44
Merge pull request #55 from byjg/issue/54
Improve documentation for issue #54
2024-11-15 20:21:13 -06:00
Joao Gilberto Magalhaes
0052cc320a Minor text adjustments 2024-11-15 20:16:14 -06:00
Joao Gilberto Magalhaes
0ab73621d4 Merge branch 'master' into issue/54 2024-11-15 20:16:01 -06:00
Joao Gilberto Magalhaes
386efcd6b5 Add DigitalOcean marketplace 2024-11-15 10:58:42 -06:00
Joao M
8850620a45
Merge pull request #57 from ThaDaVos/master
#56 prototyped manual-auth-hook and different `preferred-challenges` support
2024-11-15 10:45:35 -06:00
Joao Gilberto Magalhaes
e88f6b6326 Added documentation for new feature + Upgrade HAPROXY to 2.8.11 + Upgrade Python 2024-11-15 10:13:24 -06:00
Joao Gilberto Magalhaes
675c0e0a1a Merge branch 'master' into fork/ThaDaVos/master 2024-11-12 20:36:32 -06:00
Joao Gilberto Magalhaes
95f0163c0a Upload PyCharm default tests 2024-11-12 20:35:56 -06:00
Joao M
cd230528f0
Update build.yml 2024-11-11 13:39:45 -06:00
Joao M
775b1c4cc7
Update build.yml 2024-11-11 13:29:39 -06:00
Joao M
cc5fb83dab
Update build.yml 2024-11-11 13:26:33 -06:00
Joao M
67e40dab43
Update to support Build on PRs 2024-11-11 13:21:49 -06:00
Dylan Vos
8e9b048d96
#56: Split layers in Dockerfile to speed up builds 2024-11-09 17:46:43 +01:00
Dylan Vos
e4a7fffa8f
#56: Updating tests 2024-11-09 17:42:55 +01:00
Dylan Vos
b7b372c6fc
#56: Small fix, missed ENV setting - broken cast 2024-11-09 17:37:15 +01:00
Dylan Vos
2026531b7f
#56: Small fix, missed ENV setting 2024-11-09 17:35:16 +01:00
Dylan Vos
8671a80b74
#56 prototyped manual-auth-hook and different preferred-challenges support 2024-11-09 14:10:01 +01:00
Joao M
1a6853487e
Update CONTRIBUTING.md 2024-06-04 21:31:19 -05:00
Joao M
5b76656993
Create FUNDING.yml 2024-06-04 21:28:47 -05:00
Joao M
41688e01f2
Create CONTRIBUTING.md 2024-06-04 21:28:13 -05:00
Joao Gilberto Magalhaes
f9e94c7d2c Improve documentation for issue #54 2024-02-22 16:47:22 -06:00
Joao Gilberto Magalhaes
3708be0ee4 Fix Logo Path 2024-02-08 06:44:29 -06:00
Joao M
e24ab6d074
Merge pull request #53 from zasdaym/feat/prometheus
Add prometheus metrics
2024-02-03 08:35:37 -06:00