mirror of
https://github.com/haproxy/haproxy.git
synced 2026-07-16 12:23:15 -04:00
MINOR: init: add no listener mode
Introduce the new <no_listener_mode> global variable to define a new operating mode for haproxy. This variable can be set to 1 to allow haproxy to start without any listeners. Without such a setting, haproxy refuses to start without listener. During the initialization cycle, setting this variable to 1 ensures that the lack of configured listeners is no longer treated as a fatal error. This allows programs based on haproxy source code to initialize the stack and use its features even without a frontend. This will be the case for haload.
This commit is contained in:
parent
99c24e957e
commit
023f532043
2 changed files with 3 additions and 1 deletions
|
|
@ -56,6 +56,7 @@ extern const char *old_unixsocket;
|
|||
extern int daemon_fd[2];
|
||||
extern int devnullfd;
|
||||
extern int fileless_mode;
|
||||
extern int no_listener_mode;
|
||||
extern struct cfgfile fileless_cfg;
|
||||
|
||||
/* storage for collected libs */
|
||||
|
|
|
|||
|
|
@ -150,6 +150,7 @@ int pidfd = -1; /* FD to keep PID */
|
|||
int daemon_fd[2] = {-1, -1}; /* pipe to communicate with parent process */
|
||||
int devnullfd = -1;
|
||||
int fileless_mode;
|
||||
int no_listener_mode;
|
||||
struct cfgfile fileless_cfg;
|
||||
extern __attribute__((weak)) void haproxy_init_args(int argc, char **argv);
|
||||
extern __attribute__((weak)) char **copy_argv(int argc, char **argv);
|
||||
|
|
@ -3681,7 +3682,7 @@ int main(int argc, char **argv)
|
|||
}
|
||||
|
||||
/* Exit in standalone mode, if no listeners found */
|
||||
if (!(global.mode & MODE_MWORKER) && listeners == 0) {
|
||||
if (!(global.mode & MODE_MWORKER) && !no_listener_mode && listeners == 0) {
|
||||
ha_alert("[%s.main()] No enabled listener found (check for 'bind' directives) ! Exiting.\n", argv[0]);
|
||||
/* Note: we don't have to send anything to the old pids because we
|
||||
* never stopped them. */
|
||||
|
|
|
|||
Loading…
Reference in a new issue