Change the default haproxy template to split variant

This allows for more config flexibility - e.g. running multiple
backends with a common frontend.
It is not possible with the 'listen' approach (which enforces
frontend).
Additionally, it does not really make sense to support two ways
to do the exact same thing as the process is automated and
'listen' is really meant for humans not willing to write separate
sections.
Hence this deprecates 'listen' variant.

At the moment both templates work exactly the same.
The real flexibility comes in following patches.

Note this is a building block for future work on letsencrypt
validator (which should offer backend and share frontend with
any service running off 80/443 - which would be only horizon
in the current default config), as well as any work towards
single port (that is single frontend) and multiple services
anchored at paths of it (which is the new recommended default).

Change-Id: I2362aaa3e8069fe146d42947b8dddf49376174b5
Partially-Implements: blueprint letsencrypt-https
This commit is contained in:
Radosław Piliszek 2020-09-22 16:43:49 +02:00
parent a45ef7ccaa
commit 9451ac61a0
2 changed files with 18 additions and 1 deletions

View File

@ -1,7 +1,8 @@
---
project_name: "haproxy-config"
haproxy_service_template: "haproxy_single_service_listen.cfg.j2"
# DEPRECATED(yoctozepto): using "haproxy_single_service_listen.cfg.j2" here is deprecated
haproxy_service_template: "haproxy_single_service_split.cfg.j2"
# Extra frontend/backend options (additive with locally defined options)
haproxy_frontend_http_extra:

View File

@ -0,0 +1,16 @@
---
upgrade:
- |
The default of ``haproxy_service_template`` changed to
``haproxy_single_service_split.cfg.j2``.
This template allows more flexibility in service config.
The previously-default ``haproxy_single_service_listen.cfg.j2`` is now
deprecated for removal.
No action needs to be taken unless one relied on replacing the previous
default template contents with one's own (under the same name).
deprecations:
- |
The previous default of ``haproxy_service_template``
(``haproxy_single_service_listen.cfg.j2``) is now deprecated for removal
as ``haproxy_single_service_split.cfg.j2`` takes it place to allow more
flexibility in service config.