haproxy public development tree
Go to file
Willy Tarreau ae1747db85 CLEANUP: promex: make the applet use its own context
The prometheus applet used to map to the stats context since it was not
convenient to have one's own context, and to reuse the fields with its
own values and enums. The obj1 pointer was used both for proxies and
stick-tables; obj2 was used both for servers and listeners.

This change makes use of the generic command context allocation so that
the there's now a properly typed context for prometheus, defined in the
code itself and independent on the stats or appctx ones. For clarity,
the types are correctly set and there's one proxy, one table, one server
and one listener. Some could be compacted using unions but that's not
necessary since the context is reasonably compact. The stats' st_code
field was used as the object state so the new field name is obj_state.

An attempt was made to change the types to const for what us only visited
but some calls pass through the stats code to retrieve info and that code
uses non-const variables due to internal API limitations (read_freq_ctr()
being used and requiring variable). That could change in the future,
though.
2022-05-06 18:13:35 +02:00
.github CI: github actions: update LibreSSL to 3.5.2 2022-04-30 14:12:51 +02:00
addons CLEANUP: promex: make the applet use its own context 2022-05-06 18:13:35 +02:00
admin BUILD: halog: fix some incorrect signs in printf formats for integers 2022-04-12 08:40:38 +02:00
dev MINOR: connection: get rid of the CO_FL_ADDR_*_SET flags 2022-05-02 17:47:46 +02:00
doc DOC: resolvers: default resolvers section 2022-05-06 17:16:23 +02:00
examples
include CLEANUP: peers/cli: take the "show peers" context definition out of the appctx 2022-05-06 18:13:35 +02:00
reg-tests REGTESTS: webstats: remove unused stats socket in /tmp 2022-04-26 16:15:23 +02:00
scripts SCRIPTS: announce-release: add URL of dev packages 2022-04-30 14:16:15 +02:00
src CLEANUP: cli: initialize the whole appctx->ctx, not just the stats part 2022-05-06 18:13:35 +02:00
tests
.cirrus.yml CI: cirrus: switch to FreeBSD-13.0 2022-04-12 07:59:06 +02:00
.gitattributes
.gitignore
.mailmap
.travis.yml
BRANCHES
CHANGELOG [RELEASE] Released version 2.6-dev8 2022-04-30 14:17:51 +02:00
CONTRIBUTING
INSTALL DOC: install: document the fact that SSL engines are not enabled by default 2022-04-11 19:00:27 +02:00
LICENSE
MAINTAINERS
Makefile REORG: quic: use a dedicated module for qc_stream_desc 2022-04-21 11:05:27 +02:00
README
ROADMAP
SUBVERS
VERDATE [RELEASE] Released version 2.6-dev8 2022-04-30 14:17:51 +02:00
VERSION [RELEASE] Released version 2.6-dev8 2022-04-30 14:17:51 +02:00

The HAProxy documentation has been split into a number of different files for
ease of use.

Please refer to the following files depending on what you're looking for :

  - INSTALL for instructions on how to build and install HAProxy
  - BRANCHES to understand the project's life cycle and what version to use
  - LICENSE for the project's license
  - CONTRIBUTING for the process to follow to submit contributions

The more detailed documentation is located into the doc/ directory :

  - doc/intro.txt for a quick introduction on HAProxy
  - doc/configuration.txt for the configuration's reference manual
  - doc/lua.txt for the Lua's reference manual
  - doc/SPOE.txt for how to use the SPOE engine
  - doc/network-namespaces.txt for how to use network namespaces under Linux
  - doc/management.txt for the management guide
  - doc/regression-testing.txt for how to use the regression testing suite
  - doc/peers.txt for the peers protocol reference
  - doc/coding-style.txt for how to adopt HAProxy's coding style
  - doc/internals for developer-specific documentation (not all up to date)