updated haproxy state
Some checks failed
continuous-integration/drone/push Build is failing

This commit is contained in:
Paul 2022-12-11 16:34:27 +01:00
parent bfd8b6cf72
commit b4c3cd9658
5 changed files with 62 additions and 14 deletions

View File

@ -1,5 +1,29 @@
---
{%- from "haproxy/map.jinja" import haproxy with context %}
{% for filename in haproxy.maps %}
haproxy-maps-{{ filename }}:
file.managed:
- name: {{ haproxy.config.dir }}/maps/{{ filename }}
- source: salt://haproxy/maps/{{ filename }}.j2
- user: {{ haproxy.config.user }}
- group: {{ haproxy.config.group }}
- mode: "0600"
- template: jinja
- watch_in:
- service: haproxy-service
{% endfor %}
haproxy-spoe-config:
file.managed:
- name: {{ haproxy.config.dir }}/spoe.cfg
- source: salt://haproxy/spoe/spoe.cfg.j2
- user: {{ haproxy.config.user }}
- group: {{ haproxy.config.group }}
- mode: "0600"
- template: jinja
- watch_in:
- service: haproxy-service
haproxy-config:
file.managed:
- name: {{ haproxy.config.dir }}/{{ haproxy.config.configfile }}

View File

@ -84,3 +84,4 @@ haproxy:
domains: {}
vhosts: {}
services: {}
spoe: {}

View File

@ -36,16 +36,3 @@ haproxy-script-{{ file.name }}:
- watch_in:
- service: haproxy-service
{% endfor %}
{% for filename in haproxy.maps %}
haproxy-maps-{{ filename }}:
file.managed:
- name: {{ haproxy.config.dir }}/maps/{{ filename }}
- source: salt://haproxy/maps/{{ filename }}.j2
- user: {{ haproxy.config.user }}
- group: {{ haproxy.config.group }}
- mode: "0600"
- template: jinja
- watch_in:
- service: haproxy-service
{% endfor %}

View File

@ -205,6 +205,12 @@ listen {{ name }}
{{- tcpendpoints(servers=values.servers, check=values.check|default(haproxy.config.check)) }}
{% endfor -%}
# SPOE Agents
{%- for name, values in haproxy.config.spoe.items() %}
listen {{ name }}
bind *:{{ values.port }},:::{{ values.port }} v4v6
{% endfor -%}
{% if haproxy.config.admin.enable %}
{{ admin() }}
{%- endif %}

View File

@ -0,0 +1,30 @@
## {{ salt['pillar.get']('salt_managed', default='Salt Managed') }}
{%- from "haproxy/map.jinja" import haproxy with context %}
{%- for name, values in haproxy.config.spoe.items() %}
[{{ name }}]
spoe-agent {{ name }}
messages {{ " ".join(values.messages.keys()) }} option var-prefix {{ name }}
timeout hello 2s
timeout idle 2m
timeout processing 50ms
use-backend {{ name }}
log global
{%- for m, m_values in values.messages.items() %}
spoe-message {{ m }}
{%- if m_values.args.keys() > 0 %}
args {{ " ".join([i+"="+v for i, v in m_values.args.items()]) }}
{%- endif %}
{%- if m_values.event %}
event {{ m_values.event }}
{%- endif %}
{% endfor %}
spoe-message request
args unique_id=unique-id clientip=src host=req.hdr(Host) method=method path=pathq headers=req.hdrs body_size=req.body_size body=req.body
event on-frontend-http-request
spoe-message response
args unique_id=unique-id status=status
event on-http-response
{% endfor -%}