Skip to content

feat!: modernize for haproxy 2.8/3.0 and current platforms#2

Open
sdickenson wants to merge 1 commit intomasterfrom
modernize
Open

feat!: modernize for haproxy 2.8/3.0 and current platforms#2
sdickenson wants to merge 1 commit intomasterfrom
modernize

Conversation

@sdickenson
Copy link
Member

Summary

  • Drop CentOS 6/7, add Amazon Linux 2023, AlmaLinux 9 and 10
  • Update Ansible syntax to 2.10+: FQCN for all modules, yumdnf, with_itemsloop
  • HAProxy 2.8/3.0 compatibility: add TLSv1.3 ciphersuites, replace deprecated reqadd with http_request_rules, use ssl-min-ver syntax
  • Native Prometheus exporter: replace external haproxy_exporter sidecar with built-in prometheus-exporter service (haproxy_prometheus_enabled, haproxy_prometheus_port)
  • Rename graylog vars to generic names (haproxy_use_json_logging, haproxy_log_forward_server, haproxy_log_forward_server_port)
  • Rename VERSION.mdCHANGELOG.md with full version history from git tags
  • Add .gitignore

Breaking Changes

Before After
frontend.reqadd frontend.http_request_rules
haproxy_external_exporter_enabled haproxy_prometheus_enabled
haproxy_exporter_listen_port haproxy_prometheus_port (default: 8405)
haproxy_use_graylog_json_logging haproxy_use_json_logging
haproxy_graylog_server haproxy_log_forward_server
haproxy_graylog_server_port haproxy_log_forward_server_port

Test plan

  • Deploy to Amazon Linux 2023 and verify haproxy 3.0 config renders correctly
  • Deploy to AlmaLinux 9 and verify haproxy 2.8 config renders correctly
  • Enable haproxy_prometheus_enabled and confirm /metrics and /stats endpoints respond
  • Enable haproxy_use_json_logging with log forwarding and verify rsyslog config
  • Test TLS frontend with each haproxy_tls_level setting

🤖 Generated with Claude Code

Drop CentOS 6/7 support. Add Amazon Linux 2023, AlmaLinux 9 and 10.
Update Ansible syntax to 2.10+ (FQCN, dnf, loop). Add TLSv1.3
ciphersuite support. Replace deprecated reqadd with http_request_rules.
Replace external haproxy_exporter with native Prometheus exporter.
Rename graylog-specific vars to generic logging vars.

BREAKING CHANGE: reqadd replaced by http_request_rules, external
haproxy_exporter replaced by native prometheus frontend, graylog
vars renamed to haproxy_use_json_logging / haproxy_log_forward_*.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@sdickenson sdickenson requested a review from a team March 5, 2026 14:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants