Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add option to listen resource and refactor option storage #504

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@ This file is used to list changes made in each version of the haproxy cookbook.

## Unreleased

- Add `option` property to `haproxy_listen`
- Refactor `option`s internally to not create an unnecessary nested array

## 12.3.4 - *2024-05-03*

## 12.3.3 - *2024-05-03*
Expand Down
2 changes: 1 addition & 1 deletion documentation/haproxy_acl.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ Introduced: v4.2.0
## Properties

| Name | Type | Default | Description | Allowed Values |
|----------------|---------------|---------|--------------------------------------------------------------|---------------------------------|
| -------------- | ------------- | ------- | ------------------------------------------------------------ | ------------------------------- |
| `acl` | String, Array | None | The access control list items | Allowed HAProxy acl values |
| `section` | String | None | The section where the acl(s) should be applied | `frontend`, `listen`, `backend` |
| `section_name` | String | None | The name of the specific frontend, listen or backend section | |
Expand Down
18 changes: 9 additions & 9 deletions documentation/haproxy_backend.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,15 @@ This resource also uses the following partial resources:
* [_config_file](https://github.com/sous-chefs/haproxy/tree/master/documentation/partial_config_file.md)
* [_extra_options](https://github.com/sous-chefs/haproxy/tree/master/documentation/partial_extra_options.md)

| Name | Type | Default | Description | Allowed Values |
|-----------------|---------------|---------|--------------------------------------------------------------------|----------------------------|
| `mode` | String | None | Set the running mode or protocol of the instance | `http`, `tcp` |
| `server` | String, Array | None | Servers the backend routes to | |
| `tcp_request` | String, Array | None | HAProxy `tcp-request` settings | |
| `acl` | Array | None | Access control list items | Allowed HAProxy acl values |
| `option` | Array | None | Array of HAProxy `option` directives | |
| `extra_options` | Hash | None | Used for setting any HAProxy directives | |
| `hash_type` | String | None | Specify a method to use for mapping hashes to servers | `consistent`, `map-based` |
| Name | Type | Default | Description | Allowed Values |
| --------------- | ------------- | ------- | ----------------------------------------------------- | -------------------------- |
| `mode` | String | None | Set the running mode or protocol of the instance | `http`, `tcp` |
| `server` | String, Array | None | Servers the backend routes to | |
| `tcp_request` | String, Array | None | HAProxy `tcp-request` settings | |
| `acl` | Array | None | Access control list items | Allowed HAProxy acl values |
| `option` | Array | None | Array of HAProxy `option` directives | |
| `extra_options` | Hash | None | Used for setting any HAProxy directives | |
| `hash_type` | String | None | Specify a method to use for mapping hashes to servers | `consistent`, `map-based` |

## Examples

Expand Down
2 changes: 1 addition & 1 deletion documentation/haproxy_cache.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ This resource also uses the following partial resources:
* [_config_file](https://github.com/sous-chefs/haproxy/tree/master/documentation/partial_config_file.md)

| Name | Type | Default | Description | Allowed Values |
|-------------------|---------|---------------|-----------------------------------------------------|----------------|
| ----------------- | ------- | ------------- | --------------------------------------------------- | -------------- |
| `cache_name` | String | name_property | Name of the cache | |
| `total_max_size` | Integer | None | Define the size in RAM of the cache in megabytes | |
| `max_object_size` | Integer | None | Define the maximum size of the objects to be cached | |
Expand Down
2 changes: 1 addition & 1 deletion documentation/haproxy_config_defaults.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ This resource also uses the following partial resources:
* [_extra_options](https://github.com/sous-chefs/haproxy/tree/master/documentation/partial_extra_options.md)

| Name | Type | Default | Description | Allowed Values |
|-------------------|-------------|------------------------------------------------------|-----------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------|
| ----------------- | ----------- | ---------------------------------------------------- | --------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
| `timeout` | Hash | `{ client: '10s', server: '10s', connect: '10s' }` | Default HAProxy timeout values | |
| `log` | String | `global` | Enable per-instance logging of events and traffic | |
| `mode` | String | `http` | Set the running mode or protocol of the instance | `http`, `tcp` |
Expand Down
2 changes: 1 addition & 1 deletion documentation/haproxy_config_global.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ This resource also uses the following partial resources:
* [_extra_options](https://github.com/sous-chefs/haproxy/tree/master/documentation/partial_extra_options.md)

| Name | Type | Default | Description | Allowed Values |
|-----------------|-----------------------|-----------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------|------------------|
| --------------- | --------------------- | --------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | ---------------- |
| `pidfile` | String | `/var/run/haproxy.pid` | Writes PIDs of all daemons into file `<pidfile>` | |
| `log` | String, Array | `/dev/log syslog info` | Adds a global syslog server | |
| `daemon` | TrueClass, FalseClass | `true` | Makes the process fork into background | |
Expand Down
2 changes: 1 addition & 1 deletion documentation/haproxy_fastcgi.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ This resource also uses the following partial resources:
* [_extra_options](https://github.com/sous-chefs/haproxy/tree/master/documentation/partial_extra_options.md)

| Name | Type | Default | Description | Allowed Values |
|--------------|--------|---------|----------------------------------------------------------------------------------|----------------|
| ------------ | ------ | ------- | -------------------------------------------------------------------------------- | -------------- |
| `fastcgi` | String | None | Name property - sets the fcgi-app name | |
| `docroot` | String | None | Define the document root on the remote host | |
| `index` | String | None | Define the script name that will be appended after an URI that ends with a slash | |
Expand Down
20 changes: 10 additions & 10 deletions documentation/haproxy_frontend.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,16 +18,16 @@ This resource also uses the following partial resources:
* [_config_file](https://github.com/sous-chefs/haproxy/tree/master/documentation/partial_config_file.md)
* [_extra_options](https://github.com/sous-chefs/haproxy/tree/master/documentation/partial_extra_options.md)

| Name | Type | Default | Description | Allowed Values |
|-------------------|---------------|--------------|--------------------------------------------------------------------------|----------------------------|
| `bind` | String, Hash | `0.0.0.0:80` | String - sets as given. Hash joins with a space | |
| `mode` | String | None | Set the running mode or protocol of the instance | `http`, `tcp` |
| `maxconn` | Integer | None | Sets the maximum per-process number of concurrent connections | |
| `default_backend` | String | None | Specify the backend to use when no "use_backend" rule has been matched | |
| `use_backend` | Array | None | Switch to a specific backend if/unless an ACL-based condition is matched | |
| `acl` | Array | None | Access control list items | Allowed HAProxy acl values |
| `option` | Array | None | Array of HAProxy `option` directives | |
| `stats` | Hash | None | Enable stats with various options | |
| Name | Type | Default | Description | Allowed Values |
| ----------------- | ------------ | ------------ | ------------------------------------------------------------------------ | -------------------------- |
| `bind` | String, Hash | `0.0.0.0:80` | String - sets as given. Hash joins with a space | |
| `mode` | String | None | Set the running mode or protocol of the instance | `http`, `tcp` |
| `maxconn` | Integer | None | Sets the maximum per-process number of concurrent connections | |
| `default_backend` | String | None | Specify the backend to use when no "use_backend" rule has been matched | |
| `use_backend` | Array | None | Switch to a specific backend if/unless an ACL-based condition is matched | |
| `acl` | Array | None | Access control list items | Allowed HAProxy acl values |
| `option` | Array | None | Array of HAProxy `option` directives | |
| `stats` | Hash | None | Enable stats with various options | |

## Examples

Expand Down
2 changes: 1 addition & 1 deletion documentation/haproxy_install.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ This resource also uses the following partial resources:
* [_config_file](https://github.com/sous-chefs/haproxy/tree/master/documentation/partial_config_file.md)

| Name | Type | Default | Description | Allowed Values |
|----------------------|---------|------------------------------------------------------------------|--------------------------------------------------------------------------------|---------------------|
| -------------------- | ------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------ | ------------------- |
| `install_type` | String | None | Set the installation type | `package`, `source` |
| `bin_prefix` | String | `/usr` | Set the source compile prefix | |
| `sensitive` | Boolean | `true` | Ensure that sensitive resource data is not logged by the chef-client | |
Expand Down
27 changes: 14 additions & 13 deletions documentation/haproxy_listen.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,19 +20,20 @@ This resource also uses the following partial resources:
* [_config_file](https://github.com/sous-chefs/haproxy/tree/master/documentation/partial_config_file.md)
* [_extra_options](https://github.com/sous-chefs/haproxy/tree/master/documentation/partial_extra_options.md)

| Name | Type | Default | Description | Allowed Values |
|-------------------|---------------|--------------|--------------------------------------------------------------------------|----------------------------|
| `bind` | String, Hash | `0.0.0.0:80` | String - sets as given. Hash - joins with a space | |
| `mode` | String | None | Set the running mode or protocol of the instance | `http`, `tcp` |
| `maxconn` | Integer | None | Sets the maximum per-process number of concurrent connections | |
| `default_backend` | String | None | Specify the backend to use when no "use_backend" rule has been matched | |
| `use_backend` | Array | None | Switch to a specific backend if/unless an ACL-based condition is matched | |
| `http_request` | Array | None | Switch to a specific backend if/unless an ACL-based condition is matched | |
| `http_response` | Array | None | Switch to a specific backend if/unless an ACL-based condition is matched | |
| `acl` | Array | None | Access control list items | Allowed HAProxy acl values |
| `server` | Array | None | Servers the listen section routes to | |
| `stats` | Hash | None | Enable stats with various options | |
| `hash_type` | String | None | Specify a method to use for mapping hashes to servers | `consistent`, `map-based` |
| Name | Type | Default | Description | Allowed Values |
| ----------------- | ------------ | ------------ | ------------------------------------------------------------------------ | -------------------------- |
| `bind` | String, Hash | `0.0.0.0:80` | String - sets as given. Hash - joins with a space | |
| `mode` | String | None | Set the running mode or protocol of the instance | `http`, `tcp` |
| `maxconn` | Integer | None | Sets the maximum per-process number of concurrent connections | |
| `default_backend` | String | None | Specify the backend to use when no "use_backend" rule has been matched | |
| `use_backend` | Array | None | Switch to a specific backend if/unless an ACL-based condition is matched | |
| `http_request` | Array | None | Switch to a specific backend if/unless an ACL-based condition is matched | |
| `http_response` | Array | None | Switch to a specific backend if/unless an ACL-based condition is matched | |
| `acl` | Array | None | Access control list items | Allowed HAProxy acl values |
| `server` | Array | None | Servers the listen section routes to | |
| `stats` | Hash | None | Enable stats with various options | |
| `hash_type` | String | None | Specify a method to use for mapping hashes to servers | `consistent`, `map-based` |
| `option` | Array | None | Array of HAProxy `option` directives | |

## Examples

Expand Down
4 changes: 2 additions & 2 deletions documentation/haproxy_mailer.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ This resource also uses the following partial resources:

| Name | Type | Default | Description | Allowed Values |
| --------- | ------------- | ------- | --------------------------------------------------------------------------------------- | -------------- |
| `mailer` | String, Array | None | Defines a mailer inside a mailers section ||
| `timeout` | String | None | Defines the time available for a mail/connection to be made and send to the mail-server ||
| `mailer` | String, Array | None | Defines a mailer inside a mailers section | |
| `timeout` | String | None | Defines the time available for a mail/connection to be made and send to the mail-server | |

## Examples

Expand Down
Loading
Loading