From 8fa9a83b992f1b105d4105ea05b82d807ebbd76a Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Tue, 1 Dec 2020 19:49:52 +0100 Subject: [PATCH 01/59] recommit for updates in build 67 --- REPOSTRUCTURE.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/REPOSTRUCTURE.md b/REPOSTRUCTURE.md index f325c24..7d68709 100644 --- a/REPOSTRUCTURE.md +++ b/REPOSTRUCTURE.md @@ -59,11 +59,10 @@ | `-- haproxy_head.erb |-- tests | `-- UTF_Files -|-- CHANGELOG.md |-- Gemfile |-- Gemfile.lock |-- Jenkinsfile |-- LICENSE `-- README.md -12 directories, 54 files +12 directories, 53 files From c5fdd79084739e2974fce3649dbfbdb4ad6a2017 Mon Sep 17 00:00:00 2001 From: 12ww1160 Date: Sat, 2 Jan 2021 20:29:47 +0100 Subject: [PATCH 02/59] Delete REPOSTRUCTURE.md --- REPOSTRUCTURE.md | 68 ------------------------------------------------ 1 file changed, 68 deletions(-) delete mode 100644 REPOSTRUCTURE.md diff --git a/REPOSTRUCTURE.md b/REPOSTRUCTURE.md deleted file mode 100644 index 7d68709..0000000 --- a/REPOSTRUCTURE.md +++ /dev/null @@ -1,68 +0,0 @@ -. -|-- doc -| |-- css -| | |-- common.css -| | |-- full_list.css -| | `-- style.css -| |-- js -| | |-- app.js -| | |-- full_list.js -| | `-- jquery.js -| |-- puppet_classes -| | |-- cd_haproxy_3A_3Afirewall_3A_3Aiptables.html -| | |-- cd_haproxy_3A_3Amain_3A_3Aconfig.html -| | |-- cd_haproxy_3A_3Amain_3A_3Adirs.html -| | |-- cd_haproxy_3A_3Amain_3A_3Afiles.html -| | |-- cd_haproxy_3A_3Amain_3A_3Ainstall.html -| | |-- cd_haproxy_3A_3Amain_3A_3Auser.html -| | |-- cd_haproxy_3A_3Aparams.html -| | |-- cd_haproxy_3A_3Aserver_3A_3Aproxy_test.html -| | |-- cd_haproxy_3A_3Aserver_3A_3Aservice.html -| | `-- cd_haproxy.html -| |-- puppet_defined_types -| | `-- cd_haproxy_3A_3Aserver_3A_3Aproxy.html -| |-- file.README.html -| |-- frames.html -| |-- _index.html -| |-- index.html -| |-- puppet_class_list.html -| |-- puppet_defined_type_list.html -| `-- top-level-namespace.html -|-- manifests -| |-- firewall -| | `-- iptables.pp -| |-- main -| | |-- config.pp -| | |-- dirs.pp -| | |-- files.pp -| | |-- install.pp -| | `-- user.pp -| |-- server -| | |-- proxy.pp -| | |-- proxy_test.pp -| | `-- service.pp -| |-- init.pp -| `-- params.pp -|-- templates -| |-- errors -| | |-- 400_http.erb -| | |-- 403_http.erb -| | |-- 408_http.erb -| | |-- 500_http.erb -| | |-- 502_http.erb -| | |-- 503_http.erb -| | `-- 504_http.erb -| |-- haproxy_acl_rule.erb -| |-- haproxy_backend_rule.erb -| |-- haproxy.cfg -| |-- haproxy_frontend_rule.erb -| `-- haproxy_head.erb -|-- tests -| `-- UTF_Files -|-- Gemfile -|-- Gemfile.lock -|-- Jenkinsfile -|-- LICENSE -`-- README.md - -12 directories, 53 files From 5117acd7c3ca1785746ee2a5d25fe84577fc218e Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Sat, 2 Jan 2021 22:35:04 +0100 Subject: [PATCH 03/59] recommit for updates in build 107 --- .scannerwork/.sonar_lock | 0 .scannerwork/report-task.txt | 6 ++ doc/file.README.html | 187 ++++++++++++++--------------------- doc/index.html | 187 ++++++++++++++--------------------- 4 files changed, 154 insertions(+), 226 deletions(-) create mode 100644 .scannerwork/.sonar_lock create mode 100644 .scannerwork/report-task.txt diff --git a/.scannerwork/.sonar_lock b/.scannerwork/.sonar_lock new file mode 100644 index 0000000..e69de29 diff --git a/.scannerwork/report-task.txt b/.scannerwork/report-task.txt new file mode 100644 index 0000000..1ccfec8 --- /dev/null +++ b/.scannerwork/report-task.txt @@ -0,0 +1,6 @@ +projectKey=confdroid_kubernetes +serverUrl=http://sonarqube.confdroid.com +serverVersion=7.9.1.27448 +dashboardUrl=http://sonarqube.confdroid.com/dashboard?id=confdroid_kubernetes +ceTaskId=AXbFBnlxjqhs1DgyZKhw +ceTaskUrl=http://sonarqube.confdroid.com/api/ce/task?id=AXbFBnlxjqhs1DgyZKhw diff --git a/doc/file.README.html b/doc/file.README.html index 476a718..ff33232 100644 --- a/doc/file.README.html +++ b/doc/file.README.html @@ -61,98 +61,76 @@

|

-

Synopsis

+

[[TOC]]

+ +

Synopsis

HA Proxy is a very powerful and popular open source load -balanacer to balance incoming requests between multiple instances of web-, +balancer to balance incoming requests between multiple instances of web-, application- or database servers etc.

cd_haproxy automates installation and configuration of HA proxy including self-healing, monitoring and firewall etc.

-

WARNING

+

WARNING

**__!!! Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and -what would have been configured, hence previuos configurations outside the +what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production!!! __**

-

Table of Contents

+

Features

+ +

INSTALLATION

-

Features

+

CONFIGURATION

+
  • +

    manage haproxy user

    +
  • +

    manage directories (file system permissions, selinux context)

    +
  • +

    manage files (file system permissions, content, selinux context)

    +
  • +

    manage proxy instances through a define

    +
  • +

    frontend options

    +
  • +

    backend options

    +
  • +

    ACL options

    +
-

INSTALLATION * install rpm binaries

+

SERVICE

+
  • +

    manage haproxy service

    +
  • +

    restart service after changes in the configuration

    +
-

CONFIGURATION * manage haproxy user * manage directories (file system -permissions, selinux context) * manage files (file system permissions, -content, selinux context) * manage proxy instances through a define * -frontend options * backend options * ACL options

+

Puppet Documentation

-

SERVICE * manage haproxy service * restart service after changes in the -configuration

- -

Repo Structure

- -

Repostructure has moved to REPOSTRUCTURE.md in repo.

- -

Repo Documentation

- -

See the full Puppet documentation in docs/index.html

- -

Dependencies

+

Dependencies

All dependencies must be included in the catalogue.

-

Deployment

+

Deployment

-
native Puppet deployment
+

native Puppet deployment

via site.pp or nodes.pp

@@ -160,41 +138,30 @@ managing file fragments

include cd_haproxy } -

through Foreman:

+

through Foreman

-

In order to apply parameters through Foreman, -cd_haproxy::params must be added to the host or hostgroup -in question.

+

Add params.pp to the host or hostgroup.

See more -details about class deployment on Confdroid.com.

+href="https://confdroid.com/2017/05/deploying-our-puppet-modules/">details.

-

Parameters

+

Documentation

-

The following parameters are editable via params.pp or through ENC -(recommended). Values changed will take immediate effect -at next puppet run. Services will be restarted where neccessary.

+

Parameters

-

The full -list of Parameters is available here and in -the docs folder in the software repo.

+

The parameters are defined and described in params.pp. The +documentation is provided via puppet strings in HTML format, +please see doc/index.html via web browser.

-

Mandatory Parameters

-
  • -

    hy_host_fqdn: Specify the FQDN of the host(s) where HA proxy -should be running. The module will install it only on the host in question.

    -
+

Proxy Configuration

-

Optional Parameters

+

Via Define

-

Proxy Configuration

- -

The proxy instances are configured in /etc/haproxy/haproxy.cfg, which is -concatenated from various templates through a define in this puppet module. -In order to create proxy instances, you will need an external class, which -addresses the define, like so:

+

The proxy instances are configured in +/etc/haproxy/haproxy.cfg, which is concatenated from various +templates through a define in this puppet module. In order to create proxy +instances, you will need an external class, which addresses the define, +like so:

cd_haproxy::server::proxy { 'testing':
     haproxy_fqdn    =>  'node.example.net',
@@ -205,65 +172,59 @@ addresses the define, like so:

backend_name => 'test01-backend', }
-

This allows the puppet module to create the sections in the configuration -file as required. The haproxy service will be restarted after the changes -in the configuration file are made. haproxy_fqdn -must contain the fqdn of the haproxy -server where this should be configured, otherwise the -templates are not being populated. Multiple ACLs need to be added as array, -and will create one line each.

+

This class should be placed in an internal configuration repo specific to +your environment.

-

SELINUX

+

SELINUX

All files and directories are configured with correct selinux context. If selinux is disabled, these contexts are ignored.

-

Known Problems

+

Known Problems

-

Support

+

Support

  • OS: CentOS 7

  • Puppet 5.x

-

Tests

+

Tests

  • Puppet Lint

  • excluded tests:

    • -

      --no-class_inherits_from_params_class-check:relavant only to +

      --no-class_inherits_from_params_class-check:relevant only to non-supported outdated puppet versions

    • --no-variable_scope-check: not applicable as we are inheriting -parameters from params class. the lint check does not distinguish between -facts and inherited parameters.

      +parameters from the params class. the lint check does not distinguish +between facts and inherited parameters.

    • -

      --no-80chars-check: it is not always possible to stay within -80 characters, although typically only occurring on the parameter vault +

      --no-80chars-check: it is not always possible to stay within +80 characters, although typically only occurring on the parameter vault params.pp.

    • --no-arrow_alignment-check: this check leads to actually not -having am easily readable arrow alignment, as this checks per -block, not per class.

      +having easily readable arrow alignments, as this checks per +block, not per class.

  • Puppet Parser

  • ERB Template Parser

  • -

    Test for unwanted UTF8 files in the Puppet code as this causes problems -with PuppetDB (see tests/UTF_Files)

    - -

    Contact Us

    - -

    contact Us

    +

    Test for unwanted UTF8 files

-

Disclaimer

+

Contact Us

-

ConfDroid as entity is entirely independent from Puppet. We provide custom +

contact Us

+ +

Disclaimer

+ +

ConfDroid as entity is independent from Puppet. We provide custom configuration modules, written for specific purposes and specific environments. The modules are tested and supported only as documented, and require testing in designated environments (i.e. lab or development diff --git a/doc/index.html b/doc/index.html index dc57f2c..7c8cf3e 100644 --- a/doc/index.html +++ b/doc/index.html @@ -61,98 +61,76 @@

|

-

Synopsis

+

[[TOC]]

+ +

Synopsis

HA Proxy is a very powerful and popular open source load -balanacer to balance incoming requests between multiple instances of web-, +balancer to balance incoming requests between multiple instances of web-, application- or database servers etc.

cd_haproxy automates installation and configuration of HA proxy including self-healing, monitoring and firewall etc.

-

WARNING

+

WARNING

**__!!! Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and -what would have been configured, hence previuos configurations outside the +what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production!!! __**

-

Table of Contents

+

Features

+ +

INSTALLATION

-

Features

+

CONFIGURATION

+
  • +

    manage haproxy user

    +
  • +

    manage directories (file system permissions, selinux context)

    +
  • +

    manage files (file system permissions, content, selinux context)

    +
  • +

    manage proxy instances through a define

    +
  • +

    frontend options

    +
  • +

    backend options

    +
  • +

    ACL options

    +
-

INSTALLATION * install rpm binaries

+

SERVICE

+
  • +

    manage haproxy service

    +
  • +

    restart service after changes in the configuration

    +
-

CONFIGURATION * manage haproxy user * manage directories (file system -permissions, selinux context) * manage files (file system permissions, -content, selinux context) * manage proxy instances through a define * -frontend options * backend options * ACL options

+

Puppet Documentation

-

SERVICE * manage haproxy service * restart service after changes in the -configuration

- -

Repo Structure

- -

Repostructure has moved to REPOSTRUCTURE.md in repo.

- -

Repo Documentation

- -

See the full Puppet documentation in docs/index.html

- -

Dependencies

+

Dependencies

All dependencies must be included in the catalogue.

-

Deployment

+

Deployment

-
native Puppet deployment
+

native Puppet deployment

via site.pp or nodes.pp

@@ -160,41 +138,30 @@ managing file fragments

include cd_haproxy } -

through Foreman:

+

through Foreman

-

In order to apply parameters through Foreman, -cd_haproxy::params must be added to the host or hostgroup -in question.

+

Add params.pp to the host or hostgroup.

See more -details about class deployment on Confdroid.com.

+href="https://confdroid.com/2017/05/deploying-our-puppet-modules/">details.

-

Parameters

+

Documentation

-

The following parameters are editable via params.pp or through ENC -(recommended). Values changed will take immediate effect -at next puppet run. Services will be restarted where neccessary.

+

Parameters

-

The full -list of Parameters is available here and in -the docs folder in the software repo.

+

The parameters are defined and described in params.pp. The +documentation is provided via puppet strings in HTML format, +please see doc/index.html via web browser.

-

Mandatory Parameters

-
  • -

    hy_host_fqdn: Specify the FQDN of the host(s) where HA proxy -should be running. The module will install it only on the host in question.

    -
+

Proxy Configuration

-

Optional Parameters

+

Via Define

-

Proxy Configuration

- -

The proxy instances are configured in /etc/haproxy/haproxy.cfg, which is -concatenated from various templates through a define in this puppet module. -In order to create proxy instances, you will need an external class, which -addresses the define, like so:

+

The proxy instances are configured in +/etc/haproxy/haproxy.cfg, which is concatenated from various +templates through a define in this puppet module. In order to create proxy +instances, you will need an external class, which addresses the define, +like so:

cd_haproxy::server::proxy { 'testing':
     haproxy_fqdn    =>  'node.example.net',
@@ -205,65 +172,59 @@ addresses the define, like so:

backend_name => 'test01-backend', }
-

This allows the puppet module to create the sections in the configuration -file as required. The haproxy service will be restarted after the changes -in the configuration file are made. haproxy_fqdn -must contain the fqdn of the haproxy -server where this should be configured, otherwise the -templates are not being populated. Multiple ACLs need to be added as array, -and will create one line each.

+

This class should be placed in an internal configuration repo specific to +your environment.

-

SELINUX

+

SELINUX

All files and directories are configured with correct selinux context. If selinux is disabled, these contexts are ignored.

-

Known Problems

+

Known Problems

-

Support

+

Support

  • OS: CentOS 7

  • Puppet 5.x

-

Tests

+

Tests

  • Puppet Lint

  • excluded tests:

    • -

      --no-class_inherits_from_params_class-check:relavant only to +

      --no-class_inherits_from_params_class-check:relevant only to non-supported outdated puppet versions

    • --no-variable_scope-check: not applicable as we are inheriting -parameters from params class. the lint check does not distinguish between -facts and inherited parameters.

      +parameters from the params class. the lint check does not distinguish +between facts and inherited parameters.

    • -

      --no-80chars-check: it is not always possible to stay within -80 characters, although typically only occurring on the parameter vault +

      --no-80chars-check: it is not always possible to stay within +80 characters, although typically only occurring on the parameter vault params.pp.

    • --no-arrow_alignment-check: this check leads to actually not -having am easily readable arrow alignment, as this checks per -block, not per class.

      +having easily readable arrow alignments, as this checks per +block, not per class.

  • Puppet Parser

  • ERB Template Parser

  • -

    Test for unwanted UTF8 files in the Puppet code as this causes problems -with PuppetDB (see tests/UTF_Files)

    - -

    Contact Us

    - -

    contact Us

    +

    Test for unwanted UTF8 files

-

Disclaimer

+

Contact Us

-

ConfDroid as entity is entirely independent from Puppet. We provide custom +

contact Us

+ +

Disclaimer

+ +

ConfDroid as entity is independent from Puppet. We provide custom configuration modules, written for specific purposes and specific environments. The modules are tested and supported only as documented, and require testing in designated environments (i.e. lab or development From 33865b82bd47b6fab07ef4ea665253dea6612d3b Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Mon, 4 Jan 2021 16:24:41 +0100 Subject: [PATCH 04/59] recommit for updates in build 108 --- .scannerwork/report-task.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.scannerwork/report-task.txt b/.scannerwork/report-task.txt index 1ccfec8..3e2f9ba 100644 --- a/.scannerwork/report-task.txt +++ b/.scannerwork/report-task.txt @@ -1,6 +1,6 @@ -projectKey=confdroid_kubernetes +projectKey=cd_haproxy serverUrl=http://sonarqube.confdroid.com serverVersion=7.9.1.27448 -dashboardUrl=http://sonarqube.confdroid.com/dashboard?id=confdroid_kubernetes -ceTaskId=AXbFBnlxjqhs1DgyZKhw -ceTaskUrl=http://sonarqube.confdroid.com/api/ce/task?id=AXbFBnlxjqhs1DgyZKhw +dashboardUrl=http://sonarqube.confdroid.com/dashboard?id=cd_haproxy +ceTaskId=AXbOABWGjqhs1DgyZKh3 +ceTaskUrl=http://sonarqube.confdroid.com/api/ce/task?id=AXbOABWGjqhs1DgyZKh3 From 5c589be5c6f421514dde13df68c3ccf9b25aea11 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Mon, 4 Jan 2021 16:29:18 +0100 Subject: [PATCH 05/59] recommit for updates in build 109 --- .scannerwork/report-task.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.scannerwork/report-task.txt b/.scannerwork/report-task.txt index 3e2f9ba..1b8d6ec 100644 --- a/.scannerwork/report-task.txt +++ b/.scannerwork/report-task.txt @@ -2,5 +2,5 @@ projectKey=cd_haproxy serverUrl=http://sonarqube.confdroid.com serverVersion=7.9.1.27448 dashboardUrl=http://sonarqube.confdroid.com/dashboard?id=cd_haproxy -ceTaskId=AXbOABWGjqhs1DgyZKh3 -ceTaskUrl=http://sonarqube.confdroid.com/api/ce/task?id=AXbOABWGjqhs1DgyZKh3 +ceTaskId=AXbOBFF6jqhs1DgyZKh5 +ceTaskUrl=http://sonarqube.confdroid.com/api/ce/task?id=AXbOBFF6jqhs1DgyZKh5 From a2c81360135edc437d2e94ad5e174d2621201c86 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Mon, 4 Jan 2021 16:32:39 +0100 Subject: [PATCH 06/59] recommit for updates in build 110 --- .scannerwork/report-task.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.scannerwork/report-task.txt b/.scannerwork/report-task.txt index 1b8d6ec..da998f0 100644 --- a/.scannerwork/report-task.txt +++ b/.scannerwork/report-task.txt @@ -2,5 +2,5 @@ projectKey=cd_haproxy serverUrl=http://sonarqube.confdroid.com serverVersion=7.9.1.27448 dashboardUrl=http://sonarqube.confdroid.com/dashboard?id=cd_haproxy -ceTaskId=AXbOBFF6jqhs1DgyZKh5 -ceTaskUrl=http://sonarqube.confdroid.com/api/ce/task?id=AXbOBFF6jqhs1DgyZKh5 +ceTaskId=AXbOB2K8jqhs1DgyZKh6 +ceTaskUrl=http://sonarqube.confdroid.com/api/ce/task?id=AXbOB2K8jqhs1DgyZKh6 From bacf6bc8538e929f23999f7c748c5c1588545854 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Mon, 4 Jan 2021 19:11:11 +0100 Subject: [PATCH 07/59] recommit for updates in build 111 --- .scannerwork/report-task.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.scannerwork/report-task.txt b/.scannerwork/report-task.txt index da998f0..9b814ea 100644 --- a/.scannerwork/report-task.txt +++ b/.scannerwork/report-task.txt @@ -2,5 +2,5 @@ projectKey=cd_haproxy serverUrl=http://sonarqube.confdroid.com serverVersion=7.9.1.27448 dashboardUrl=http://sonarqube.confdroid.com/dashboard?id=cd_haproxy -ceTaskId=AXbOB2K8jqhs1DgyZKh6 -ceTaskUrl=http://sonarqube.confdroid.com/api/ce/task?id=AXbOB2K8jqhs1DgyZKh6 +ceTaskId=AXbOmIahjqhs1DgyZKh7 +ceTaskUrl=http://sonarqube.confdroid.com/api/ce/task?id=AXbOmIahjqhs1DgyZKh7 From c4eabe8b88aab95a126a9f1a7683f5b46aa31876 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Mon, 4 Jan 2021 19:18:23 +0100 Subject: [PATCH 08/59] recommit for updates in build 112 --- .scannerwork/report-task.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.scannerwork/report-task.txt b/.scannerwork/report-task.txt index 9b814ea..bf823d4 100644 --- a/.scannerwork/report-task.txt +++ b/.scannerwork/report-task.txt @@ -2,5 +2,5 @@ projectKey=cd_haproxy serverUrl=http://sonarqube.confdroid.com serverVersion=7.9.1.27448 dashboardUrl=http://sonarqube.confdroid.com/dashboard?id=cd_haproxy -ceTaskId=AXbOmIahjqhs1DgyZKh7 -ceTaskUrl=http://sonarqube.confdroid.com/api/ce/task?id=AXbOmIahjqhs1DgyZKh7 +ceTaskId=AXbOnx2_jqhs1DgyZKh8 +ceTaskUrl=http://sonarqube.confdroid.com/api/ce/task?id=AXbOnx2_jqhs1DgyZKh8 From 7421da8d7fb641a63953da204f0d7121174e98ae Mon Sep 17 00:00:00 2001 From: 12ww1160 Date: Thu, 9 Sep 2021 11:03:59 +0000 Subject: [PATCH 09/59] Deleted .scannerwork/.sonar_lock, .scannerwork/report-task.txt, doc/css/common.css, doc/css/full_list.css, doc/css/style.css, doc/js/app.js, doc/js/full_list.js, doc/js/jquery.js, doc/puppet_classes/cd_haproxy.html, doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html, doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html, doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Adirs.html, doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html, doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Ainstall.html, doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Auser.html, doc/puppet_classes/cd_haproxy_3A_3Aparams.html, doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aproxy_test.html, doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aservice.html, doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html, doc/_index.html, doc/file.README.html, doc/frames.html, doc/index.html, doc/puppet_class_list.html, doc/puppet_defined_type_list.html, doc/top-level-namespace.html, tests/UTF_Files files --- .scannerwork/.sonar_lock | 0 .scannerwork/report-task.txt | 6 - doc/_index.html | 181 ---- doc/css/common.css | 8 - doc/css/full_list.css | 58 -- doc/css/style.css | 496 ---------- doc/file.README.html | 241 ----- doc/frames.html | 17 - doc/index.html | 241 ----- doc/js/app.js | 292 ------ doc/js/full_list.js | 216 ---- doc/js/jquery.js | 4 - doc/puppet_class_list.html | 117 --- doc/puppet_classes/cd_haproxy.html | 136 --- ...d_haproxy_3A_3Afirewall_3A_3Aiptables.html | 177 ---- .../cd_haproxy_3A_3Amain_3A_3Aconfig.html | 152 --- .../cd_haproxy_3A_3Amain_3A_3Adirs.html | 199 ---- .../cd_haproxy_3A_3Amain_3A_3Afiles.html | 399 -------- .../cd_haproxy_3A_3Amain_3A_3Ainstall.html | 156 --- .../cd_haproxy_3A_3Amain_3A_3Auser.html | 191 ---- .../cd_haproxy_3A_3Aparams.html | 922 ------------------ ...d_haproxy_3A_3Aserver_3A_3Aproxy_test.html | 173 ---- .../cd_haproxy_3A_3Aserver_3A_3Aservice.html | 167 ---- doc/puppet_defined_type_list.html | 54 - .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html | 437 --------- doc/top-level-namespace.html | 98 -- tests/UTF_Files | 6 - 27 files changed, 5144 deletions(-) delete mode 100644 .scannerwork/.sonar_lock delete mode 100644 .scannerwork/report-task.txt delete mode 100644 doc/_index.html delete mode 100644 doc/css/common.css delete mode 100644 doc/css/full_list.css delete mode 100644 doc/css/style.css delete mode 100644 doc/file.README.html delete mode 100644 doc/frames.html delete mode 100644 doc/index.html delete mode 100644 doc/js/app.js delete mode 100644 doc/js/full_list.js delete mode 100644 doc/js/jquery.js delete mode 100644 doc/puppet_class_list.html delete mode 100644 doc/puppet_classes/cd_haproxy.html delete mode 100644 doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html delete mode 100644 doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html delete mode 100644 doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Adirs.html delete mode 100644 doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html delete mode 100644 doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Ainstall.html delete mode 100644 doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Auser.html delete mode 100644 doc/puppet_classes/cd_haproxy_3A_3Aparams.html delete mode 100644 doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aproxy_test.html delete mode 100644 doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aservice.html delete mode 100644 doc/puppet_defined_type_list.html delete mode 100644 doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html delete mode 100644 doc/top-level-namespace.html delete mode 100644 tests/UTF_Files diff --git a/.scannerwork/.sonar_lock b/.scannerwork/.sonar_lock deleted file mode 100644 index e69de29..0000000 diff --git a/.scannerwork/report-task.txt b/.scannerwork/report-task.txt deleted file mode 100644 index bf823d4..0000000 --- a/.scannerwork/report-task.txt +++ /dev/null @@ -1,6 +0,0 @@ -projectKey=cd_haproxy -serverUrl=http://sonarqube.confdroid.com -serverVersion=7.9.1.27448 -dashboardUrl=http://sonarqube.confdroid.com/dashboard?id=cd_haproxy -ceTaskId=AXbOnx2_jqhs1DgyZKh8 -ceTaskUrl=http://sonarqube.confdroid.com/api/ce/task?id=AXbOnx2_jqhs1DgyZKh8 diff --git a/doc/_index.html b/doc/_index.html deleted file mode 100644 index d590fc2..0000000 --- a/doc/_index.html +++ /dev/null @@ -1,181 +0,0 @@ - - - - - - - Documentation by YARD 0.9.16 - - - - - - - - - - - - - - - - - -

- -
- - -

Documentation by YARD 0.9.16

-
-

Alphabetic Index

- -

Puppet Class Listing A-Z

- - - - - - -
- - - - -
- - -

Defined Type Listing A-Z

- - - - - - -
- - - - -
- - - - - - - -

File Listing

- - -
- - -
- -
- - - -
- - \ No newline at end of file diff --git a/doc/css/common.css b/doc/css/common.css deleted file mode 100644 index d28b093..0000000 --- a/doc/css/common.css +++ /dev/null @@ -1,8 +0,0 @@ -/* Ensure the search bar doesn't overlap with links */ -.fixed_header { - padding-bottom: 25px; -} - -#full_list { - padding-top: 15px; -} diff --git a/doc/css/full_list.css b/doc/css/full_list.css deleted file mode 100644 index fa35982..0000000 --- a/doc/css/full_list.css +++ /dev/null @@ -1,58 +0,0 @@ -body { - margin: 0; - font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; - font-size: 13px; - height: 101%; - overflow-x: hidden; - background: #fafafa; -} - -h1 { padding: 12px 10px; padding-bottom: 0; margin: 0; font-size: 1.4em; } -.clear { clear: both; } -.fixed_header { position: fixed; background: #fff; width: 100%; padding-bottom: 10px; margin-top: 0; top: 0; z-index: 9999; height: 70px; } -#search { position: absolute; right: 5px; top: 9px; padding-left: 24px; } -#content.insearch #search, #content.insearch #noresults { background: url(data:image/gif;base64,R0lGODlhEAAQAPYAAP///wAAAPr6+pKSkoiIiO7u7sjIyNjY2J6engAAAI6OjsbGxjIyMlJSUuzs7KamppSUlPLy8oKCghwcHLKysqSkpJqamvT09Pj4+KioqM7OzkRERAwMDGBgYN7e3ujo6Ly8vCoqKjY2NkZGRtTU1MTExDw8PE5OTj4+PkhISNDQ0MrKylpaWrS0tOrq6nBwcKysrLi4uLq6ul5eXlxcXGJiYoaGhuDg4H5+fvz8/KKiohgYGCwsLFZWVgQEBFBQUMzMzDg4OFhYWBoaGvDw8NbW1pycnOLi4ubm5kBAQKqqqiQkJCAgIK6urnJyckpKSjQ0NGpqatLS0sDAwCYmJnx8fEJCQlRUVAoKCggICLCwsOTk5ExMTPb29ra2tmZmZmhoaNzc3KCgoBISEiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCAAAACwAAAAAEAAQAAAHaIAAgoMgIiYlg4kACxIaACEJCSiKggYMCRselwkpghGJBJEcFgsjJyoAGBmfggcNEx0flBiKDhQFlIoCCA+5lAORFb4AJIihCRbDxQAFChAXw9HSqb60iREZ1omqrIPdJCTe0SWI09GBACH5BAkIAAAALAAAAAAQABAAAAdrgACCgwc0NTeDiYozCQkvOTo9GTmDKy8aFy+NOBA7CTswgywJDTIuEjYFIY0JNYMtKTEFiRU8Pjwygy4ws4owPyCKwsMAJSTEgiQlgsbIAMrO0dKDGMTViREZ14kYGRGK38nHguHEJcvTyIEAIfkECQgAAAAsAAAAABAAEAAAB2iAAIKDAggPg4iJAAMJCRUAJRIqiRGCBI0WQEEJJkWDERkYAAUKEBc4Po1GiKKJHkJDNEeKig4URLS0ICImJZAkuQAhjSi/wQyNKcGDCyMnk8u5rYrTgqDVghgZlYjcACTA1sslvtHRgQAh+QQJCAAAACwAAAAAEAAQAAAHZ4AAgoOEhYaCJSWHgxGDJCQARAtOUoQRGRiFD0kJUYWZhUhKT1OLhR8wBaaFBzQ1NwAlkIszCQkvsbOHL7Y4q4IuEjaqq0ZQD5+GEEsJTDCMmIUhtgk1lo6QFUwJVDKLiYJNUd6/hoEAIfkECQgAAAAsAAAAABAAEAAAB2iAAIKDhIWGgiUlh4MRgyQkjIURGRiGGBmNhJWHm4uen4ICCA+IkIsDCQkVACWmhwSpFqAABQoQF6ALTkWFnYMrVlhWvIKTlSAiJiVVPqlGhJkhqShHV1lCW4cMqSkAR1ofiwsjJyqGgQAh+QQJCAAAACwAAAAAEAAQAAAHZ4AAgoOEhYaCJSWHgxGDJCSMhREZGIYYGY2ElYebi56fhyWQniSKAKKfpaCLFlAPhl0gXYNGEwkhGYREUywag1wJwSkHNDU3D0kJYIMZQwk8MjPBLx9eXwuETVEyAC/BOKsuEjYFhoEAIfkECQgAAAAsAAAAABAAEAAAB2eAAIKDhIWGgiUlh4MRgyQkjIURGRiGGBmNhJWHm4ueICImip6CIQkJKJ4kigynKaqKCyMnKqSEK05StgAGQRxPYZaENqccFgIID4KXmQBhXFkzDgOnFYLNgltaSAAEpxa7BQoQF4aBACH5BAkIAAAALAAAAAAQABAAAAdogACCg4SFggJiPUqCJSWGgkZjCUwZACQkgxGEXAmdT4UYGZqCGWQ+IjKGGIUwPzGPhAc0NTewhDOdL7Ykji+dOLuOLhI2BbaFETICx4MlQitdqoUsCQ2vhKGjglNfU0SWmILaj43M5oEAOwAAAAAAAAAAAA==) no-repeat center left; } -#full_list { padding: 0; list-style: none; margin-left: 0; margin-top: 80px; font-size: 1.1em; } -#full_list ul { padding: 0; } -#full_list li { padding: 0; margin: 0; list-style: none; } -#full_list li .item { padding: 5px 5px 5px 12px; } -#noresults { padding: 7px 12px; background: #fff; } -#content.insearch #noresults { margin-left: 7px; } -li.collapsed ul { display: none; } -li a.toggle { cursor: default; position: relative; left: -5px; top: 4px; text-indent: -999px; width: 10px; height: 9px; margin-left: -10px; display: block; float: left; background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAASCAYAAABb0P4QAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAK8AAACvABQqw0mAAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTM5jWRgMAAAAVdEVYdENyZWF0aW9uIFRpbWUAMy8xNC8wOeNZPpQAAAE2SURBVDiNrZTBccIwEEXfelIAHUA6CZ24BGaWO+FuzZAK4k6gg5QAdGAq+Bxs2Yqx7BzyL7Llp/VfzZeQhCTc/ezuGzKKnKSzpCxXJM8fwNXda3df5RZETlIt6YUzSQDs93sl8w3wBZxCCE10GM1OcWbWjB2mWgEH4Mfdyxm3PSepBHibgQE2wLe7r4HjEidpnXMYdQPKEMJcsZ4zs2POYQOcaPfwMVOo58zsAdMt18BuoVDPxUJRacELbXv3hUIX2vYmOUvi8C8ydz/ThjXrqKqqLbDIAdsCKBd+Wo7GWa7o9qzOQHVVVXeAbs+yHHCH4aTsaCOQqunmUy1yBUAXkdMIfMlgF5EXLo2OpV/c/Up7jG4hhHcYLgWzAZXUc2b2ixsfvc/RmNNfOXD3Q/oeL9axJE1yT9IOoUu6MGUkAAAAAElFTkSuQmCC) no-repeat bottom left; } -li.collapsed a.toggle { opacity: 0.5; cursor: default; background-position: top left; } -li { color: #888; cursor: pointer; } -li.deprecated { text-decoration: line-through; font-style: italic; } -li.odd { background: #f0f0f0; } -li.even { background: #fafafa; } -.item:hover { background: #ddd; } -li small:before { content: "("; } -li small:after { content: ")"; } -li small.search_info { display: none; } -a, a:visited { text-decoration: none; color: #05a; } -li.clicked > .item { background: #05a; color: #ccc; } -li.clicked > .item a, li.clicked > .item a:visited { color: #eee; } -li.clicked > .item a.toggle { opacity: 0.5; background-position: bottom right; } -li.collapsed.clicked a.toggle { background-position: top right; } -#search input { border: 1px solid #bbb; border-radius: 3px; } -#full_list_nav { margin-left: 10px; font-size: 0.9em; display: block; color: #aaa; } -#full_list_nav a, #nav a:visited { color: #358; } -#full_list_nav a:hover { background: transparent; color: #5af; } -#full_list_nav span:after { content: ' | '; } -#full_list_nav span:last-child:after { content: ''; } - -#content h1 { margin-top: 0; } -li { white-space: nowrap; cursor: normal; } -li small { display: block; font-size: 0.8em; } -li small:before { content: ""; } -li small:after { content: ""; } -li small.search_info { display: none; } -#search { width: 170px; position: static; margin: 3px; margin-left: 10px; font-size: 0.9em; color: #888; padding-left: 0; padding-right: 24px; } -#content.insearch #search { background-position: center right; } -#search input { width: 110px; } - -#full_list.insearch ul { display: block; } -#full_list.insearch .item { display: none; } -#full_list.insearch .found { display: block; padding-left: 11px !important; } -#full_list.insearch li a.toggle { display: none; } -#full_list.insearch li small.search_info { display: block; } diff --git a/doc/css/style.css b/doc/css/style.css deleted file mode 100644 index 0bf7e2c..0000000 --- a/doc/css/style.css +++ /dev/null @@ -1,496 +0,0 @@ -html { - width: 100%; - height: 100%; -} -body { - font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; - font-size: 13px; - width: 100%; - margin: 0; - padding: 0; - display: flex; - display: -webkit-flex; - display: -ms-flexbox; -} - -#nav { - position: relative; - width: 100%; - height: 100%; - border: 0; - border-right: 1px dotted #eee; - overflow: auto; -} -.nav_wrap { - margin: 0; - padding: 0; - width: 20%; - height: 100%; - position: relative; - display: flex; - display: -webkit-flex; - display: -ms-flexbox; - flex-shrink: 0; - -webkit-flex-shrink: 0; - -ms-flex: 1 0; -} -#resizer { - position: absolute; - right: -5px; - top: 0; - width: 10px; - height: 100%; - cursor: col-resize; - z-index: 9999; -} -#main { - flex: 5 1; - -webkit-flex: 5 1; - -ms-flex: 5 1; - outline: none; - position: relative; - background: #fff; - padding: 1.2em; - padding-top: 0.2em; -} - -@media (max-width: 920px) { - .nav_wrap { width: 100%; top: 0; right: 0; overflow: visible; position: absolute; } - #resizer { display: none; } - #nav { - z-index: 9999; - background: #fff; - display: none; - position: absolute; - top: 40px; - right: 12px; - width: 500px; - max-width: 80%; - height: 80%; - overflow-y: scroll; - border: 1px solid #999; - border-collapse: collapse; - box-shadow: -7px 5px 25px #aaa; - border-radius: 2px; - } -} - -@media (min-width: 920px) { - body { height: 100%; overflow: hidden; } - #main { height: 100%; overflow: auto; } - #search { display: none; } -} - -#main img { max-width: 100%; } -h1 { font-size: 25px; margin: 1em 0 0.5em; padding-top: 4px; border-top: 1px dotted #d5d5d5; } -h1.noborder { border-top: 0px; margin-top: 0; padding-top: 4px; } -h1.title { margin-bottom: 10px; } -h1.alphaindex { margin-top: 0; font-size: 22px; } -h2 { - padding: 0; - padding-bottom: 3px; - border-bottom: 1px #aaa solid; - font-size: 1.4em; - margin: 1.8em 0 0.5em; - position: relative; -} -h2 small { font-weight: normal; font-size: 0.7em; display: inline; position: absolute; right: 0; } -h2 small a { - display: block; - height: 20px; - border: 1px solid #aaa; - border-bottom: 0; - border-top-left-radius: 5px; - background: #f8f8f8; - position: relative; - padding: 2px 7px; -} -.clear { clear: both; } -.inline { display: inline; } -.inline p:first-child { display: inline; } -.docstring, .tags, #filecontents { font-size: 15px; line-height: 1.5145em; } -.docstring p > code, .docstring p > tt, .tags p > code, .tags p > tt { - color: #c7254e; background: #f9f2f4; padding: 2px 4px; font-size: 1em; - border-radius: 4px; -} -.docstring h1, .docstring h2, .docstring h3, .docstring h4 { padding: 0; border: 0; border-bottom: 1px dotted #bbb; } -.docstring h1 { font-size: 1.2em; } -.docstring h2 { font-size: 1.1em; } -.docstring h3, .docstring h4 { font-size: 1em; border-bottom: 0; padding-top: 10px; } -.summary_desc .object_link a, .docstring .object_link a { - font-family: monospace; font-size: 1.05em; - color: #05a; background: #EDF4FA; padding: 2px 4px; font-size: 1em; - border-radius: 4px; -} -.rdoc-term { padding-right: 25px; font-weight: bold; } -.rdoc-list p { margin: 0; padding: 0; margin-bottom: 4px; } -.summary_desc pre.code .object_link a, .docstring pre.code .object_link a { - padding: 0px; background: inherit; color: inherit; border-radius: inherit; -} - -/* style for */ -#filecontents table, .docstring table { border-collapse: collapse; } -#filecontents table th, #filecontents table td, -.docstring table th, .docstring table td { border: 1px solid #ccc; padding: 8px; padding-right: 17px; } -#filecontents table tr:nth-child(odd), -.docstring table tr:nth-child(odd) { background: #eee; } -#filecontents table tr:nth-child(even), -.docstring table tr:nth-child(even) { background: #fff; } -#filecontents table th, .docstring table th { background: #fff; } - -/* style for
    */ -#filecontents li > p, .docstring li > p { margin: 0px; } -#filecontents ul, .docstring ul { padding-left: 20px; } -/* style for
    */ -#filecontents dl, .docstring dl { border: 1px solid #ccc; } -#filecontents dt, .docstring dt { background: #ddd; font-weight: bold; padding: 3px 5px; } -#filecontents dd, .docstring dd { padding: 5px 0px; margin-left: 18px; } -#filecontents dd > p, .docstring dd > p { margin: 0px; } - -.note { - color: #222; - margin: 20px 0; - padding: 10px; - border: 1px solid #eee; - border-radius: 3px; - display: block; -} -.docstring .note { - border-left-color: #ccc; - border-left-width: 5px; -} -.note.todo { background: #ffffc5; border-color: #ececaa; } -.note.returns_void { background: #efefef; } -.note.deprecated { background: #ffe5e5; border-color: #e9dada; } -.note.title.deprecated { background: #ffe5e5; border-color: #e9dada; } -.note.private { background: #ffffc5; border-color: #ececaa; } -.note.title { padding: 3px 6px; font-size: 0.9em; font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; display: inline; } -.summary_signature + .note.title { margin-left: 7px; } -h1 .note.title { font-size: 0.5em; font-weight: normal; padding: 3px 5px; position: relative; top: -3px; text-transform: capitalize; } -.note.title { background: #efefef; } -.note.title.constructor { color: #fff; background: #6a98d6; border-color: #6689d6; } -.note.title.writeonly { color: #fff; background: #45a638; border-color: #2da31d; } -.note.title.readonly { color: #fff; background: #6a98d6; border-color: #6689d6; } -.note.title.private { background: #d5d5d5; border-color: #c5c5c5; } -.note.title.not_defined_here { background: transparent; border: none; font-style: italic; } -.discussion .note { margin-top: 6px; } -.discussion .note:first-child { margin-top: 0; } - -h3.inherited { - font-style: italic; - font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; - font-weight: normal; - padding: 0; - margin: 0; - margin-top: 12px; - margin-bottom: 3px; - font-size: 13px; -} -p.inherited { - padding: 0; - margin: 0; - margin-left: 25px; -} - -.box_info dl { - margin: 0; - border: 0; - width: 100%; - font-size: 1em; - display: flex; - display: -webkit-flex; - display: -ms-flexbox; -} -.box_info dl dt { - flex-shrink: 0; - -webkit-flex-shrink: 1; - -ms-flex-shrink: 1; - width: 100px; - text-align: right; - font-weight: bold; - border: 1px solid #aaa; - border-width: 1px 0px 0px 1px; - padding: 6px 0; - padding-right: 10px; -} -.box_info dl dd { - flex-grow: 1; - -webkit-flex-grow: 1; - -ms-flex: 1; - max-width: 420px; - padding: 6px 0; - padding-right: 20px; - border: 1px solid #aaa; - border-width: 1px 1px 0 0; - overflow: hidden; - position: relative; -} -.box_info dl:last-child > * { - border-bottom: 1px solid #aaa; -} -.box_info dl:nth-child(odd) > * { background: #eee; } -.box_info dl:nth-child(even) > * { background: #fff; } -.box_info dl > * { margin: 0; } - -ul.toplevel { list-style: none; padding-left: 0; font-size: 1.1em; } -.index_inline_list { padding-left: 0; font-size: 1.1em; } - -.index_inline_list li { - list-style: none; - display: inline-block; - padding: 0 12px; - line-height: 30px; - margin-bottom: 5px; -} - -dl.constants { margin-left: 10px; } -dl.constants dt { font-weight: bold; font-size: 1.1em; margin-bottom: 5px; } -dl.constants.compact dt { display: inline-block; font-weight: normal } -dl.constants dd { width: 75%; white-space: pre; font-family: monospace; margin-bottom: 18px; } -dl.constants .docstring .note:first-child { margin-top: 5px; } - -.summary_desc { - margin-left: 32px; - display: block; - font-family: sans-serif; - font-size: 1.1em; - margin-top: 8px; - line-height: 1.5145em; - margin-bottom: 0.8em; -} -.summary_desc tt { font-size: 0.9em; } -dl.constants .note { padding: 2px 6px; padding-right: 12px; margin-top: 6px; } -dl.constants .docstring { margin-left: 32px; font-size: 0.9em; font-weight: normal; } -dl.constants .tags { padding-left: 32px; font-size: 0.9em; line-height: 0.8em; } -dl.constants .discussion *:first-child { margin-top: 0; } -dl.constants .discussion *:last-child { margin-bottom: 0; } - -.method_details { border-top: 1px dotted #ccc; margin-top: 25px; padding-top: 0; } -.method_details.first { border: 0; margin-top: 5px; } -.method_details.first h3.signature { margin-top: 1em; } -p.signature, h3.signature { - font-size: 1.1em; font-weight: normal; font-family: Monaco, Consolas, Courier, monospace; - padding: 6px 10px; margin-top: 1em; - background: #E8F4FF; border: 1px solid #d8d8e5; border-radius: 5px; -} -p.signature tt, -h3.signature tt { font-family: Monaco, Consolas, Courier, monospace; } -p.signature .overload, -h3.signature .overload { display: block; } -p.signature .extras, -h3.signature .extras { font-weight: normal; font-family: sans-serif; color: #444; font-size: 1em; } -p.signature .not_defined_here, -h3.signature .not_defined_here, -p.signature .aliases, -h3.signature .aliases { display: block; font-weight: normal; font-size: 0.9em; font-family: sans-serif; margin-top: 0px; color: #555; } -p.signature .aliases .names, -h3.signature .aliases .names { font-family: Monaco, Consolas, Courier, monospace; font-weight: bold; color: #000; font-size: 1.2em; } - -.tags .tag_title { font-size: 1.05em; margin-bottom: 0; font-weight: bold; } -.tags .tag_title tt { color: initial; padding: initial; background: initial; } -.tags ul { margin-top: 5px; padding-left: 30px; list-style: square; } -.tags ul li { margin-bottom: 3px; } -.tags ul .name { font-family: monospace; font-weight: bold; } -.tags ul .note { padding: 3px 6px; } -.tags { margin-bottom: 12px; } - -.tags .examples .tag_title { margin-bottom: 10px; font-weight: bold; } -.tags .examples .inline p { padding: 0; margin: 0; font-weight: bold; font-size: 1em; } -.tags .examples .inline p:before { content: "▸"; font-size: 1em; margin-right: 5px; } - -.tags .overload .overload_item { list-style: none; margin-bottom: 25px; } -.tags .overload .overload_item .signature { - padding: 2px 8px; - background: #F1F8FF; border: 1px solid #d8d8e5; border-radius: 3px; -} -.tags .overload .signature { margin-left: -15px; font-family: monospace; display: block; font-size: 1.1em; } -.tags .overload .docstring { margin-top: 15px; } - -.defines { display: none; } - -#method_missing_details .notice.this { position: relative; top: -8px; color: #888; padding: 0; margin: 0; } - -.showSource { font-size: 0.9em; } -.showSource a, .showSource a:visited { text-decoration: none; color: #666; } - -#content a, #content a:visited { text-decoration: none; color: #05a; } -#content a:hover { background: #ffffa5; } - -ul.summary { - list-style: none; - font-family: monospace; - font-size: 1em; - line-height: 1.5em; - padding-left: 0px; -} -ul.summary a, ul.summary a:visited { - text-decoration: none; font-size: 1.1em; -} -ul.summary li { margin-bottom: 5px; } -.summary_signature { padding: 4px 8px; background: #f8f8f8; border: 1px solid #f0f0f0; border-radius: 5px; } -.summary_signature:hover { background: #CFEBFF; border-color: #A4CCDA; cursor: pointer; } -.summary_signature.deprecated { background: #ffe5e5; border-color: #e9dada; } -ul.summary.compact li { display: inline-block; margin: 0px 5px 0px 0px; line-height: 2.6em;} -ul.summary.compact .summary_signature { padding: 5px 7px; padding-right: 4px; } -#content .summary_signature:hover a, -#content .summary_signature:hover a:visited { - background: transparent; - color: #049; -} - -p.inherited a { font-family: monospace; font-size: 0.9em; } -p.inherited { word-spacing: 5px; font-size: 1.2em; } - -p.children { font-size: 1.2em; } -p.children a { font-size: 0.9em; } -p.children strong { font-size: 0.8em; } -p.children strong.modules { padding-left: 5px; } - -ul.fullTree { display: none; padding-left: 0; list-style: none; margin-left: 0; margin-bottom: 10px; } -ul.fullTree ul { margin-left: 0; padding-left: 0; list-style: none; } -ul.fullTree li { text-align: center; padding-top: 18px; padding-bottom: 12px; background: url(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAAHtJREFUeNqMzrEJAkEURdGzuhgZbSoYWcAWoBVsB4JgZAGmphsZCZYzTQgWNCYrDN9RvMmHx+X916SUBFbo8CzD1idXrLErw1mQttgXtyrOcQ/Ny5p4Qh+2XqLYYazsPWNTiuMkRxa4vcV+evuNAUOLIx5+c2hyzv7hNQC67Q+/HHmlEwAAAABJRU5ErkJggg==) no-repeat top center; } -ul.fullTree li:first-child { padding-top: 0; background: transparent; } -ul.fullTree li:last-child { padding-bottom: 0; } -.showAll ul.fullTree { display: block; } -.showAll .inheritName { display: none; } - -#search { position: absolute; right: 12px; top: 0px; z-index: 9000; } -#search a { - display: block; float: left; - padding: 4px 8px; text-decoration: none; color: #05a; fill: #05a; - border: 1px solid #d8d8e5; - border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; - background: #F1F8FF; - box-shadow: -1px 1px 3px #ddd; -} -#search a:hover { background: #f5faff; color: #06b; fill: #06b; } -#search a.active { - background: #568; padding-bottom: 20px; color: #fff; fill: #fff; - border: 1px solid #457; - border-top-left-radius: 5px; border-top-right-radius: 5px; -} -#search a.inactive { color: #999; fill: #999; } -.inheritanceTree, .toggleDefines { - float: right; - border-left: 1px solid #aaa; - position: absolute; top: 0; right: 0; - height: 100%; - background: #f6f6f6; - padding: 5px; - min-width: 55px; - text-align: center; -} - -#menu { font-size: 1.3em; color: #bbb; } -#menu .title, #menu a { font-size: 0.7em; } -#menu .title a { font-size: 1em; } -#menu .title { color: #555; } -#menu a, #menu a:visited { color: #333; text-decoration: none; border-bottom: 1px dotted #bbd; } -#menu a:hover { color: #05a; } - -#footer { margin-top: 15px; border-top: 1px solid #ccc; text-align: center; padding: 7px 0; color: #999; } -#footer a, #footer a:visited { color: #444; text-decoration: none; border-bottom: 1px dotted #bbd; } -#footer a:hover { color: #05a; } - -#listing ul.alpha { font-size: 1.1em; } -#listing ul.alpha { margin: 0; padding: 0; padding-bottom: 10px; list-style: none; } -#listing ul.alpha li.letter { font-size: 1.4em; padding-bottom: 10px; } -#listing ul.alpha ul { margin: 0; padding-left: 15px; } -#listing ul small { color: #666; font-size: 0.7em; } - -li.r1 { background: #f0f0f0; } -li.r2 { background: #fafafa; } - -#content ul.summary li.deprecated .summary_signature a, -#content ul.summary li.deprecated .summary_signature a:visited { text-decoration: line-through; font-style: italic; } - -#toc { - position: relative; - float: right; - overflow-x: auto; - right: -3px; - margin-left: 20px; - margin-bottom: 20px; - padding: 20px; padding-right: 30px; - max-width: 300px; - z-index: 5000; - background: #fefefe; - border: 1px solid #ddd; - box-shadow: -2px 2px 6px #bbb; -} -#toc .title { margin: 0; } -#toc ol { padding-left: 1.8em; } -#toc li { font-size: 1.1em; line-height: 1.7em; } -#toc > ol > li { font-size: 1.1em; font-weight: bold; } -#toc ol > ol { font-size: 0.9em; } -#toc ol ol > ol { padding-left: 2.3em; } -#toc ol + li { margin-top: 0.3em; } -#toc.hidden { padding: 10px; background: #fefefe; box-shadow: none; } -#toc.hidden:hover { background: #fafafa; } -#filecontents h1 + #toc.nofloat { margin-top: 0; } -@media (max-width: 560px) { - #toc { - margin-left: 0; - margin-top: 16px; - float: none; - max-width: none; - } -} - -/* syntax highlighting */ -.source_code { display: none; padding: 3px 8px; border-left: 8px solid #ddd; margin-top: 5px; } -#filecontents pre.code, .docstring pre.code, .source_code pre { font-family: monospace; } -#filecontents pre.code, .docstring pre.code { display: block; } -.source_code .lines { padding-right: 12px; color: #555; text-align: right; } -#filecontents pre.code, .docstring pre.code, -.tags pre.example { - padding: 9px 14px; - margin-top: 4px; - border: 1px solid #e1e1e8; - background: #f7f7f9; - border-radius: 4px; - font-size: 1em; - overflow-x: auto; - line-height: 1.2em; -} -pre.code { color: #000; tab-size: 2; } -pre.code .info.file { color: #555; } -pre.code .val { color: #036A07; } -pre.code .tstring_content, -pre.code .heredoc_beg, pre.code .heredoc_end, -pre.code .qwords_beg, pre.code .qwords_end, pre.code .qwords_sep, -pre.code .words_beg, pre.code .words_end, pre.code .words_sep, -pre.code .qsymbols_beg, pre.code .qsymbols_end, pre.code .qsymbols_sep, -pre.code .symbols_beg, pre.code .symbols_end, pre.code .symbols_sep, -pre.code .tstring, pre.code .dstring { color: #036A07; } -pre.code .fid, pre.code .rubyid_new, pre.code .rubyid_to_s, -pre.code .rubyid_to_sym, pre.code .rubyid_to_f, -pre.code .dot + pre.code .id, -pre.code .rubyid_to_i pre.code .rubyid_each { color: #0085FF; } -pre.code .comment { color: #0066FF; } -pre.code .const, pre.code .constant { color: #585CF6; } -pre.code .label, -pre.code .symbol { color: #C5060B; } -pre.code .kw, -pre.code .rubyid_require, -pre.code .rubyid_extend, -pre.code .rubyid_include { color: #0000FF; } -pre.code .ivar { color: #318495; } -pre.code .gvar, -pre.code .rubyid_backref, -pre.code .rubyid_nth_ref { color: #6D79DE; } -pre.code .regexp, .dregexp { color: #036A07; } -pre.code a { border-bottom: 1px dotted #bbf; } -/* inline code */ -*:not(pre) > code { - padding: 1px 3px 1px 3px; - border: 1px solid #E1E1E8; - background: #F7F7F9; - border-radius: 4px; -} - -/* Color fix for links */ -#content .summary_desc pre.code .id > .object_link a, /* identifier */ -#content .docstring pre.code .id > .object_link a { color: #0085FF; } -#content .summary_desc pre.code .const > .object_link a, /* constant */ -#content .docstring pre.code .const > .object_link a { color: #585CF6; } diff --git a/doc/file.README.html b/doc/file.README.html deleted file mode 100644 index ff33232..0000000 --- a/doc/file.README.html +++ /dev/null @@ -1,241 +0,0 @@ - - - - - - - File: README - - — Documentation by YARD 0.9.16 - - - - - - - - - - - - - - - - - - - -
    - - -
    -

    |

    - -

    [[TOC]]

    - -

    Synopsis

    - -

    HA Proxy is a very powerful and popular open source load -balancer to balance incoming requests between multiple instances of web-, -application- or database servers etc.

    - -

    cd_haproxy automates installation and configuration of -HA proxy including self-healing, monitoring and firewall etc.

    - -

    WARNING

    - -

    **__!!! Attention: Never use this puppet module on systems which have -been previously configured manually. It is impossible to predict how and -what would have been configured, hence previous configurations outside the -scope of this module may be overwritten! Automated configurations require a -test environment to verify that the module suits the purpose intended by -the user, as well as tune the parameters, before deploying into live -production!!! __**

    - -

    Features

    - -

    INSTALLATION

    -
    • -

      install rpm binaries

      -
    - -

    CONFIGURATION

    -
    • -

      manage haproxy user

      -
    • -

      manage directories (file system permissions, selinux context)

      -
    • -

      manage files (file system permissions, content, selinux context)

      -
    • -

      manage proxy instances through a define

      -
    • -

      frontend options

      -
    • -

      backend options

      -
    • -

      ACL options

      -
    - -

    SERVICE

    -
    • -

      manage haproxy service

      -
    • -

      restart service after changes in the configuration

      -
    - -

    Puppet Documentation

    - -

    Dependencies

    - -

    All dependencies must be included in the catalogue.

    - - -

    Deployment

    - -

    native Puppet deployment

    - -

    via site.pp or nodes.pp

    - -
    node 'example.example.net' {
    -  include cd_haproxy
    -}
    - -

    through Foreman

    - -

    Add params.pp to the host or hostgroup.

    - -

    See details.

    - -

    Documentation

    - -

    Parameters

    - -

    The parameters are defined and described in params.pp. The -documentation is provided via puppet strings in HTML format, -please see doc/index.html via web browser.

    - -

    Proxy Configuration

    - -

    Via Define

    - -

    The proxy instances are configured in -/etc/haproxy/haproxy.cfg, which is concatenated from various -templates through a define in this puppet module. In order to create proxy -instances, you will need an external class, which addresses the define, -like so:

    - -
    cd_haproxy::server::proxy { 'testing':
    -    haproxy_fqdn    =>  'node.example.net',
    -    frontend_name   =>  'test01-frontend',
    -    frontend_mode   =>  'http',
    -    acl_rule        =>  ['too_fast fe_sess_rate ge 10',
    -                          'network_allowed src 0.0.0.0/0'],
    -    backend_name    =>  'test01-backend',
    -  }
    - -

    This class should be placed in an internal configuration repo specific to -your environment.

    - -

    SELINUX

    - -

    All files and directories are configured with correct selinux context. If -selinux is disabled, these contexts are ignored.

    - -

    Known Problems

    - -

    Support

    -
    • -

      OS: CentOS 7

      -
    • -

      Puppet 5.x

      -
    - -

    Tests

    -
    • -

      Puppet Lint

      -
    • -

      excluded tests:

      -
      • -

        --no-class_inherits_from_params_class-check:relevant only to -non-supported outdated puppet versions

        -
      • -

        --no-variable_scope-check: not applicable as we are inheriting -parameters from the params class. the lint check does not distinguish -between facts and inherited parameters.

        -
      • -

        --no-80chars-check: it is not always possible to stay within -80 characters, although typically only occurring on the parameter vault -params.pp.

        -
      • -

        --no-arrow_alignment-check: this check leads to actually not -having easily readable arrow alignments, as this checks per -block, not per class.

        -
      -
    • -

      Puppet Parser

      -
    • -

      ERB Template Parser

      -
    • -

      Test for unwanted UTF8 files

      -
    - -

    Contact Us

    - -

    contact Us

    - -

    Disclaimer

    - -

    ConfDroid as entity is independent from Puppet. We provide custom -configuration modules, written for specific purposes and specific -environments. The modules are tested and supported only as documented, and -require testing in designated environments (i.e. lab or development -environments) for parameter tuning etc. before deploying into production -environments.

    -
    - - - -
    - - \ No newline at end of file diff --git a/doc/frames.html b/doc/frames.html deleted file mode 100644 index b57c778..0000000 --- a/doc/frames.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - - Documentation by YARD 0.9.16 - - - - diff --git a/doc/index.html b/doc/index.html deleted file mode 100644 index 7c8cf3e..0000000 --- a/doc/index.html +++ /dev/null @@ -1,241 +0,0 @@ - - - - - - - File: README - - — Documentation by YARD 0.9.16 - - - - - - - - - - - - - - - - - - - -
    - - -
    -

    |

    - -

    [[TOC]]

    - -

    Synopsis

    - -

    HA Proxy is a very powerful and popular open source load -balancer to balance incoming requests between multiple instances of web-, -application- or database servers etc.

    - -

    cd_haproxy automates installation and configuration of -HA proxy including self-healing, monitoring and firewall etc.

    - -

    WARNING

    - -

    **__!!! Attention: Never use this puppet module on systems which have -been previously configured manually. It is impossible to predict how and -what would have been configured, hence previous configurations outside the -scope of this module may be overwritten! Automated configurations require a -test environment to verify that the module suits the purpose intended by -the user, as well as tune the parameters, before deploying into live -production!!! __**

    - -

    Features

    - -

    INSTALLATION

    -
    • -

      install rpm binaries

      -
    - -

    CONFIGURATION

    -
    • -

      manage haproxy user

      -
    • -

      manage directories (file system permissions, selinux context)

      -
    • -

      manage files (file system permissions, content, selinux context)

      -
    • -

      manage proxy instances through a define

      -
    • -

      frontend options

      -
    • -

      backend options

      -
    • -

      ACL options

      -
    - -

    SERVICE

    -
    • -

      manage haproxy service

      -
    • -

      restart service after changes in the configuration

      -
    - -

    Puppet Documentation

    - -

    Dependencies

    - -

    All dependencies must be included in the catalogue.

    - - -

    Deployment

    - -

    native Puppet deployment

    - -

    via site.pp or nodes.pp

    - -
    node 'example.example.net' {
    -  include cd_haproxy
    -}
    - -

    through Foreman

    - -

    Add params.pp to the host or hostgroup.

    - -

    See details.

    - -

    Documentation

    - -

    Parameters

    - -

    The parameters are defined and described in params.pp. The -documentation is provided via puppet strings in HTML format, -please see doc/index.html via web browser.

    - -

    Proxy Configuration

    - -

    Via Define

    - -

    The proxy instances are configured in -/etc/haproxy/haproxy.cfg, which is concatenated from various -templates through a define in this puppet module. In order to create proxy -instances, you will need an external class, which addresses the define, -like so:

    - -
    cd_haproxy::server::proxy { 'testing':
    -    haproxy_fqdn    =>  'node.example.net',
    -    frontend_name   =>  'test01-frontend',
    -    frontend_mode   =>  'http',
    -    acl_rule        =>  ['too_fast fe_sess_rate ge 10',
    -                          'network_allowed src 0.0.0.0/0'],
    -    backend_name    =>  'test01-backend',
    -  }
    - -

    This class should be placed in an internal configuration repo specific to -your environment.

    - -

    SELINUX

    - -

    All files and directories are configured with correct selinux context. If -selinux is disabled, these contexts are ignored.

    - -

    Known Problems

    - -

    Support

    -
    • -

      OS: CentOS 7

      -
    • -

      Puppet 5.x

      -
    - -

    Tests

    -
    • -

      Puppet Lint

      -
    • -

      excluded tests:

      -
      • -

        --no-class_inherits_from_params_class-check:relevant only to -non-supported outdated puppet versions

        -
      • -

        --no-variable_scope-check: not applicable as we are inheriting -parameters from the params class. the lint check does not distinguish -between facts and inherited parameters.

        -
      • -

        --no-80chars-check: it is not always possible to stay within -80 characters, although typically only occurring on the parameter vault -params.pp.

        -
      • -

        --no-arrow_alignment-check: this check leads to actually not -having easily readable arrow alignments, as this checks per -block, not per class.

        -
      -
    • -

      Puppet Parser

      -
    • -

      ERB Template Parser

      -
    • -

      Test for unwanted UTF8 files

      -
    - -

    Contact Us

    - -

    contact Us

    - -

    Disclaimer

    - -

    ConfDroid as entity is independent from Puppet. We provide custom -configuration modules, written for specific purposes and specific -environments. The modules are tested and supported only as documented, and -require testing in designated environments (i.e. lab or development -environments) for parameter tuning etc. before deploying into production -environments.

    -
    - - - -
    - - \ No newline at end of file diff --git a/doc/js/app.js b/doc/js/app.js deleted file mode 100644 index fecf69d..0000000 --- a/doc/js/app.js +++ /dev/null @@ -1,292 +0,0 @@ -(function() { - -var localStorage = {}, sessionStorage = {}; -try { localStorage = window.localStorage; } catch (e) { } -try { sessionStorage = window.sessionStorage; } catch (e) { } - -function createSourceLinks() { - $('.method_details_list .source_code'). - before("[View source]"); - $('.toggleSource').toggle(function() { - $(this).parent().nextAll('.source_code').slideDown(100); - $(this).text("Hide source"); - }, - function() { - $(this).parent().nextAll('.source_code').slideUp(100); - $(this).text("View source"); - }); -} - -function createDefineLinks() { - var tHeight = 0; - $('.defines').after(" more..."); - $('.toggleDefines').toggle(function() { - tHeight = $(this).parent().prev().height(); - $(this).prev().css('display', 'inline'); - $(this).parent().prev().height($(this).parent().height()); - $(this).text("(less)"); - }, - function() { - $(this).prev().hide(); - $(this).parent().prev().height(tHeight); - $(this).text("more..."); - }); -} - -function createFullTreeLinks() { - var tHeight = 0; - $('.inheritanceTree').toggle(function() { - tHeight = $(this).parent().prev().height(); - $(this).parent().toggleClass('showAll'); - $(this).text("(hide)"); - $(this).parent().prev().height($(this).parent().height()); - }, - function() { - $(this).parent().toggleClass('showAll'); - $(this).parent().prev().height(tHeight); - $(this).text("show all"); - }); -} - -function searchFrameButtons() { - $('.full_list_link').click(function() { - toggleSearchFrame(this, $(this).attr('href')); - return false; - }); - window.addEventListener('message', function(e) { - if (e.data === 'navEscape') { - $('#nav').slideUp(100); - $('#search a').removeClass('active inactive'); - $(window).focus(); - } - }); - - $(window).resize(function() { - if ($('#search:visible').length === 0) { - $('#nav').removeAttr('style'); - $('#search a').removeClass('active inactive'); - $(window).focus(); - } - }); -} - -function toggleSearchFrame(id, link) { - var frame = $('#nav'); - $('#search a').removeClass('active').addClass('inactive'); - if (frame.attr('src') === link && frame.css('display') !== "none") { - frame.slideUp(100); - $('#search a').removeClass('active inactive'); - } - else { - $(id).addClass('active').removeClass('inactive'); - if (frame.attr('src') !== link) frame.attr('src', link); - frame.slideDown(100); - } -} - -function linkSummaries() { - $('.summary_signature').click(function() { - document.location = $(this).find('a').attr('href'); - }); -} - -function summaryToggle() { - $('.summary_toggle').click(function(e) { - e.preventDefault(); - localStorage.summaryCollapsed = $(this).text(); - $('.summary_toggle').each(function() { - $(this).text($(this).text() == "collapse" ? "expand" : "collapse"); - var next = $(this).parent().parent().nextAll('ul.summary').first(); - if (next.hasClass('compact')) { - next.toggle(); - next.nextAll('ul.summary').first().toggle(); - } - else if (next.hasClass('summary')) { - var list = $('
      '); - list.html(next.html()); - list.find('.summary_desc, .note').remove(); - list.find('a').each(function() { - $(this).html($(this).find('strong').html()); - $(this).parent().html($(this)[0].outerHTML); - }); - next.before(list); - next.toggle(); - } - }); - return false; - }); - if (localStorage.summaryCollapsed == "collapse") { - $('.summary_toggle').first().click(); - } else { localStorage.summaryCollapsed = "expand"; } -} - -function constantSummaryToggle() { - $('.constants_summary_toggle').click(function(e) { - e.preventDefault(); - localStorage.summaryCollapsed = $(this).text(); - $('.constants_summary_toggle').each(function() { - $(this).text($(this).text() == "collapse" ? "expand" : "collapse"); - var next = $(this).parent().parent().nextAll('dl.constants').first(); - if (next.hasClass('compact')) { - next.toggle(); - next.nextAll('dl.constants').first().toggle(); - } - else if (next.hasClass('constants')) { - var list = $('
      '); - list.html(next.html()); - list.find('dt').each(function() { - $(this).addClass('summary_signature'); - $(this).text( $(this).text().split('=')[0]); - if ($(this).has(".deprecated").length) { - $(this).addClass('deprecated'); - }; - }); - // Add the value of the constant as "Tooltip" to the summary object - list.find('pre.code').each(function() { - console.log($(this).parent()); - var dt_element = $(this).parent().prev(); - var tooltip = $(this).text(); - if (dt_element.hasClass("deprecated")) { - tooltip = 'Deprecated. ' + tooltip; - }; - dt_element.attr('title', tooltip); - }); - list.find('.docstring, .tags, dd').remove(); - next.before(list); - next.toggle(); - } - }); - return false; - }); - if (localStorage.summaryCollapsed == "collapse") { - $('.constants_summary_toggle').first().click(); - } else { localStorage.summaryCollapsed = "expand"; } -} - -function generateTOC() { - if ($('#filecontents').length === 0) return; - var _toc = $('
        '); - var show = false; - var toc = _toc; - var counter = 0; - var tags = ['h2', 'h3', 'h4', 'h5', 'h6']; - var i; - if ($('#filecontents h1').length > 1) tags.unshift('h1'); - for (i = 0; i < tags.length; i++) { tags[i] = '#filecontents ' + tags[i]; } - var lastTag = parseInt(tags[0][1], 10); - $(tags.join(', ')).each(function() { - if ($(this).parents('.method_details .docstring').length != 0) return; - if (this.id == "filecontents") return; - show = true; - var thisTag = parseInt(this.tagName[1], 10); - if (this.id.length === 0) { - var proposedId = $(this).attr('toc-id'); - if (typeof(proposedId) != "undefined") this.id = proposedId; - else { - var proposedId = $(this).text().replace(/[^a-z0-9-]/ig, '_'); - if ($('#' + proposedId).length > 0) { proposedId += counter; counter++; } - this.id = proposedId; - } - } - if (thisTag > lastTag) { - for (i = 0; i < thisTag - lastTag; i++) { - var tmp = $('
          '); toc.append(tmp); toc = tmp; - } - } - if (thisTag < lastTag) { - for (i = 0; i < lastTag - thisTag; i++) toc = toc.parent(); - } - var title = $(this).attr('toc-title'); - if (typeof(title) == "undefined") title = $(this).text(); - toc.append('
        1. ' + title + '
        2. '); - lastTag = thisTag; - }); - if (!show) return; - html = ''; - $('#content').prepend(html); - $('#toc').append(_toc); - $('#toc .hide_toc').toggle(function() { - $('#toc .top').slideUp('fast'); - $('#toc').toggleClass('hidden'); - $('#toc .title small').toggle(); - }, function() { - $('#toc .top').slideDown('fast'); - $('#toc').toggleClass('hidden'); - $('#toc .title small').toggle(); - }); -} - -function navResizeFn(e) { - if (e.which !== 1) { - navResizeFnStop(); - return; - } - - sessionStorage.navWidth = e.pageX.toString(); - $('.nav_wrap').css('width', e.pageX); - $('.nav_wrap').css('-ms-flex', 'inherit'); -} - -function navResizeFnStop() { - $(window).unbind('mousemove', navResizeFn); - window.removeEventListener('message', navMessageFn, false); -} - -function navMessageFn(e) { - if (e.data.action === 'mousemove') navResizeFn(e.data.event); - if (e.data.action === 'mouseup') navResizeFnStop(); -} - -function navResizer() { - $('#resizer').mousedown(function(e) { - e.preventDefault(); - $(window).mousemove(navResizeFn); - window.addEventListener('message', navMessageFn, false); - }); - $(window).mouseup(navResizeFnStop); - - if (sessionStorage.navWidth) { - navResizeFn({which: 1, pageX: parseInt(sessionStorage.navWidth, 10)}); - } -} - -function navExpander() { - var done = false, timer = setTimeout(postMessage, 500); - function postMessage() { - if (done) return; - clearTimeout(timer); - var opts = { action: 'expand', path: pathId }; - document.getElementById('nav').contentWindow.postMessage(opts, '*'); - done = true; - } - - window.addEventListener('message', function(event) { - if (event.data === 'navReady') postMessage(); - return false; - }, false); -} - -function mainFocus() { - var hash = window.location.hash; - if (hash !== '' && $(hash)[0]) { - $(hash)[0].scrollIntoView(); - } - - setTimeout(function() { $('#main').focus(); }, 10); -} - -$(document).ready(function() { - navResizer(); - navExpander(); - createSourceLinks(); - createDefineLinks(); - createFullTreeLinks(); - searchFrameButtons(); - linkSummaries(); - summaryToggle(); - constantSummaryToggle(); - generateTOC(); - mainFocus(); -}); - -})(); diff --git a/doc/js/full_list.js b/doc/js/full_list.js deleted file mode 100644 index 59069c5..0000000 --- a/doc/js/full_list.js +++ /dev/null @@ -1,216 +0,0 @@ -(function() { - -var $clicked = $(null); -var searchTimeout = null; -var searchCache = []; -var caseSensitiveMatch = false; -var ignoreKeyCodeMin = 8; -var ignoreKeyCodeMax = 46; -var commandKey = 91; - -RegExp.escape = function(text) { - return text.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"); -} - -function escapeShortcut() { - $(document).keydown(function(evt) { - if (evt.which == 27) { - window.parent.postMessage('navEscape', '*'); - } - }); -} - -function navResizer() { - $(window).mousemove(function(e) { - window.parent.postMessage({ - action: 'mousemove', event: {pageX: e.pageX, which: e.which} - }, '*'); - }).mouseup(function(e) { - window.parent.postMessage({action: 'mouseup'}, '*'); - }); - window.parent.postMessage("navReady", "*"); -} - -function clearSearchTimeout() { - clearTimeout(searchTimeout); - searchTimeout = null; -} - -function enableLinks() { - // load the target page in the parent window - $('#full_list li').on('click', function(evt) { - $('#full_list li').removeClass('clicked'); - $clicked = $(this); - $clicked.addClass('clicked'); - evt.stopPropagation(); - - if (evt.target.tagName === 'A') return true; - - var elem = $clicked.find('> .item .object_link a')[0]; - var e = evt.originalEvent; - var newEvent = new MouseEvent(evt.originalEvent.type); - newEvent.initMouseEvent(e.type, e.canBubble, e.cancelable, e.view, e.detail, e.screenX, e.screenY, e.clientX, e.clientY, e.ctrlKey, e.altKey, e.shiftKey, e.metaKey, e.button, e.relatedTarget); - elem.dispatchEvent(newEvent); - evt.preventDefault(); - return false; - }); -} - -function enableToggles() { - // show/hide nested classes on toggle click - $('#full_list a.toggle').on('click', function(evt) { - evt.stopPropagation(); - evt.preventDefault(); - $(this).parent().parent().toggleClass('collapsed'); - highlight(); - }); -} - -function populateSearchCache() { - $('#full_list li .item').each(function() { - var $node = $(this); - var $link = $node.find('.object_link a'); - if ($link.length > 0) { - searchCache.push({ - node: $node, - link: $link, - name: $link.text(), - fullName: $link.attr('title').split(' ')[0] - }); - } - }); -} - -function enableSearch() { - $('#search input').keyup(function(event) { - if (ignoredKeyPress(event)) return; - if (this.value === "") { - clearSearch(); - } else { - performSearch(this.value); - } - }); - - $('#full_list').after(""); -} - -function ignoredKeyPress(event) { - if ( - (event.keyCode > ignoreKeyCodeMin && event.keyCode < ignoreKeyCodeMax) || - (event.keyCode == commandKey) - ) { - return true; - } else { - return false; - } -} - -function clearSearch() { - clearSearchTimeout(); - $('#full_list .found').removeClass('found').each(function() { - var $link = $(this).find('.object_link a'); - $link.text($link.text()); - }); - $('#full_list, #content').removeClass('insearch'); - $clicked.parents().removeClass('collapsed'); - highlight(); -} - -function performSearch(searchString) { - clearSearchTimeout(); - $('#full_list, #content').addClass('insearch'); - $('#noresults').text('').hide(); - partialSearch(searchString, 0); -} - -function partialSearch(searchString, offset) { - var lastRowClass = ''; - var i = null; - for (i = offset; i < Math.min(offset + 50, searchCache.length); i++) { - var item = searchCache[i]; - var searchName = (searchString.indexOf('::') != -1 ? item.fullName : item.name); - var matchString = buildMatchString(searchString); - var matchRegexp = new RegExp(matchString, caseSensitiveMatch ? "" : "i"); - if (searchName.match(matchRegexp) == null) { - item.node.removeClass('found'); - item.link.text(item.link.text()); - } - else { - item.node.addClass('found'); - item.node.removeClass(lastRowClass).addClass(lastRowClass == 'r1' ? 'r2' : 'r1'); - lastRowClass = item.node.hasClass('r1') ? 'r1' : 'r2'; - item.link.html(item.name.replace(matchRegexp, "$&")); - } - } - if(i == searchCache.length) { - searchDone(); - } else { - searchTimeout = setTimeout(function() { - partialSearch(searchString, i); - }, 0); - } -} - -function searchDone() { - searchTimeout = null; - highlight(); - if ($('#full_list li:visible').size() === 0) { - $('#noresults').text('No results were found.').hide().fadeIn(); - } else { - $('#noresults').text('').hide(); - } - $('#content').removeClass('insearch'); -} - -function buildMatchString(searchString, event) { - caseSensitiveMatch = searchString.match(/[A-Z]/) != null; - var regexSearchString = RegExp.escape(searchString); - if (caseSensitiveMatch) { - regexSearchString += "|" + - $.map(searchString.split(''), function(e) { return RegExp.escape(e); }). - join('.+?'); - } - return regexSearchString; -} - -function highlight() { - $('#full_list li:visible').each(function(n) { - $(this).removeClass('even odd').addClass(n % 2 == 0 ? 'odd' : 'even'); - }); -} - -/** - * Expands the tree to the target element and its immediate - * children. - */ -function expandTo(path) { - var $target = $(document.getElementById('object_' + path)); - $target.addClass('clicked'); - $target.removeClass('collapsed'); - $target.parentsUntil('#full_list', 'li').removeClass('collapsed'); - if($target[0]) { - window.scrollTo(window.scrollX, $target.offset().top - 250); - highlight(); - } -} - -function windowEvents(event) { - var msg = event.data; - if (msg.action === "expand") { - expandTo(msg.path); - } - return false; -} - -window.addEventListener("message", windowEvents, false); - -$(document).ready(function() { - escapeShortcut(); - navResizer(); - enableLinks(); - enableToggles(); - populateSearchCache(); - enableSearch(); -}); - -})(); diff --git a/doc/js/jquery.js b/doc/js/jquery.js deleted file mode 100644 index 198b3ff..0000000 --- a/doc/js/jquery.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! jQuery v1.7.1 jquery.com | jquery.org/license */ -(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
    a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
    "+""+"
    ",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="
    t
    ",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
    ",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; -f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

    ";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
    ";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
    ","
    "]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() -{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
    ").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); \ No newline at end of file diff --git a/doc/puppet_class_list.html b/doc/puppet_class_list.html deleted file mode 100644 index 9016561..0000000 --- a/doc/puppet_class_list.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - Puppet Class List - - - -
    -
    -

    Puppet Class List

    - - - -
    - - -
    - - diff --git a/doc/puppet_classes/cd_haproxy.html b/doc/puppet_classes/cd_haproxy.html deleted file mode 100644 index 20980dd..0000000 --- a/doc/puppet_classes/cd_haproxy.html +++ /dev/null @@ -1,136 +0,0 @@ - - - - - - - Puppet Class: cd_haproxy - - — Documentation by YARD 0.9.16 - - - - - - - - - - - - - - - - - - - -
    - - -

    Puppet Class: cd_haproxy

    -
    - - -
    -
    Defined in:
    -
    - manifests/init.pp -
    -
    -
    - -

    Summary

    - Class initializes the cd_haproxy module. - -

    Overview

    -
    -
    - -

    cd_haproxy::init.pp Module name: cd_haproxy Author: Arne Teuke -(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

    - -

    cd_haproxy is used for providing automatic configuration of HA proxy. -Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

    - -

    This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

    - -

    You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

    - -
    -
    - - -
    - - -
    -
    - - - - -
    -
    -
    -
    -23
    -24
    -25
    -
    -
    # File 'manifests/init.pp', line 23
    -
    -class cd_haproxy {
    -  include cd_haproxy::params
    -}
    -
    - - - - - - - - \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html b/doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html deleted file mode 100644 index a6f2326..0000000 --- a/doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html +++ /dev/null @@ -1,177 +0,0 @@ - - - - - - - Puppet Class: cd_haproxy::firewall::iptables - - — Documentation by YARD 0.9.16 - - - - - - - - - - - - - - - - - - - -
    - - -

    Puppet Class: cd_haproxy::firewall::iptables

    -
    - -
    -
    Inherits:
    -
    cd_haproxy::params
    -
    - - -
    -
    Defined in:
    -
    - manifests/firewall/iptables.pp -
    -
    -
    - -

    Summary

    - manage firewall settings through cd_firewall or puppetlabs-firewall - -

    Overview

    -
    -
    - -

    cd_haproxy::firewall::iptables.pp Module name: cd_haproxy Author: Arne -Teuke (arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

    - -

    cd_haproxy is used for providing automatic configuration of HA proxy. -Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

    - -

    This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

    - -

    You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

    - -
    -
    - - -
    - - -
    - - - - - -
    -
    -
    -
    -23
    -24
    -25
    -26
    -27
    -28
    -29
    -30
    -31
    -32
    -33
    -34
    -35
    -36
    -37
    -38
    -39
    -40
    -41
    -42
    -43
    -
    -
    # File 'manifests/firewall/iptables.pp', line 23
    -
    -class cd_haproxy::firewall::iptables (
    -
    -) inherits cd_haproxy::params {
    -
    -  if ($fqdn == $hy_host_fqdn) and ($hy_manage_fw == true) {
    -
    -    require cd_haproxy::main::files
    -
    -    firewall { "${hy_fw_order_no}${hy_http_port} tcp port ${hy_http_port}":
    -      proto   => 'tcp',
    -      dport   => $hy_http_port,
    -      action  => 'accept',
    -    }
    -
    -    firewall { "${hy_fw_order_no}${hy_https_port} tcp port ${hy_https_port}":
    -      proto   => 'tcp',
    -      dport   => $hy_https_port,
    -      action  => 'accept',
    -    }
    -  }
    -}
    -
    -
    -
    - - - -
    - - \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html deleted file mode 100644 index 23609df..0000000 --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html +++ /dev/null @@ -1,152 +0,0 @@ - - - - - - - Puppet Class: cd_haproxy::main::config - - — Documentation by YARD 0.9.16 - - - - - - - - - - - - - - - - - - - -
    - - -

    Puppet Class: cd_haproxy::main::config

    -
    - -
    -
    Inherits:
    -
    cd_haproxy::params
    -
    - - -
    -
    Defined in:
    -
    - manifests/main/config.pp -
    -
    -
    - -

    Summary

    - Class manages all aspects of configuring the module logic for -cd_haproxy. - -

    Overview

    -
    -
    - -

    cd_haproxy::main::config.pp Module name: cd_haproxy Author: Arne Teuke -(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

    - -

    cd_haproxy is used for providing automatic configuration of HA proxy. -Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

    - -

    This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

    - -

    You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

    - -
    -
    - - -
    - - -
    - - - - - -
    -
    -
    -
    -24
    -25
    -26
    -27
    -28
    -29
    -30
    -31
    -
    -
    # File 'manifests/main/config.pp', line 24
    -
    -class cd_haproxy::main::config (
    -
    -) inherits cd_haproxy::params {
    -
    -  include cd_haproxy::server::service
    -  include cd_haproxy::server::proxy_test
    -
    -}
    -
    -
    -
    - - - -
    - - \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Adirs.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Adirs.html deleted file mode 100644 index 94fe58b..0000000 --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Adirs.html +++ /dev/null @@ -1,199 +0,0 @@ - - - - - - - Puppet Class: cd_haproxy::main::dirs - - — Documentation by YARD 0.9.16 - - - - - - - - - - - - - - - - - - - -
    - - -

    Puppet Class: cd_haproxy::main::dirs

    -
    - -
    -
    Inherits:
    -
    cd_haproxy::params
    -
    - - -
    -
    Defined in:
    -
    - manifests/main/dirs.pp -
    -
    -
    - -

    Summary

    - Class manages all directories required for cd_haproxy. - -

    Overview

    -
    -
    - -

    cd_haproxy::main::dirs.pp Module name: cd_haproxy Author: Arne Teuke -(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

    - -

    cd_haproxy is used for providing automatic configuration of HA proxy. -Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

    - -

    This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

    - -

    You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

    - -
    -
    - - -
    - - -
    - - - - - -
    -
    -
    -
    -23
    -24
    -25
    -26
    -27
    -28
    -29
    -30
    -31
    -32
    -33
    -34
    -35
    -36
    -37
    -38
    -39
    -40
    -41
    -42
    -43
    -44
    -45
    -46
    -47
    -48
    -49
    -50
    -51
    -52
    -53
    -54
    -
    -
    # File 'manifests/main/dirs.pp', line 23
    -
    -class cd_haproxy::main::dirs (
    -
    -) inherits cd_haproxy::params {
    -
    -  if $fqdn == $hy_host_fqdn {
    -    require cd_haproxy::main::user
    -
    -    # main dir
    -    file { $hy_main_dir:
    -      ensure    =>  directory,
    -      owner     =>  'root',
    -      group     =>  'root',
    -      mode      =>  '0755',
    -      selrange  =>  s0,
    -      selrole   =>  object_r,
    -      seltype   =>  etc_t,
    -      seluser   =>  system_u,
    -    }
    -
    -    # errors dir
    -    file { $hy_errors_dir:
    -      ensure    =>  directory,
    -      owner     =>  'root',
    -      group     =>  'root',
    -      mode      =>  '0755',
    -      selrange  =>  s0,
    -      selrole   =>  object_r,
    -      seltype   =>  etc_t,
    -      seluser   =>  system_u,
    -    }
    -  }
    -}
    -
    -
    -
    - - - -
    - - \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html deleted file mode 100644 index 7de5c7d..0000000 --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - Puppet Class: cd_haproxy::main::files - - — Documentation by YARD 0.9.16 - - - - - - - - - - - - - - - - - - - -
    - - -

    Puppet Class: cd_haproxy::main::files

    -
    - -
    -
    Inherits:
    -
    cd_haproxy::params
    -
    - - -
    -
    Defined in:
    -
    - manifests/main/files.pp -
    -
    -
    - -

    Summary

    - Class manages all configuration files required for cd_haproxy. - -

    Overview

    -
    -
    - -

    cd_haproxy::main::files.pp Module name: cd_haproxy Author: Arne Teuke -(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

    - -

    cd_haproxy is used for providing automatic configuration of HA proxy. -Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

    - -

    This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

    - -

    You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

    - -
    -
    - - -
    - - -
    - - - - - -
    -
    -
    -
    -23
    -24
    -25
    -26
    -27
    -28
    -29
    -30
    -31
    -32
    -33
    -34
    -35
    -36
    -37
    -38
    -39
    -40
    -41
    -42
    -43
    -44
    -45
    -46
    -47
    -48
    -49
    -50
    -51
    -52
    -53
    -54
    -55
    -56
    -57
    -58
    -59
    -60
    -61
    -62
    -63
    -64
    -65
    -66
    -67
    -68
    -69
    -70
    -71
    -72
    -73
    -74
    -75
    -76
    -77
    -78
    -79
    -80
    -81
    -82
    -83
    -84
    -85
    -86
    -87
    -88
    -89
    -90
    -91
    -92
    -93
    -94
    -95
    -96
    -97
    -98
    -99
    -100
    -101
    -102
    -103
    -104
    -105
    -106
    -107
    -108
    -109
    -110
    -111
    -112
    -113
    -114
    -115
    -116
    -117
    -118
    -119
    -120
    -121
    -122
    -123
    -124
    -125
    -126
    -127
    -128
    -129
    -130
    -131
    -132
    -133
    -134
    -135
    -136
    -137
    -138
    -139
    -140
    -141
    -142
    -143
    -144
    -145
    -146
    -147
    -148
    -149
    -150
    -151
    -152
    -153
    -154
    -
    -
    # File 'manifests/main/files.pp', line 23
    -
    -class cd_haproxy::main::files (
    -
    -) inherits cd_haproxy::params {
    -
    -  if $fqdn == $hy_host_fqdn {
    -    require cd_haproxy::main::dirs
    -
    -    # create the concat target
    -    concat {$hy_main_config:
    -      ensure    =>  present,
    -      owner     =>  'root',
    -      group     =>  'root',
    -      mode      =>  '0640',
    -      selrange  =>  s0,
    -      selrole   =>  object_r,
    -      seltype   =>  etc_t,
    -      seluser   =>  system_u,
    -      notify    =>  Service[$hy_service],
    -    }
    -
    -    # create the header
    -    concat::fragment { 'header':
    -      target    =>  $hy_main_config,
    -      content   =>  template($hy_config_head_erb),
    -      order     =>  '001',
    -    }
    -
    -    # pid file
    -    file { $hy_pid:
    -      ensure    =>  file,
    -      owner     =>  'root',
    -      group     =>  'root',
    -      mode      =>  '0644',
    -      selrange  =>  s0,
    -      selrole   =>  object_r,
    -      seltype   =>  haproxy_var_run_t,
    -      seluser   =>  system_u,
    -    }
    -
    -    # error files
    -    file { $hy_400_file:
    -      ensure    =>  file,
    -      owner     =>  'root',
    -      group     =>  'root',
    -      mode      =>  '0644',
    -      selrange  =>  s0,
    -      selrole   =>  object_r,
    -      seltype   =>  etc_t,
    -      seluser   =>  system_u,
    -      content   =>  template($hy_400_erb),
    -      notify    =>  Service[$hy_service],
    -    }
    -
    -    file { $hy_403_file:
    -      ensure    =>  file,
    -      owner     =>  'root',
    -      group     =>  'root',
    -      mode      =>  '0644',
    -      selrange  =>  s0,
    -      selrole   =>  object_r,
    -      seltype   =>  etc_t,
    -      seluser   =>  system_u,
    -      content   =>  template($hy_403_erb),
    -      notify    =>  Service[$hy_service],
    -    }
    -
    -    file { $hy_408_file:
    -      ensure    =>  file,
    -      owner     =>  'root',
    -      group     =>  'root',
    -      mode      =>  '0644',
    -      selrange  =>  s0,
    -      selrole   =>  object_r,
    -      seltype   =>  etc_t,
    -      seluser   =>  system_u,
    -      content   =>  template($hy_408_erb),
    -      notify    =>  Service[$hy_service],
    -    }
    -
    -    file { $hy_500_file:
    -      ensure    =>  file,
    -      owner     =>  'root',
    -      group     =>  'root',
    -      mode      =>  '0644',
    -      selrange  =>  s0,
    -      selrole   =>  object_r,
    -      seltype   =>  etc_t,
    -      seluser   =>  system_u,
    -      content   =>  template($hy_500_erb),
    -      notify    =>  Service[$hy_service],
    -    }
    -
    -    file { $hy_502_file:
    -      ensure    =>  file,
    -      owner     =>  'root',
    -      group     =>  'root',
    -      mode      =>  '0644',
    -      selrange  =>  s0,
    -      selrole   =>  object_r,
    -      seltype   =>  etc_t,
    -      seluser   =>  system_u,
    -      content   =>  template($hy_502_erb),
    -      notify    =>  Service[$hy_service],
    -    }
    -
    -    file { $hy_503_file:
    -      ensure    =>  file,
    -      owner     =>  'root',
    -      group     =>  'root',
    -      mode      =>  '0644',
    -      selrange  =>  s0,
    -      selrole   =>  object_r,
    -      seltype   =>  etc_t,
    -      seluser   =>  system_u,
    -      content   =>  template($hy_503_erb),
    -      notify    =>  Service[$hy_service],
    -    }
    -
    -    file { $hy_504_file:
    -      ensure    =>  file,
    -      owner     =>  'root',
    -      group     =>  'root',
    -      mode      =>  '0644',
    -      selrange  =>  s0,
    -      selrole   =>  object_r,
    -      seltype   =>  etc_t,
    -      seluser   =>  system_u,
    -      content   =>  template($hy_504_erb),
    -      notify    =>  Service[$hy_service],
    -    }
    -  }
    -}
    -
    -
    -
    - - - -
    - - \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Ainstall.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Ainstall.html deleted file mode 100644 index bda5caa..0000000 --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Ainstall.html +++ /dev/null @@ -1,156 +0,0 @@ - - - - - - - Puppet Class: cd_haproxy::main::install - - — Documentation by YARD 0.9.16 - - - - - - - - - - - - - - - - - - - -
    - - -

    Puppet Class: cd_haproxy::main::install

    -
    - -
    -
    Inherits:
    -
    cd_haproxy::params
    -
    - - -
    -
    Defined in:
    -
    - manifests/main/install.pp -
    -
    -
    - -

    Summary

    - Class manage all aspects of installing binaries required for -cd_haproxy - -

    Overview

    -
    -
    - -

    cd_haproxy::main::install.pp Module name: cd_haproxy Author: Arne Teuke -(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

    - -

    cd_haproxy is used for providing automatic configuration of HA proxy. -Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

    - -

    This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

    - -

    You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

    - -
    -
    - - -
    - - -
    - - - - - -
    -
    -
    -
    -24
    -25
    -26
    -27
    -28
    -29
    -30
    -31
    -32
    -33
    -
    -
    # File 'manifests/main/install.pp', line 24
    -
    -class cd_haproxy::main::install (
    -
    -) inherits cd_haproxy::params {
    -
    -  if $fqdn == $hy_host_fqdn {
    -    package {$reqpackages:
    -      ensure => $pkg_ensure,
    -    }
    -  }
    -}
    -
    -
    -
    - - - -
    - - \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Auser.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Auser.html deleted file mode 100644 index d1f0428..0000000 --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Auser.html +++ /dev/null @@ -1,191 +0,0 @@ - - - - - - - Puppet Class: cd_haproxy::main::user - - — Documentation by YARD 0.9.16 - - - - - - - - - - - - - - - - - - - -
    - - -

    Puppet Class: cd_haproxy::main::user

    -
    - -
    -
    Inherits:
    -
    cd_haproxy::params
    -
    - - -
    -
    Defined in:
    -
    - manifests/main/user.pp -
    -
    -
    - -

    Summary

    - Class manages service users for cd_haproxy. - -

    Overview

    -
    -
    - -

    cd_haproxy::main::user.pp Module name: cd_haproxy Author: Arne Teuke -(arne_teuke@ConfDroid.com)

    - -

    License:

    - -

    This file is part of cd_haproxy.

    - -

    cd_haproxy is used for providing automatic configuration of HAproxy -Copyright (C) 2016 ConfDroid (copyright@ConfDroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

    - -

    This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

    - -

    You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

    - -
    -
    - - -
    - - -
    - - - - - -
    -
    -
    -
    -23
    -24
    -25
    -26
    -27
    -28
    -29
    -30
    -31
    -32
    -33
    -34
    -35
    -36
    -37
    -38
    -39
    -40
    -41
    -42
    -43
    -44
    -45
    -46
    -47
    -48
    -
    -
    # File 'manifests/main/user.pp', line 23
    -
    -class cd_haproxy::main::user (
    -
    -) inherits cd_haproxy::params {
    -
    -  if $fqdn == $hy_host_fqdn {
    -    require cd_haproxy::main::install
    -
    -    # manage user
    -    user { $hy_user_name:
    -      ensure      =>  present,
    -      name        =>  $hy_user_name,
    -      allowdupe   =>  false,
    -      comment     =>  $hy_user_comment,
    -      gid         =>  $hy_user_name,
    -      managehome  =>  true,
    -      home        =>  $hy_user_home,
    -      shell       =>  $hy_user_shell,
    -    }
    -
    -    group { $hy_user_name:
    -      ensure      =>  present,
    -      name        =>  $hy_user_name,
    -      allowdupe   =>  false,
    -    }
    -  }
    -}
    -
    -
    -
    - - - -
    - - \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html deleted file mode 100644 index 26b9ba5..0000000 --- a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html +++ /dev/null @@ -1,922 +0,0 @@ - - - - - - - Puppet Class: cd_haproxy::params - - — Documentation by YARD 0.9.16 - - - - - - - - - - - - - - - - - - - -
    - - -

    Puppet Class: cd_haproxy::params

    - - -

    Summary

    - Class holds all parameters for the cd_haproxy module and is -inherited by all classes except defines. - -

    Overview

    -
    -
    - -

    cd_haproxy::params.pp Module name: cd_haproxy Author: Arne Teuke -(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

    - -

    cd_haproxy is used for providing automatic configuration of HA proxy. -Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

    - -

    This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

    - -

    You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

    - -
    -
    - - -
    -

    Parameters:

    -
      - -
    • - - pkg_ensure - - - (string) - - - (defaults to: 'latest') - - - — -
      -

      which package -type to choose, i.e. latest or present.

      -
      - -
    • - -
    • - - reqpackages - - - (string) - - - (defaults to: ['haproxy']) - - - — -
      -

      specify th epackages to be installed

      -
      - -
    • - -
    • - - hy_host_fqdn - - - (string) - - - (defaults to: "proxy.${::domain}") - - - — -
      -

      the fqdn of the ha proxy host. mmust be fqdn, not cname. specify multiple -fqdns via array.

      -
      - -
    • - -
    • - - hy_manage_fw - - - (boolean) - - - (defaults to: true) - - - — -
      -

      whether to manage the firewall.

      -
      - -
    • - -
    • - - hy_fw_order_no - - - (string) - - - (defaults to: '50') - - - — -
      -

      the rule number to control the oder of the firewall rules.

      -
      - -
    • - -
    • - - hy_http_port - - - (string) - - - (defaults to: '80') - - - — -
      -

      the http port. used in firewall settings

      -
      - -
    • - -
    • - - hy_https_port - - - (string) - - - (defaults to: '443') - - - — -
      -

      the https port. used in firewall settings

      -
      - -
    • - -
    • - - hy_user_name - - - (string) - - - (defaults to: 'haproxy') - - - — -
      -

      the name of the haproxy service user.

      -
      - -
    • - -
    • - - hy_user_comment - - - (string) - - - (defaults to: 'haproxy user') - - - — -
      -

      the comment of the haproxy user, shows up in emails sent from haproxy.

      -
      - -
    • - -
    • - - hy_user_home - - - (string) - - - (defaults to: '/var/lib/haproxy') - - - — -
      -

      the home directory for the haprxy user.

      -
      - -
    • - -
    • - - hy_user_shell - - - (string) - - - (defaults to: '/sbin/nologin') - - - — -
      -

      the shell for the haproxy user.

      -
      - -
    • - -
    • - - hy_log_target - - - (string) - - - (defaults to: '127.0.0.1') - - - — -
      -

      Where to send the logs for this haproxy. Currently only local logging / -rsyslog forwarding supported.

      -
      - -
    • - -
    • - - hy_log_facility - - - (string) - - - (defaults to: 'local2') - - - — -
      -

      which logging facility to use.

      -
      - -
    • - -
    • - - hy_chroot - - - (string) - - - (defaults to: '/var/lib/haproxy') - - - — -
      -

      where the chroot should be

      -
      - -
    • - -
    • - - hy_pid - - - (string) - - - (defaults to: '/var/run/haproxy.pid') - - - — -
      -

      the pid file to use.

      -
      - -
    • - -
    • - - hy_maxconn - - - (string) - - - (defaults to: '4000') - - - — -
      -

      how many connections should we max allow.

      -
      - -
    • - -
    • - - hy_show_stats - - - (boolean) - - - (defaults to: true) - - - — -
      -

      whether we want to display the statistics page

      -
      - -
    • - -
    • - - hy_stats_socket - - - (string) - - - (defaults to: '/var/lib/haproxy/stats') - - - — -
      -

      name and path of the stats socket

      -
      - -
    • - -
    • - - hy_default_mode - - - (string) - - - (defaults to: 'http') - - - — -
      -

      which mode to use in the defaults block

      -
      - -
    • - -
    • - - hy_log_default - - - (string) - - - (defaults to: 'global') - - - — -
      -

      should be used when the instance's logging parameters are the same as -the global ones.

      -
      - -
    • - -
    • - - hy_use_httplog - - - (boolean) - - - (defaults to: true) - - - — -
      -

      whether to use httplogging option. Enable logging of HTTP request, session -state and timers

      -
      - -
    • - -
    • - - hy_use_dontlognull - - - (boolean) - - - (defaults to: true) - - - — -
      -

      Whether to enable or disable dontlognull option. true enables, false -disables.

      -
      - -
    • - -
    • - - hy_use_http_server_close - - - (boolean) - - - (defaults to: true) - - - — -
      -

      Enable or disable HTTP connection closing on the server side

      -
      - -
    • - -
    • - - hy_use_forward_for - - - (boolean) - - - (defaults to: true) - - - — -
      -

      Enable insertion of the X-Forwarded-For header to requests sent to servers.

      -
      - -
    • - -
    • - - hy_use_redispatch - - - (boolean) - - - (defaults to: true) - - - — -
      -

      Enable or disable session redistribution in case of connection failure.

      -
      - -
    • - -
    • - - hy_max_retries - - - (string) - - - (defaults to: '3') - - - — -
      -

      Set the number of retries to perform on a server after a connection -failure.

      -
      - -
    • - -
    • - - hy_timeout_http_request - - - (string) - - - (defaults to: '10s') - - - — -
      -

      Set the maximum allowed time to wait for a complete HTTP request.

      -
      - -
    • - -
    • - - hy_timeout_queue - - - (string) - - - (defaults to: '1m') - - - — -
      -

      Set the maximum time to wait in the queue for a connection slot to be free.

      -
      - -
    • - -
    • - - hy_hy_timeout_connect - - - (string) - - - - — -
      -

      Set the maximum time to wait for a connection attempt to a server to -succeed.

      -
      - -
    • - -
    • - - hy_timeout_client - - - (string) - - - (defaults to: '1m') - - - — -
      -

      Set the maximum inactivity time on the client side.

      -
      - -
    • - -
    • - - hy_timeout_server - - - (string) - - - (defaults to: '1m') - - - — -
      -

      Set the maximum inactivity time on the server side.

      -
      - -
    • - -
    • - - hy_timeout_connect - - - (Any) - - - (defaults to: '10s') - - -
    • - -
    • - - hy_timeout_http_keep_alive - - - (Any) - - - (defaults to: '10s') - - -
    • - -
    • - - hy_timeout_check - - - (Any) - - - (defaults to: '10s') - - -
    • - -
    - - -

    See Also:

    - - -
    - - - - - -
    -
    -
    -
    -74
    -75
    -76
    -77
    -78
    -79
    -80
    -81
    -82
    -83
    -84
    -85
    -86
    -87
    -88
    -89
    -90
    -91
    -92
    -93
    -94
    -95
    -96
    -97
    -98
    -99
    -100
    -101
    -102
    -103
    -104
    -105
    -106
    -107
    -108
    -109
    -110
    -111
    -112
    -113
    -114
    -115
    -116
    -117
    -118
    -119
    -120
    -121
    -122
    -123
    -124
    -125
    -126
    -127
    -128
    -129
    -130
    -131
    -132
    -133
    -134
    -135
    -136
    -137
    -138
    -139
    -140
    -141
    -142
    -143
    -144
    -145
    -146
    -147
    -148
    -149
    -150
    -
    -
    # File 'manifests/params.pp', line 74
    -
    -class cd_haproxy::params (
    -
    -$pkg_ensure                   = 'latest',
    -$reqpackages                  = ['haproxy'],
    -
    -$hy_host_fqdn                 = "proxy.${::domain}",
    -
    -# firewall
    -$hy_manage_fw                 = true,
    -$hy_fw_order_no               = '50',
    -
    -# main config
    -$hy_http_port                 = '80',
    -$hy_https_port                = '443',
    -$hy_chroot                    = '/var/lib/haproxy',
    -$hy_pid                       = '/var/run/haproxy.pid',
    -$hy_maxconn                   = '4000',
    -$hy_show_stats                = true,
    -$hy_stats_socket              = '/var/lib/haproxy/stats',
    -$hy_default_mode              = 'http',
    -$hy_use_http_server_close     = true,
    -$hy_use_forward_for           = true,
    -$hy_use_redispatch            = true,
    -$hy_max_retries               = '3',
    -$hy_timeout_http_request      = '10s',
    -$hy_timeout_queue             = '1m',
    -$hy_timeout_connect           = '10s',
    -$hy_timeout_client            = '1m',
    -$hy_timeout_server            = '1m',
    -$hy_timeout_http_keep_alive   = '10s',
    -$hy_timeout_check             = '10s',
    -
    -# user
    -$hy_user_name                 = 'haproxy',
    -$hy_user_comment              = 'haproxy user',
    -$hy_user_home                 = '/var/lib/haproxy',
    -$hy_user_shell                = '/sbin/nologin',
    -
    -# logging
    -$hy_log_target                = '127.0.0.1',
    -$hy_log_facility              = 'local2',
    -$hy_log_default               = 'global',
    -$hy_use_httplog               = true,
    -$hy_use_dontlognull           = true,
    -
    -) {
    -
    -# service
    -$hy_service           = 'haproxy'
    -
    -# directories
    -$hy_main_dir          = '/etc/haproxy'
    -$hy_errors_dir        = "${hy_main_dir}/errors"
    -
    -# files
    -$hy_main_config       = "${hy_main_dir}/haproxy.cfg"
    -$hy_config_head_erb   = 'cd_haproxy/haproxy_head.erb'
    -$hy_400_file          = "${hy_errors_dir}/400.http"
    -$hy_400_erb           = 'cd_haproxy/errors/400_http.erb'
    -$hy_403_file          = "${hy_errors_dir}/403.http"
    -$hy_403_erb           = 'cd_haproxy/errors/403_http.erb'
    -$hy_408_file          = "${hy_errors_dir}/408.http"
    -$hy_408_erb           = 'cd_haproxy/errors/408_http.erb'
    -$hy_500_file          = "${hy_errors_dir}/500.http"
    -$hy_500_erb           = 'cd_haproxy/errors/500_http.erb'
    -$hy_502_file          = "${hy_errors_dir}/502.http"
    -$hy_502_erb           = 'cd_haproxy/errors/502_http.erb'
    -$hy_503_file          = "${hy_errors_dir}/503.http"
    -$hy_503_erb           = 'cd_haproxy/errors/503_http.erb'
    -$hy_504_file          = "${hy_errors_dir}/504.http"
    -$hy_504_erb           = 'cd_haproxy/errors/504_http.erb'
    -
    -# includes must be last
    -
    -  include cd_haproxy::main::config
    -
    -}
    -
    -
    -
    - - - -
    - - \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aproxy_test.html b/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aproxy_test.html deleted file mode 100644 index da9afe2..0000000 --- a/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aproxy_test.html +++ /dev/null @@ -1,173 +0,0 @@ - - - - - - - Puppet Class: cd_haproxy::server::proxy_test - - — Documentation by YARD 0.9.16 - - - - - - - - - - - - - - - - - - - -
    - - -

    Puppet Class: cd_haproxy::server::proxy_test

    -
    - -
    -
    Inherits:
    -
    cd_haproxy::params
    -
    - - -
    -
    Defined in:
    -
    - manifests/server/proxy_test.pp -
    -
    -
    - -

    Summary

    - Define manages the proxies for cd_haproxy. - -

    Overview

    -
    -
    - -

    cd_haproxy::server::proxy_test.pp Module name: cd_haproxy Author: Arne -Teuke (arne_teuke@ConfDroid.com)

    - -

    License:

    - -

    This file is part of cd_haproxy.

    - -

    cd_haproxy is used for providing automatic configuration of HAProxy -Copyright (C) 2016 ConfDroid (copyright@ConfDroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

    - -

    This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

    - -

    You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

    - -
    -
    - - -
    - - -
    - - - - - -
    -
    -
    -
    -23
    -24
    -25
    -26
    -27
    -28
    -29
    -30
    -31
    -32
    -33
    -34
    -35
    -36
    -37
    -38
    -39
    -
    -
    # File 'manifests/server/proxy_test.pp', line 23
    -
    -class cd_haproxy::server::proxy_test (
    -
    -) inherits cd_haproxy::params {
    -
    -  cd_haproxy::server::proxy { 'testing':
    -    haproxy_fqdn    =>  'pxe703.studydivision.local',
    -    frontend_name   =>  'test01-frontend',
    -    frontend_mode   =>  'http',
    -    acl_rule        =>  ['too_fast fe_sess_rate ge 10',
    -                        'network_allowed src 0.0.0.0/0'],
    -    fe_maxconn      =>  '10000',
    -    backend_name    =>  'test01-backend',
    -    be_server_name  =>  ['web01 web01.confdroid.com:80 check',
    -                        'web02 web02.confdroid.com:80 check'],
    -
    -  }
    -}
    -
    -
    -
    - - - -
    - - \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aservice.html b/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aservice.html deleted file mode 100644 index cf281a5..0000000 --- a/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aservice.html +++ /dev/null @@ -1,167 +0,0 @@ - - - - - - - Puppet Class: cd_haproxy::server::service - - — Documentation by YARD 0.9.16 - - - - - - - - - - - - - - - - - - - -
    - - -

    Puppet Class: cd_haproxy::server::service

    -
    - -
    -
    Inherits:
    -
    cd_haproxy::params
    -
    - - -
    -
    Defined in:
    -
    - manifests/server/service.pp -
    -
    -
    - -

    Summary

    - Class manages the service(s) for cd_haproxy. - -

    Overview

    -
    -
    - -

    cd_haproxy::server::service.pp Module name: cd_haproxy Author: Arne Teuke -(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

    - -

    cd_haproxy is used for providing automatic configuration of HA proxy. -Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

    - -

    This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

    - -

    You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

    - -
    -
    - - -
    - - -
    - - - - - -
    -
    -
    -
    -23
    -24
    -25
    -26
    -27
    -28
    -29
    -30
    -31
    -32
    -33
    -34
    -35
    -36
    -37
    -38
    -
    -
    # File 'manifests/server/service.pp', line 23
    -
    -class cd_haproxy::server::service (
    -
    -) inherits cd_haproxy::params {
    -
    -  if $fqdn == $hy_host_fqdn {
    -
    -    require cd_haproxy::firewall::iptables
    -
    -    service { $hy_service:
    -      ensure      => running,
    -      hasstatus   => true,
    -      hasrestart  => true,
    -      enable      => true,
    -    }
    -  }
    -}
    -
    -
    -
    - - - -
    - - \ No newline at end of file diff --git a/doc/puppet_defined_type_list.html b/doc/puppet_defined_type_list.html deleted file mode 100644 index b481508..0000000 --- a/doc/puppet_defined_type_list.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - - - - - - - - - - - - - - Defined Type List - - - -
    -
    -

    Defined Type List

    - - - -
    - - -
    - - diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html deleted file mode 100644 index 589e533..0000000 --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html +++ /dev/null @@ -1,437 +0,0 @@ - - - - - - - Defined Type: cd_haproxy::server::proxy - - — Documentation by YARD 0.9.16 - - - - - - - - - - - - - - - - - - - -
    - - -

    Defined Type: cd_haproxy::server::proxy

    -
    -
    -
    Defined in:
    -
    - manifests/server/proxy.pp -
    -
    -
    - -

    Summary

    - Define manages the proxies for cd_haproxy. - -

    Overview

    -
    -
    - -

    cd_haproxy::server::proxy.pp Module name: cd_haproxy Author: Arne Teuke -(arne_teuke@ConfDroid.com)

    - -

    License:

    - -

    This file is part of cd_haproxy.

    - -

    cd_haproxy is used for providing automatic configuration of HAProxy -Copyright (C) 2016 ConfDroid (copyright@ConfDroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

    - -

    This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

    - -

    You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

    - -
    -
    - - -
    -

    Parameters:

    -
      - -
    • - - haproxy_fqdn - - - (string) - - - (defaults to: undef) - - - — -
      -

      the fqdn of the haproxy server in question.

      -
      - -
    • - -
    • - - frontend_name - - - (string) - - - (defaults to: undef) - - - — -
      -

      the name for the frontend section rule.

      -
      - -
    • - -
    • - - frontend_order - - - (string) - - - (defaults to: '010') - - - — -
      -

      the order where the concat should appear in the file.

      -
      - -
    • - -
    • - - frontend_mode - - - (string) - - - (defaults to: undef) - - - — -
      -

      mode for the loadbalancer instance: http or tcp

      -
      - -
    • - -
    • - - fe_use_backend - - - (string) - - - (defaults to: '') - - - — -
      -

      which backend to use. if left empty, the default backend will be used.

      -
      - -
    • - -
    • - - fe_bind_mode - - - (string) - - - (defaults to: '*:80') - - - — -
      -

      which bind mode to use, i.e. to which interface and poort to bind.

      -
      - -
    • - -
    • - - acl_rule - - - (string) - - - (defaults to: '') - - - — -
      -

      an ACL rule to be inserted if required. Empty values will not be populated.

      -
      - -
    • - -
    • - - acl_order - - - (string) - - - (defaults to: '020') - - - — -
      -

      the order where the acl rule should be inserted, so it will be within the -correct lb instance configuration.

      -
      - -
    • - -
    • - - backend_name - - - (string) - - - (defaults to: undef) - - - — -
      -

      the backend name to be used for the rule.

      -
      - -
    • - -
    • - - backend_order - - - (string) - - - (defaults to: '030') - - - — -
      -

      the order for the backend name, so it will be within the correct lb -instance configuration.

      -
      - -
    • - -
    • - - fe_maxconn - - - (string) - - - (defaults to: undef) - - - — -
      -

      the maximum connections for the lb instance.

      -
      - -
    • - -
    • - - be_server_name - - - (Any) - - - (defaults to: undef) - - -
    • - -
    - - -
    - - - - - -
    -
    -
    -
    -40
    -41
    -42
    -43
    -44
    -45
    -46
    -47
    -48
    -49
    -50
    -51
    -52
    -53
    -54
    -55
    -56
    -57
    -58
    -59
    -60
    -61
    -62
    -63
    -64
    -65
    -66
    -67
    -68
    -69
    -70
    -71
    -72
    -73
    -74
    -75
    -76
    -77
    -78
    -79
    -80
    -81
    -82
    -83
    -
    -
    # File 'manifests/server/proxy.pp', line 40
    -
    -define cd_haproxy::server::proxy (
    -
    -$haproxy_fqdn     = undef,
    -$frontend_name    = undef,
    -$frontend_mode    = undef,
    -$fe_use_backend   = '',
    -$fe_bind_mode     = '*:80',
    -$frontend_order   = '010',
    -$acl_rule         = '',
    -$acl_order        = '020',
    -$backend_name     = undef,
    -$backend_order    = '030',
    -$fe_maxconn       = undef,
    -$be_server_name   = undef,
    -
    -
    -) {
    -
    -$hy_main_config   = '/etc/haproxy/haproxy.cfg'
    -$hy_frontendrule  = 'cd_haproxy/haproxy_frontend_rule.erb'
    -$hy_backendrule   = 'cd_haproxy/haproxy_backend_rule.erb'
    -$hy_acl_rule      = 'cd_haproxy/haproxy_acl_rule.erb'
    -
    -  # create frontend section
    -  concat::fragment { "frontend_${name}":
    -    target  =>  $hy_main_config,
    -    content =>  template($hy_frontendrule),
    -    order   =>  $frontend_order,
    -  }
    -
    -  # create acl section
    -  concat::fragment { "acl_${name}":
    -    target  =>  $hy_main_config,
    -    content =>  template($hy_acl_rule),
    -    order   =>  $acl_order,
    -  }
    -
    -  # create backend section
    -  concat::fragment { "backend_${name}":
    -    target  =>  $hy_main_config,
    -    content =>  template($hy_backendrule),
    -    order   =>  $backend_order,
    -  }
    -}
    -
    -
    -
    - - - -
    - - \ No newline at end of file diff --git a/doc/top-level-namespace.html b/doc/top-level-namespace.html deleted file mode 100644 index ffe07ca..0000000 --- a/doc/top-level-namespace.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - - - Top Level Namespace - - — Documentation by YARD 0.9.16 - - - - - - - - - - - - - - - - - - - -
    - - -

    Top Level Namespace - - - -

    -
    - - - - - - - - - - - -
    - - - - - - - - - - -
    - - - -
    - - \ No newline at end of file diff --git a/tests/UTF_Files b/tests/UTF_Files deleted file mode 100644 index a138597..0000000 --- a/tests/UTF_Files +++ /dev/null @@ -1,6 +0,0 @@ -./.yardoc/object_types: data -./.yardoc/proxy_types: Applesoft BASIC program data -./.yardoc/complete: empty -./.yardoc/objects/root.dat: data -./doc/css/style.css: HTML document, UTF-8 Unicode text, with very long lines -./doc/js/jquery.js: HTML document, UTF-8 Unicode text, with very long lines From b9bb14f08b7026a65b9341527f61c32645a27f92 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Thu, 9 Sep 2021 13:16:51 +0200 Subject: [PATCH 10/59] recommit for updates in build 117 --- doc/_index.html | 181 ++++ doc/css/common.css | 8 + doc/css/full_list.css | 58 ++ doc/css/style.css | 496 ++++++++++ doc/file.README.html | 252 +++++ doc/frames.html | 17 + doc/index.html | 252 +++++ doc/js/app.js | 292 ++++++ doc/js/full_list.js | 216 ++++ doc/js/jquery.js | 4 + doc/puppet_class_list.html | 117 +++ doc/puppet_classes/cd_haproxy.html | 136 +++ ...d_haproxy_3A_3Afirewall_3A_3Aiptables.html | 177 ++++ .../cd_haproxy_3A_3Amain_3A_3Aconfig.html | 152 +++ .../cd_haproxy_3A_3Amain_3A_3Adirs.html | 199 ++++ .../cd_haproxy_3A_3Amain_3A_3Afiles.html | 399 ++++++++ .../cd_haproxy_3A_3Amain_3A_3Ainstall.html | 156 +++ .../cd_haproxy_3A_3Amain_3A_3Auser.html | 191 ++++ .../cd_haproxy_3A_3Aparams.html | 922 ++++++++++++++++++ ...d_haproxy_3A_3Aserver_3A_3Aproxy_test.html | 173 ++++ .../cd_haproxy_3A_3Aserver_3A_3Aservice.html | 167 ++++ doc/puppet_defined_type_list.html | 54 + .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html | 437 +++++++++ doc/top-level-namespace.html | 98 ++ 24 files changed, 5154 insertions(+) create mode 100644 doc/_index.html create mode 100644 doc/css/common.css create mode 100644 doc/css/full_list.css create mode 100644 doc/css/style.css create mode 100644 doc/file.README.html create mode 100644 doc/frames.html create mode 100644 doc/index.html create mode 100644 doc/js/app.js create mode 100644 doc/js/full_list.js create mode 100644 doc/js/jquery.js create mode 100644 doc/puppet_class_list.html create mode 100644 doc/puppet_classes/cd_haproxy.html create mode 100644 doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html create mode 100644 doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html create mode 100644 doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Adirs.html create mode 100644 doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html create mode 100644 doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Ainstall.html create mode 100644 doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Auser.html create mode 100644 doc/puppet_classes/cd_haproxy_3A_3Aparams.html create mode 100644 doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aproxy_test.html create mode 100644 doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aservice.html create mode 100644 doc/puppet_defined_type_list.html create mode 100644 doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html create mode 100644 doc/top-level-namespace.html diff --git a/doc/_index.html b/doc/_index.html new file mode 100644 index 0000000..d590fc2 --- /dev/null +++ b/doc/_index.html @@ -0,0 +1,181 @@ + + + + + + + Documentation by YARD 0.9.16 + + + + + + + + + + + + + + + + + + + +
    + + +

    Documentation by YARD 0.9.16

    +
    +

    Alphabetic Index

    + +

    Puppet Class Listing A-Z

    + + + + + + +
    + + + + +
    + + +

    Defined Type Listing A-Z

    + + + + + + +
    + + + + +
    + + + + + + + +

    File Listing

    + + +
    + + +
    + +
    + + + +
    + + \ No newline at end of file diff --git a/doc/css/common.css b/doc/css/common.css new file mode 100644 index 0000000..d28b093 --- /dev/null +++ b/doc/css/common.css @@ -0,0 +1,8 @@ +/* Ensure the search bar doesn't overlap with links */ +.fixed_header { + padding-bottom: 25px; +} + +#full_list { + padding-top: 15px; +} diff --git a/doc/css/full_list.css b/doc/css/full_list.css new file mode 100644 index 0000000..fa35982 --- /dev/null +++ b/doc/css/full_list.css @@ -0,0 +1,58 @@ +body { + margin: 0; + font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; + font-size: 13px; + height: 101%; + overflow-x: hidden; + background: #fafafa; +} + +h1 { padding: 12px 10px; padding-bottom: 0; margin: 0; font-size: 1.4em; } +.clear { clear: both; } +.fixed_header { position: fixed; background: #fff; width: 100%; padding-bottom: 10px; margin-top: 0; top: 0; z-index: 9999; height: 70px; } +#search { position: absolute; right: 5px; top: 9px; padding-left: 24px; } +#content.insearch #search, #content.insearch #noresults { background: url(data:image/gif;base64,R0lGODlhEAAQAPYAAP///wAAAPr6+pKSkoiIiO7u7sjIyNjY2J6engAAAI6OjsbGxjIyMlJSUuzs7KamppSUlPLy8oKCghwcHLKysqSkpJqamvT09Pj4+KioqM7OzkRERAwMDGBgYN7e3ujo6Ly8vCoqKjY2NkZGRtTU1MTExDw8PE5OTj4+PkhISNDQ0MrKylpaWrS0tOrq6nBwcKysrLi4uLq6ul5eXlxcXGJiYoaGhuDg4H5+fvz8/KKiohgYGCwsLFZWVgQEBFBQUMzMzDg4OFhYWBoaGvDw8NbW1pycnOLi4ubm5kBAQKqqqiQkJCAgIK6urnJyckpKSjQ0NGpqatLS0sDAwCYmJnx8fEJCQlRUVAoKCggICLCwsOTk5ExMTPb29ra2tmZmZmhoaNzc3KCgoBISEiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCAAAACwAAAAAEAAQAAAHaIAAgoMgIiYlg4kACxIaACEJCSiKggYMCRselwkpghGJBJEcFgsjJyoAGBmfggcNEx0flBiKDhQFlIoCCA+5lAORFb4AJIihCRbDxQAFChAXw9HSqb60iREZ1omqrIPdJCTe0SWI09GBACH5BAkIAAAALAAAAAAQABAAAAdrgACCgwc0NTeDiYozCQkvOTo9GTmDKy8aFy+NOBA7CTswgywJDTIuEjYFIY0JNYMtKTEFiRU8Pjwygy4ws4owPyCKwsMAJSTEgiQlgsbIAMrO0dKDGMTViREZ14kYGRGK38nHguHEJcvTyIEAIfkECQgAAAAsAAAAABAAEAAAB2iAAIKDAggPg4iJAAMJCRUAJRIqiRGCBI0WQEEJJkWDERkYAAUKEBc4Po1GiKKJHkJDNEeKig4URLS0ICImJZAkuQAhjSi/wQyNKcGDCyMnk8u5rYrTgqDVghgZlYjcACTA1sslvtHRgQAh+QQJCAAAACwAAAAAEAAQAAAHZ4AAgoOEhYaCJSWHgxGDJCQARAtOUoQRGRiFD0kJUYWZhUhKT1OLhR8wBaaFBzQ1NwAlkIszCQkvsbOHL7Y4q4IuEjaqq0ZQD5+GEEsJTDCMmIUhtgk1lo6QFUwJVDKLiYJNUd6/hoEAIfkECQgAAAAsAAAAABAAEAAAB2iAAIKDhIWGgiUlh4MRgyQkjIURGRiGGBmNhJWHm4uen4ICCA+IkIsDCQkVACWmhwSpFqAABQoQF6ALTkWFnYMrVlhWvIKTlSAiJiVVPqlGhJkhqShHV1lCW4cMqSkAR1ofiwsjJyqGgQAh+QQJCAAAACwAAAAAEAAQAAAHZ4AAgoOEhYaCJSWHgxGDJCSMhREZGIYYGY2ElYebi56fhyWQniSKAKKfpaCLFlAPhl0gXYNGEwkhGYREUywag1wJwSkHNDU3D0kJYIMZQwk8MjPBLx9eXwuETVEyAC/BOKsuEjYFhoEAIfkECQgAAAAsAAAAABAAEAAAB2eAAIKDhIWGgiUlh4MRgyQkjIURGRiGGBmNhJWHm4ueICImip6CIQkJKJ4kigynKaqKCyMnKqSEK05StgAGQRxPYZaENqccFgIID4KXmQBhXFkzDgOnFYLNgltaSAAEpxa7BQoQF4aBACH5BAkIAAAALAAAAAAQABAAAAdogACCg4SFggJiPUqCJSWGgkZjCUwZACQkgxGEXAmdT4UYGZqCGWQ+IjKGGIUwPzGPhAc0NTewhDOdL7Ykji+dOLuOLhI2BbaFETICx4MlQitdqoUsCQ2vhKGjglNfU0SWmILaj43M5oEAOwAAAAAAAAAAAA==) no-repeat center left; } +#full_list { padding: 0; list-style: none; margin-left: 0; margin-top: 80px; font-size: 1.1em; } +#full_list ul { padding: 0; } +#full_list li { padding: 0; margin: 0; list-style: none; } +#full_list li .item { padding: 5px 5px 5px 12px; } +#noresults { padding: 7px 12px; background: #fff; } +#content.insearch #noresults { margin-left: 7px; } +li.collapsed ul { display: none; } +li a.toggle { cursor: default; position: relative; left: -5px; top: 4px; text-indent: -999px; width: 10px; height: 9px; margin-left: -10px; display: block; float: left; background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAASCAYAAABb0P4QAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAK8AAACvABQqw0mAAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTM5jWRgMAAAAVdEVYdENyZWF0aW9uIFRpbWUAMy8xNC8wOeNZPpQAAAE2SURBVDiNrZTBccIwEEXfelIAHUA6CZ24BGaWO+FuzZAK4k6gg5QAdGAq+Bxs2Yqx7BzyL7Llp/VfzZeQhCTc/ezuGzKKnKSzpCxXJM8fwNXda3df5RZETlIt6YUzSQDs93sl8w3wBZxCCE10GM1OcWbWjB2mWgEH4Mfdyxm3PSepBHibgQE2wLe7r4HjEidpnXMYdQPKEMJcsZ4zs2POYQOcaPfwMVOo58zsAdMt18BuoVDPxUJRacELbXv3hUIX2vYmOUvi8C8ydz/ThjXrqKqqLbDIAdsCKBd+Wo7GWa7o9qzOQHVVVXeAbs+yHHCH4aTsaCOQqunmUy1yBUAXkdMIfMlgF5EXLo2OpV/c/Up7jG4hhHcYLgWzAZXUc2b2ixsfvc/RmNNfOXD3Q/oeL9axJE1yT9IOoUu6MGUkAAAAAElFTkSuQmCC) no-repeat bottom left; } +li.collapsed a.toggle { opacity: 0.5; cursor: default; background-position: top left; } +li { color: #888; cursor: pointer; } +li.deprecated { text-decoration: line-through; font-style: italic; } +li.odd { background: #f0f0f0; } +li.even { background: #fafafa; } +.item:hover { background: #ddd; } +li small:before { content: "("; } +li small:after { content: ")"; } +li small.search_info { display: none; } +a, a:visited { text-decoration: none; color: #05a; } +li.clicked > .item { background: #05a; color: #ccc; } +li.clicked > .item a, li.clicked > .item a:visited { color: #eee; } +li.clicked > .item a.toggle { opacity: 0.5; background-position: bottom right; } +li.collapsed.clicked a.toggle { background-position: top right; } +#search input { border: 1px solid #bbb; border-radius: 3px; } +#full_list_nav { margin-left: 10px; font-size: 0.9em; display: block; color: #aaa; } +#full_list_nav a, #nav a:visited { color: #358; } +#full_list_nav a:hover { background: transparent; color: #5af; } +#full_list_nav span:after { content: ' | '; } +#full_list_nav span:last-child:after { content: ''; } + +#content h1 { margin-top: 0; } +li { white-space: nowrap; cursor: normal; } +li small { display: block; font-size: 0.8em; } +li small:before { content: ""; } +li small:after { content: ""; } +li small.search_info { display: none; } +#search { width: 170px; position: static; margin: 3px; margin-left: 10px; font-size: 0.9em; color: #888; padding-left: 0; padding-right: 24px; } +#content.insearch #search { background-position: center right; } +#search input { width: 110px; } + +#full_list.insearch ul { display: block; } +#full_list.insearch .item { display: none; } +#full_list.insearch .found { display: block; padding-left: 11px !important; } +#full_list.insearch li a.toggle { display: none; } +#full_list.insearch li small.search_info { display: block; } diff --git a/doc/css/style.css b/doc/css/style.css new file mode 100644 index 0000000..0bf7e2c --- /dev/null +++ b/doc/css/style.css @@ -0,0 +1,496 @@ +html { + width: 100%; + height: 100%; +} +body { + font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; + font-size: 13px; + width: 100%; + margin: 0; + padding: 0; + display: flex; + display: -webkit-flex; + display: -ms-flexbox; +} + +#nav { + position: relative; + width: 100%; + height: 100%; + border: 0; + border-right: 1px dotted #eee; + overflow: auto; +} +.nav_wrap { + margin: 0; + padding: 0; + width: 20%; + height: 100%; + position: relative; + display: flex; + display: -webkit-flex; + display: -ms-flexbox; + flex-shrink: 0; + -webkit-flex-shrink: 0; + -ms-flex: 1 0; +} +#resizer { + position: absolute; + right: -5px; + top: 0; + width: 10px; + height: 100%; + cursor: col-resize; + z-index: 9999; +} +#main { + flex: 5 1; + -webkit-flex: 5 1; + -ms-flex: 5 1; + outline: none; + position: relative; + background: #fff; + padding: 1.2em; + padding-top: 0.2em; +} + +@media (max-width: 920px) { + .nav_wrap { width: 100%; top: 0; right: 0; overflow: visible; position: absolute; } + #resizer { display: none; } + #nav { + z-index: 9999; + background: #fff; + display: none; + position: absolute; + top: 40px; + right: 12px; + width: 500px; + max-width: 80%; + height: 80%; + overflow-y: scroll; + border: 1px solid #999; + border-collapse: collapse; + box-shadow: -7px 5px 25px #aaa; + border-radius: 2px; + } +} + +@media (min-width: 920px) { + body { height: 100%; overflow: hidden; } + #main { height: 100%; overflow: auto; } + #search { display: none; } +} + +#main img { max-width: 100%; } +h1 { font-size: 25px; margin: 1em 0 0.5em; padding-top: 4px; border-top: 1px dotted #d5d5d5; } +h1.noborder { border-top: 0px; margin-top: 0; padding-top: 4px; } +h1.title { margin-bottom: 10px; } +h1.alphaindex { margin-top: 0; font-size: 22px; } +h2 { + padding: 0; + padding-bottom: 3px; + border-bottom: 1px #aaa solid; + font-size: 1.4em; + margin: 1.8em 0 0.5em; + position: relative; +} +h2 small { font-weight: normal; font-size: 0.7em; display: inline; position: absolute; right: 0; } +h2 small a { + display: block; + height: 20px; + border: 1px solid #aaa; + border-bottom: 0; + border-top-left-radius: 5px; + background: #f8f8f8; + position: relative; + padding: 2px 7px; +} +.clear { clear: both; } +.inline { display: inline; } +.inline p:first-child { display: inline; } +.docstring, .tags, #filecontents { font-size: 15px; line-height: 1.5145em; } +.docstring p > code, .docstring p > tt, .tags p > code, .tags p > tt { + color: #c7254e; background: #f9f2f4; padding: 2px 4px; font-size: 1em; + border-radius: 4px; +} +.docstring h1, .docstring h2, .docstring h3, .docstring h4 { padding: 0; border: 0; border-bottom: 1px dotted #bbb; } +.docstring h1 { font-size: 1.2em; } +.docstring h2 { font-size: 1.1em; } +.docstring h3, .docstring h4 { font-size: 1em; border-bottom: 0; padding-top: 10px; } +.summary_desc .object_link a, .docstring .object_link a { + font-family: monospace; font-size: 1.05em; + color: #05a; background: #EDF4FA; padding: 2px 4px; font-size: 1em; + border-radius: 4px; +} +.rdoc-term { padding-right: 25px; font-weight: bold; } +.rdoc-list p { margin: 0; padding: 0; margin-bottom: 4px; } +.summary_desc pre.code .object_link a, .docstring pre.code .object_link a { + padding: 0px; background: inherit; color: inherit; border-radius: inherit; +} + +/* style for */ +#filecontents table, .docstring table { border-collapse: collapse; } +#filecontents table th, #filecontents table td, +.docstring table th, .docstring table td { border: 1px solid #ccc; padding: 8px; padding-right: 17px; } +#filecontents table tr:nth-child(odd), +.docstring table tr:nth-child(odd) { background: #eee; } +#filecontents table tr:nth-child(even), +.docstring table tr:nth-child(even) { background: #fff; } +#filecontents table th, .docstring table th { background: #fff; } + +/* style for
      */ +#filecontents li > p, .docstring li > p { margin: 0px; } +#filecontents ul, .docstring ul { padding-left: 20px; } +/* style for
      */ +#filecontents dl, .docstring dl { border: 1px solid #ccc; } +#filecontents dt, .docstring dt { background: #ddd; font-weight: bold; padding: 3px 5px; } +#filecontents dd, .docstring dd { padding: 5px 0px; margin-left: 18px; } +#filecontents dd > p, .docstring dd > p { margin: 0px; } + +.note { + color: #222; + margin: 20px 0; + padding: 10px; + border: 1px solid #eee; + border-radius: 3px; + display: block; +} +.docstring .note { + border-left-color: #ccc; + border-left-width: 5px; +} +.note.todo { background: #ffffc5; border-color: #ececaa; } +.note.returns_void { background: #efefef; } +.note.deprecated { background: #ffe5e5; border-color: #e9dada; } +.note.title.deprecated { background: #ffe5e5; border-color: #e9dada; } +.note.private { background: #ffffc5; border-color: #ececaa; } +.note.title { padding: 3px 6px; font-size: 0.9em; font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; display: inline; } +.summary_signature + .note.title { margin-left: 7px; } +h1 .note.title { font-size: 0.5em; font-weight: normal; padding: 3px 5px; position: relative; top: -3px; text-transform: capitalize; } +.note.title { background: #efefef; } +.note.title.constructor { color: #fff; background: #6a98d6; border-color: #6689d6; } +.note.title.writeonly { color: #fff; background: #45a638; border-color: #2da31d; } +.note.title.readonly { color: #fff; background: #6a98d6; border-color: #6689d6; } +.note.title.private { background: #d5d5d5; border-color: #c5c5c5; } +.note.title.not_defined_here { background: transparent; border: none; font-style: italic; } +.discussion .note { margin-top: 6px; } +.discussion .note:first-child { margin-top: 0; } + +h3.inherited { + font-style: italic; + font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; + font-weight: normal; + padding: 0; + margin: 0; + margin-top: 12px; + margin-bottom: 3px; + font-size: 13px; +} +p.inherited { + padding: 0; + margin: 0; + margin-left: 25px; +} + +.box_info dl { + margin: 0; + border: 0; + width: 100%; + font-size: 1em; + display: flex; + display: -webkit-flex; + display: -ms-flexbox; +} +.box_info dl dt { + flex-shrink: 0; + -webkit-flex-shrink: 1; + -ms-flex-shrink: 1; + width: 100px; + text-align: right; + font-weight: bold; + border: 1px solid #aaa; + border-width: 1px 0px 0px 1px; + padding: 6px 0; + padding-right: 10px; +} +.box_info dl dd { + flex-grow: 1; + -webkit-flex-grow: 1; + -ms-flex: 1; + max-width: 420px; + padding: 6px 0; + padding-right: 20px; + border: 1px solid #aaa; + border-width: 1px 1px 0 0; + overflow: hidden; + position: relative; +} +.box_info dl:last-child > * { + border-bottom: 1px solid #aaa; +} +.box_info dl:nth-child(odd) > * { background: #eee; } +.box_info dl:nth-child(even) > * { background: #fff; } +.box_info dl > * { margin: 0; } + +ul.toplevel { list-style: none; padding-left: 0; font-size: 1.1em; } +.index_inline_list { padding-left: 0; font-size: 1.1em; } + +.index_inline_list li { + list-style: none; + display: inline-block; + padding: 0 12px; + line-height: 30px; + margin-bottom: 5px; +} + +dl.constants { margin-left: 10px; } +dl.constants dt { font-weight: bold; font-size: 1.1em; margin-bottom: 5px; } +dl.constants.compact dt { display: inline-block; font-weight: normal } +dl.constants dd { width: 75%; white-space: pre; font-family: monospace; margin-bottom: 18px; } +dl.constants .docstring .note:first-child { margin-top: 5px; } + +.summary_desc { + margin-left: 32px; + display: block; + font-family: sans-serif; + font-size: 1.1em; + margin-top: 8px; + line-height: 1.5145em; + margin-bottom: 0.8em; +} +.summary_desc tt { font-size: 0.9em; } +dl.constants .note { padding: 2px 6px; padding-right: 12px; margin-top: 6px; } +dl.constants .docstring { margin-left: 32px; font-size: 0.9em; font-weight: normal; } +dl.constants .tags { padding-left: 32px; font-size: 0.9em; line-height: 0.8em; } +dl.constants .discussion *:first-child { margin-top: 0; } +dl.constants .discussion *:last-child { margin-bottom: 0; } + +.method_details { border-top: 1px dotted #ccc; margin-top: 25px; padding-top: 0; } +.method_details.first { border: 0; margin-top: 5px; } +.method_details.first h3.signature { margin-top: 1em; } +p.signature, h3.signature { + font-size: 1.1em; font-weight: normal; font-family: Monaco, Consolas, Courier, monospace; + padding: 6px 10px; margin-top: 1em; + background: #E8F4FF; border: 1px solid #d8d8e5; border-radius: 5px; +} +p.signature tt, +h3.signature tt { font-family: Monaco, Consolas, Courier, monospace; } +p.signature .overload, +h3.signature .overload { display: block; } +p.signature .extras, +h3.signature .extras { font-weight: normal; font-family: sans-serif; color: #444; font-size: 1em; } +p.signature .not_defined_here, +h3.signature .not_defined_here, +p.signature .aliases, +h3.signature .aliases { display: block; font-weight: normal; font-size: 0.9em; font-family: sans-serif; margin-top: 0px; color: #555; } +p.signature .aliases .names, +h3.signature .aliases .names { font-family: Monaco, Consolas, Courier, monospace; font-weight: bold; color: #000; font-size: 1.2em; } + +.tags .tag_title { font-size: 1.05em; margin-bottom: 0; font-weight: bold; } +.tags .tag_title tt { color: initial; padding: initial; background: initial; } +.tags ul { margin-top: 5px; padding-left: 30px; list-style: square; } +.tags ul li { margin-bottom: 3px; } +.tags ul .name { font-family: monospace; font-weight: bold; } +.tags ul .note { padding: 3px 6px; } +.tags { margin-bottom: 12px; } + +.tags .examples .tag_title { margin-bottom: 10px; font-weight: bold; } +.tags .examples .inline p { padding: 0; margin: 0; font-weight: bold; font-size: 1em; } +.tags .examples .inline p:before { content: "▸"; font-size: 1em; margin-right: 5px; } + +.tags .overload .overload_item { list-style: none; margin-bottom: 25px; } +.tags .overload .overload_item .signature { + padding: 2px 8px; + background: #F1F8FF; border: 1px solid #d8d8e5; border-radius: 3px; +} +.tags .overload .signature { margin-left: -15px; font-family: monospace; display: block; font-size: 1.1em; } +.tags .overload .docstring { margin-top: 15px; } + +.defines { display: none; } + +#method_missing_details .notice.this { position: relative; top: -8px; color: #888; padding: 0; margin: 0; } + +.showSource { font-size: 0.9em; } +.showSource a, .showSource a:visited { text-decoration: none; color: #666; } + +#content a, #content a:visited { text-decoration: none; color: #05a; } +#content a:hover { background: #ffffa5; } + +ul.summary { + list-style: none; + font-family: monospace; + font-size: 1em; + line-height: 1.5em; + padding-left: 0px; +} +ul.summary a, ul.summary a:visited { + text-decoration: none; font-size: 1.1em; +} +ul.summary li { margin-bottom: 5px; } +.summary_signature { padding: 4px 8px; background: #f8f8f8; border: 1px solid #f0f0f0; border-radius: 5px; } +.summary_signature:hover { background: #CFEBFF; border-color: #A4CCDA; cursor: pointer; } +.summary_signature.deprecated { background: #ffe5e5; border-color: #e9dada; } +ul.summary.compact li { display: inline-block; margin: 0px 5px 0px 0px; line-height: 2.6em;} +ul.summary.compact .summary_signature { padding: 5px 7px; padding-right: 4px; } +#content .summary_signature:hover a, +#content .summary_signature:hover a:visited { + background: transparent; + color: #049; +} + +p.inherited a { font-family: monospace; font-size: 0.9em; } +p.inherited { word-spacing: 5px; font-size: 1.2em; } + +p.children { font-size: 1.2em; } +p.children a { font-size: 0.9em; } +p.children strong { font-size: 0.8em; } +p.children strong.modules { padding-left: 5px; } + +ul.fullTree { display: none; padding-left: 0; list-style: none; margin-left: 0; margin-bottom: 10px; } +ul.fullTree ul { margin-left: 0; padding-left: 0; list-style: none; } +ul.fullTree li { text-align: center; padding-top: 18px; padding-bottom: 12px; background: url(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAAHtJREFUeNqMzrEJAkEURdGzuhgZbSoYWcAWoBVsB4JgZAGmphsZCZYzTQgWNCYrDN9RvMmHx+X916SUBFbo8CzD1idXrLErw1mQttgXtyrOcQ/Ny5p4Qh+2XqLYYazsPWNTiuMkRxa4vcV+evuNAUOLIx5+c2hyzv7hNQC67Q+/HHmlEwAAAABJRU5ErkJggg==) no-repeat top center; } +ul.fullTree li:first-child { padding-top: 0; background: transparent; } +ul.fullTree li:last-child { padding-bottom: 0; } +.showAll ul.fullTree { display: block; } +.showAll .inheritName { display: none; } + +#search { position: absolute; right: 12px; top: 0px; z-index: 9000; } +#search a { + display: block; float: left; + padding: 4px 8px; text-decoration: none; color: #05a; fill: #05a; + border: 1px solid #d8d8e5; + border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; + background: #F1F8FF; + box-shadow: -1px 1px 3px #ddd; +} +#search a:hover { background: #f5faff; color: #06b; fill: #06b; } +#search a.active { + background: #568; padding-bottom: 20px; color: #fff; fill: #fff; + border: 1px solid #457; + border-top-left-radius: 5px; border-top-right-radius: 5px; +} +#search a.inactive { color: #999; fill: #999; } +.inheritanceTree, .toggleDefines { + float: right; + border-left: 1px solid #aaa; + position: absolute; top: 0; right: 0; + height: 100%; + background: #f6f6f6; + padding: 5px; + min-width: 55px; + text-align: center; +} + +#menu { font-size: 1.3em; color: #bbb; } +#menu .title, #menu a { font-size: 0.7em; } +#menu .title a { font-size: 1em; } +#menu .title { color: #555; } +#menu a, #menu a:visited { color: #333; text-decoration: none; border-bottom: 1px dotted #bbd; } +#menu a:hover { color: #05a; } + +#footer { margin-top: 15px; border-top: 1px solid #ccc; text-align: center; padding: 7px 0; color: #999; } +#footer a, #footer a:visited { color: #444; text-decoration: none; border-bottom: 1px dotted #bbd; } +#footer a:hover { color: #05a; } + +#listing ul.alpha { font-size: 1.1em; } +#listing ul.alpha { margin: 0; padding: 0; padding-bottom: 10px; list-style: none; } +#listing ul.alpha li.letter { font-size: 1.4em; padding-bottom: 10px; } +#listing ul.alpha ul { margin: 0; padding-left: 15px; } +#listing ul small { color: #666; font-size: 0.7em; } + +li.r1 { background: #f0f0f0; } +li.r2 { background: #fafafa; } + +#content ul.summary li.deprecated .summary_signature a, +#content ul.summary li.deprecated .summary_signature a:visited { text-decoration: line-through; font-style: italic; } + +#toc { + position: relative; + float: right; + overflow-x: auto; + right: -3px; + margin-left: 20px; + margin-bottom: 20px; + padding: 20px; padding-right: 30px; + max-width: 300px; + z-index: 5000; + background: #fefefe; + border: 1px solid #ddd; + box-shadow: -2px 2px 6px #bbb; +} +#toc .title { margin: 0; } +#toc ol { padding-left: 1.8em; } +#toc li { font-size: 1.1em; line-height: 1.7em; } +#toc > ol > li { font-size: 1.1em; font-weight: bold; } +#toc ol > ol { font-size: 0.9em; } +#toc ol ol > ol { padding-left: 2.3em; } +#toc ol + li { margin-top: 0.3em; } +#toc.hidden { padding: 10px; background: #fefefe; box-shadow: none; } +#toc.hidden:hover { background: #fafafa; } +#filecontents h1 + #toc.nofloat { margin-top: 0; } +@media (max-width: 560px) { + #toc { + margin-left: 0; + margin-top: 16px; + float: none; + max-width: none; + } +} + +/* syntax highlighting */ +.source_code { display: none; padding: 3px 8px; border-left: 8px solid #ddd; margin-top: 5px; } +#filecontents pre.code, .docstring pre.code, .source_code pre { font-family: monospace; } +#filecontents pre.code, .docstring pre.code { display: block; } +.source_code .lines { padding-right: 12px; color: #555; text-align: right; } +#filecontents pre.code, .docstring pre.code, +.tags pre.example { + padding: 9px 14px; + margin-top: 4px; + border: 1px solid #e1e1e8; + background: #f7f7f9; + border-radius: 4px; + font-size: 1em; + overflow-x: auto; + line-height: 1.2em; +} +pre.code { color: #000; tab-size: 2; } +pre.code .info.file { color: #555; } +pre.code .val { color: #036A07; } +pre.code .tstring_content, +pre.code .heredoc_beg, pre.code .heredoc_end, +pre.code .qwords_beg, pre.code .qwords_end, pre.code .qwords_sep, +pre.code .words_beg, pre.code .words_end, pre.code .words_sep, +pre.code .qsymbols_beg, pre.code .qsymbols_end, pre.code .qsymbols_sep, +pre.code .symbols_beg, pre.code .symbols_end, pre.code .symbols_sep, +pre.code .tstring, pre.code .dstring { color: #036A07; } +pre.code .fid, pre.code .rubyid_new, pre.code .rubyid_to_s, +pre.code .rubyid_to_sym, pre.code .rubyid_to_f, +pre.code .dot + pre.code .id, +pre.code .rubyid_to_i pre.code .rubyid_each { color: #0085FF; } +pre.code .comment { color: #0066FF; } +pre.code .const, pre.code .constant { color: #585CF6; } +pre.code .label, +pre.code .symbol { color: #C5060B; } +pre.code .kw, +pre.code .rubyid_require, +pre.code .rubyid_extend, +pre.code .rubyid_include { color: #0000FF; } +pre.code .ivar { color: #318495; } +pre.code .gvar, +pre.code .rubyid_backref, +pre.code .rubyid_nth_ref { color: #6D79DE; } +pre.code .regexp, .dregexp { color: #036A07; } +pre.code a { border-bottom: 1px dotted #bbf; } +/* inline code */ +*:not(pre) > code { + padding: 1px 3px 1px 3px; + border: 1px solid #E1E1E8; + background: #F7F7F9; + border-radius: 4px; +} + +/* Color fix for links */ +#content .summary_desc pre.code .id > .object_link a, /* identifier */ +#content .docstring pre.code .id > .object_link a { color: #0085FF; } +#content .summary_desc pre.code .const > .object_link a, /* constant */ +#content .docstring pre.code .const > .object_link a { color: #585CF6; } diff --git a/doc/file.README.html b/doc/file.README.html new file mode 100644 index 0000000..5360084 --- /dev/null +++ b/doc/file.README.html @@ -0,0 +1,252 @@ + + + + + + + File: README + + — Documentation by YARD 0.9.16 + + + + + + + + + + + + + + + + + + + +
      + + +
      +

      Readme

      + +

      |cd_haproxy| 1.0.3.0 | |

      + +

      [[TOC]]

      + +

      Synopsis

      + +

      HA Proxy is a very powerful and popular open source load +balancer to balance incoming requests between multiple instances of web-, +application- or database servers etc.

      + +

      cd_haproxy automates installation and configuration of +HA proxy including self-healing, monitoring and firewall etc.

      + +

      WARNING

      + +

      **__!!! Attention: Never use this puppet module on systems which have +been previously configured manually. It is impossible to predict how and +what would have been configured, hence previuos configurations outside the +scope of this module may be overwritten! Automated configurations require a +test environment to verify that the module suits the purpose intended by +the user, as well as tune the parameters, before deploying into live +production!!! __**

      + +

      Features

      + +

      INSTALLATION

      +
      • +

        install rpm binaries

        +
      + +

      CONFIGURATION

      +
      • +

        manage haproxy user

        +
      • +

        manage directories (file system permissions, selinux context)

        +
      • +

        manage files (file system permissions, content, selinux context)

        +
      • +

        manage proxy instances through a define

        +
      • +

        front-end options

        +
      • +

        back-end options

        +
      • +

        ACL options

        +
      + +

      SERVICE

      +
      • +

        manage haproxy service

        +
      • +

        restart service after changes in the configuration

        +
      + +

      Dependencies

      + +

      All dependencies must be included in the catalogue.

      + + +

      Deployment

      +
      • +

        native Puppet deployment

        +
      + +

      via site.pp or nodes.pp

      + +
      node 'example.example.net' {
      +  include cd_haproxy
      +}
      +
      • +

        through Foreman:

        +
      + +

      In order to apply parameters through Foreman, +cd_haproxy::params must be added to the host or host group +in question.

      + +

      See more +details about class deployment on Confdroid.com.

      + +

      Parameters

      + +

      The parameters are documented via puppet strings and listed here. Simply open in web browser.

      + +

      Proxy Configuration

      + +

      The proxy instances are configured in /etc/haproxy/haproxy.cfg, which is +concatenated from various templates through a define in this puppet module. +In order to create proxy instances, you will need an external class, which +addresses the define, like so:

      + +
      cd_haproxy::server::proxy { 'testing':
      +    haproxy_fqdn    =>  'node.example.net',
      +    frontend_name   =>  'test01-frontend',
      +    frontend_mode   =>  'http',
      +    acl_rule        =>  ['too_fast fe_sess_rate ge 10',
      +                          'network_allowed src 0.0.0.0/0'],
      +    backend_name    =>  'test01-backend',
      +  }
      + +

      This allows the puppet module to create the sections in the configuration +file as required. The haproxy service will be restarted after the changes +in the configuration file are made. haproxy_fqdn +must contain the fqdn of the haproxy +server where this should be configured, otherwise the +templates are not being populated. Multiple ACLs need to be added as array, +and will create one line each.

      + +

      SELINUX

      + +

      All files and directories are configured with correct selinux context. If +selinux is disabled, these contexts are ignored.

      + +

      Known Problems

      + +

      Support

      +
      • +

        OS: CentOS 7

        +
      • +

        Puppet 5

        +
      + +

      Tests

      +
      • +

        Puppet Lint

        +
      • +

        excluded tests:

        +
        • +

          --no-class_inherits_from_params_class-check:relevant only to +non-supported outdated puppet versions

          +
        • +

          --no-variable_scope-check: not applicable as we are inheriting +parameters from params class. the lint check does not distinguish between +facts and inherited parameters.

          +
        • +

          --no-80chars-check: it is not always possible to stay within +80 characters, although typically only occurring on the parameter vault +params.pp.

          +
        • +

          --no-arrow_alignment-check: this check leads to actually not +having am easily readable arrow alignment, as this checks per +block, not per class.

          +
        +
      • +

        Puppet Parser

        +
      • +

        ERB Template Parser

        +
      • +

        Test for unwanted UTF8 files in the Puppet code (see tests/UTF_Files)

        +
      • +

        Markdown-lint

        +
      • +

        Spellcheck

        +
      • +

        Sonar Quality Gate

        +
      + +

      Contact Us

      + +

      contact Us

      + +

      Disclaimer

      + +

      ConfDroid as entity is entirely independent from Puppet. We provide custom +configuration modules, written for specific purposes and specific +environments. The modules are tested and supported only as documented, and +require testing in designated environments (i.e. lab or development +environments) for parameter tuning etc. before deploying into production +environments.

      +
      + + + +
      + + \ No newline at end of file diff --git a/doc/frames.html b/doc/frames.html new file mode 100644 index 0000000..b57c778 --- /dev/null +++ b/doc/frames.html @@ -0,0 +1,17 @@ + + + + + Documentation by YARD 0.9.16 + + + + diff --git a/doc/index.html b/doc/index.html new file mode 100644 index 0000000..796df7f --- /dev/null +++ b/doc/index.html @@ -0,0 +1,252 @@ + + + + + + + File: README + + — Documentation by YARD 0.9.16 + + + + + + + + + + + + + + + + + + + +
      + + +
      +

      Readme

      + +

      |cd_haproxy| 1.0.3.0 | |

      + +

      [[TOC]]

      + +

      Synopsis

      + +

      HA Proxy is a very powerful and popular open source load +balancer to balance incoming requests between multiple instances of web-, +application- or database servers etc.

      + +

      cd_haproxy automates installation and configuration of +HA proxy including self-healing, monitoring and firewall etc.

      + +

      WARNING

      + +

      **__!!! Attention: Never use this puppet module on systems which have +been previously configured manually. It is impossible to predict how and +what would have been configured, hence previuos configurations outside the +scope of this module may be overwritten! Automated configurations require a +test environment to verify that the module suits the purpose intended by +the user, as well as tune the parameters, before deploying into live +production!!! __**

      + +

      Features

      + +

      INSTALLATION

      +
      • +

        install rpm binaries

        +
      + +

      CONFIGURATION

      +
      • +

        manage haproxy user

        +
      • +

        manage directories (file system permissions, selinux context)

        +
      • +

        manage files (file system permissions, content, selinux context)

        +
      • +

        manage proxy instances through a define

        +
      • +

        front-end options

        +
      • +

        back-end options

        +
      • +

        ACL options

        +
      + +

      SERVICE

      +
      • +

        manage haproxy service

        +
      • +

        restart service after changes in the configuration

        +
      + +

      Dependencies

      + +

      All dependencies must be included in the catalogue.

      + + +

      Deployment

      +
      • +

        native Puppet deployment

        +
      + +

      via site.pp or nodes.pp

      + +
      node 'example.example.net' {
      +  include cd_haproxy
      +}
      +
      • +

        through Foreman:

        +
      + +

      In order to apply parameters through Foreman, +cd_haproxy::params must be added to the host or host group +in question.

      + +

      See more +details about class deployment on Confdroid.com.

      + +

      Parameters

      + +

      The parameters are documented via puppet strings and listed here. Simply open in web browser.

      + +

      Proxy Configuration

      + +

      The proxy instances are configured in /etc/haproxy/haproxy.cfg, which is +concatenated from various templates through a define in this puppet module. +In order to create proxy instances, you will need an external class, which +addresses the define, like so:

      + +
      cd_haproxy::server::proxy { 'testing':
      +    haproxy_fqdn    =>  'node.example.net',
      +    frontend_name   =>  'test01-frontend',
      +    frontend_mode   =>  'http',
      +    acl_rule        =>  ['too_fast fe_sess_rate ge 10',
      +                          'network_allowed src 0.0.0.0/0'],
      +    backend_name    =>  'test01-backend',
      +  }
      + +

      This allows the puppet module to create the sections in the configuration +file as required. The haproxy service will be restarted after the changes +in the configuration file are made. haproxy_fqdn +must contain the fqdn of the haproxy +server where this should be configured, otherwise the +templates are not being populated. Multiple ACLs need to be added as array, +and will create one line each.

      + +

      SELINUX

      + +

      All files and directories are configured with correct selinux context. If +selinux is disabled, these contexts are ignored.

      + +

      Known Problems

      + +

      Support

      +
      • +

        OS: CentOS 7

        +
      • +

        Puppet 5

        +
      + +

      Tests

      +
      • +

        Puppet Lint

        +
      • +

        excluded tests:

        +
        • +

          --no-class_inherits_from_params_class-check:relevant only to +non-supported outdated puppet versions

          +
        • +

          --no-variable_scope-check: not applicable as we are inheriting +parameters from params class. the lint check does not distinguish between +facts and inherited parameters.

          +
        • +

          --no-80chars-check: it is not always possible to stay within +80 characters, although typically only occurring on the parameter vault +params.pp.

          +
        • +

          --no-arrow_alignment-check: this check leads to actually not +having am easily readable arrow alignment, as this checks per +block, not per class.

          +
        +
      • +

        Puppet Parser

        +
      • +

        ERB Template Parser

        +
      • +

        Test for unwanted UTF8 files in the Puppet code (see tests/UTF_Files)

        +
      • +

        Markdown-lint

        +
      • +

        Spellcheck

        +
      • +

        Sonar Quality Gate

        +
      + +

      Contact Us

      + +

      contact Us

      + +

      Disclaimer

      + +

      ConfDroid as entity is entirely independent from Puppet. We provide custom +configuration modules, written for specific purposes and specific +environments. The modules are tested and supported only as documented, and +require testing in designated environments (i.e. lab or development +environments) for parameter tuning etc. before deploying into production +environments.

      +
      + + + +
      + + \ No newline at end of file diff --git a/doc/js/app.js b/doc/js/app.js new file mode 100644 index 0000000..fecf69d --- /dev/null +++ b/doc/js/app.js @@ -0,0 +1,292 @@ +(function() { + +var localStorage = {}, sessionStorage = {}; +try { localStorage = window.localStorage; } catch (e) { } +try { sessionStorage = window.sessionStorage; } catch (e) { } + +function createSourceLinks() { + $('.method_details_list .source_code'). + before("[View source]"); + $('.toggleSource').toggle(function() { + $(this).parent().nextAll('.source_code').slideDown(100); + $(this).text("Hide source"); + }, + function() { + $(this).parent().nextAll('.source_code').slideUp(100); + $(this).text("View source"); + }); +} + +function createDefineLinks() { + var tHeight = 0; + $('.defines').after(" more..."); + $('.toggleDefines').toggle(function() { + tHeight = $(this).parent().prev().height(); + $(this).prev().css('display', 'inline'); + $(this).parent().prev().height($(this).parent().height()); + $(this).text("(less)"); + }, + function() { + $(this).prev().hide(); + $(this).parent().prev().height(tHeight); + $(this).text("more..."); + }); +} + +function createFullTreeLinks() { + var tHeight = 0; + $('.inheritanceTree').toggle(function() { + tHeight = $(this).parent().prev().height(); + $(this).parent().toggleClass('showAll'); + $(this).text("(hide)"); + $(this).parent().prev().height($(this).parent().height()); + }, + function() { + $(this).parent().toggleClass('showAll'); + $(this).parent().prev().height(tHeight); + $(this).text("show all"); + }); +} + +function searchFrameButtons() { + $('.full_list_link').click(function() { + toggleSearchFrame(this, $(this).attr('href')); + return false; + }); + window.addEventListener('message', function(e) { + if (e.data === 'navEscape') { + $('#nav').slideUp(100); + $('#search a').removeClass('active inactive'); + $(window).focus(); + } + }); + + $(window).resize(function() { + if ($('#search:visible').length === 0) { + $('#nav').removeAttr('style'); + $('#search a').removeClass('active inactive'); + $(window).focus(); + } + }); +} + +function toggleSearchFrame(id, link) { + var frame = $('#nav'); + $('#search a').removeClass('active').addClass('inactive'); + if (frame.attr('src') === link && frame.css('display') !== "none") { + frame.slideUp(100); + $('#search a').removeClass('active inactive'); + } + else { + $(id).addClass('active').removeClass('inactive'); + if (frame.attr('src') !== link) frame.attr('src', link); + frame.slideDown(100); + } +} + +function linkSummaries() { + $('.summary_signature').click(function() { + document.location = $(this).find('a').attr('href'); + }); +} + +function summaryToggle() { + $('.summary_toggle').click(function(e) { + e.preventDefault(); + localStorage.summaryCollapsed = $(this).text(); + $('.summary_toggle').each(function() { + $(this).text($(this).text() == "collapse" ? "expand" : "collapse"); + var next = $(this).parent().parent().nextAll('ul.summary').first(); + if (next.hasClass('compact')) { + next.toggle(); + next.nextAll('ul.summary').first().toggle(); + } + else if (next.hasClass('summary')) { + var list = $('
        '); + list.html(next.html()); + list.find('.summary_desc, .note').remove(); + list.find('a').each(function() { + $(this).html($(this).find('strong').html()); + $(this).parent().html($(this)[0].outerHTML); + }); + next.before(list); + next.toggle(); + } + }); + return false; + }); + if (localStorage.summaryCollapsed == "collapse") { + $('.summary_toggle').first().click(); + } else { localStorage.summaryCollapsed = "expand"; } +} + +function constantSummaryToggle() { + $('.constants_summary_toggle').click(function(e) { + e.preventDefault(); + localStorage.summaryCollapsed = $(this).text(); + $('.constants_summary_toggle').each(function() { + $(this).text($(this).text() == "collapse" ? "expand" : "collapse"); + var next = $(this).parent().parent().nextAll('dl.constants').first(); + if (next.hasClass('compact')) { + next.toggle(); + next.nextAll('dl.constants').first().toggle(); + } + else if (next.hasClass('constants')) { + var list = $('
        '); + list.html(next.html()); + list.find('dt').each(function() { + $(this).addClass('summary_signature'); + $(this).text( $(this).text().split('=')[0]); + if ($(this).has(".deprecated").length) { + $(this).addClass('deprecated'); + }; + }); + // Add the value of the constant as "Tooltip" to the summary object + list.find('pre.code').each(function() { + console.log($(this).parent()); + var dt_element = $(this).parent().prev(); + var tooltip = $(this).text(); + if (dt_element.hasClass("deprecated")) { + tooltip = 'Deprecated. ' + tooltip; + }; + dt_element.attr('title', tooltip); + }); + list.find('.docstring, .tags, dd').remove(); + next.before(list); + next.toggle(); + } + }); + return false; + }); + if (localStorage.summaryCollapsed == "collapse") { + $('.constants_summary_toggle').first().click(); + } else { localStorage.summaryCollapsed = "expand"; } +} + +function generateTOC() { + if ($('#filecontents').length === 0) return; + var _toc = $('
          '); + var show = false; + var toc = _toc; + var counter = 0; + var tags = ['h2', 'h3', 'h4', 'h5', 'h6']; + var i; + if ($('#filecontents h1').length > 1) tags.unshift('h1'); + for (i = 0; i < tags.length; i++) { tags[i] = '#filecontents ' + tags[i]; } + var lastTag = parseInt(tags[0][1], 10); + $(tags.join(', ')).each(function() { + if ($(this).parents('.method_details .docstring').length != 0) return; + if (this.id == "filecontents") return; + show = true; + var thisTag = parseInt(this.tagName[1], 10); + if (this.id.length === 0) { + var proposedId = $(this).attr('toc-id'); + if (typeof(proposedId) != "undefined") this.id = proposedId; + else { + var proposedId = $(this).text().replace(/[^a-z0-9-]/ig, '_'); + if ($('#' + proposedId).length > 0) { proposedId += counter; counter++; } + this.id = proposedId; + } + } + if (thisTag > lastTag) { + for (i = 0; i < thisTag - lastTag; i++) { + var tmp = $('
            '); toc.append(tmp); toc = tmp; + } + } + if (thisTag < lastTag) { + for (i = 0; i < lastTag - thisTag; i++) toc = toc.parent(); + } + var title = $(this).attr('toc-title'); + if (typeof(title) == "undefined") title = $(this).text(); + toc.append('
          1. ' + title + '
          2. '); + lastTag = thisTag; + }); + if (!show) return; + html = ''; + $('#content').prepend(html); + $('#toc').append(_toc); + $('#toc .hide_toc').toggle(function() { + $('#toc .top').slideUp('fast'); + $('#toc').toggleClass('hidden'); + $('#toc .title small').toggle(); + }, function() { + $('#toc .top').slideDown('fast'); + $('#toc').toggleClass('hidden'); + $('#toc .title small').toggle(); + }); +} + +function navResizeFn(e) { + if (e.which !== 1) { + navResizeFnStop(); + return; + } + + sessionStorage.navWidth = e.pageX.toString(); + $('.nav_wrap').css('width', e.pageX); + $('.nav_wrap').css('-ms-flex', 'inherit'); +} + +function navResizeFnStop() { + $(window).unbind('mousemove', navResizeFn); + window.removeEventListener('message', navMessageFn, false); +} + +function navMessageFn(e) { + if (e.data.action === 'mousemove') navResizeFn(e.data.event); + if (e.data.action === 'mouseup') navResizeFnStop(); +} + +function navResizer() { + $('#resizer').mousedown(function(e) { + e.preventDefault(); + $(window).mousemove(navResizeFn); + window.addEventListener('message', navMessageFn, false); + }); + $(window).mouseup(navResizeFnStop); + + if (sessionStorage.navWidth) { + navResizeFn({which: 1, pageX: parseInt(sessionStorage.navWidth, 10)}); + } +} + +function navExpander() { + var done = false, timer = setTimeout(postMessage, 500); + function postMessage() { + if (done) return; + clearTimeout(timer); + var opts = { action: 'expand', path: pathId }; + document.getElementById('nav').contentWindow.postMessage(opts, '*'); + done = true; + } + + window.addEventListener('message', function(event) { + if (event.data === 'navReady') postMessage(); + return false; + }, false); +} + +function mainFocus() { + var hash = window.location.hash; + if (hash !== '' && $(hash)[0]) { + $(hash)[0].scrollIntoView(); + } + + setTimeout(function() { $('#main').focus(); }, 10); +} + +$(document).ready(function() { + navResizer(); + navExpander(); + createSourceLinks(); + createDefineLinks(); + createFullTreeLinks(); + searchFrameButtons(); + linkSummaries(); + summaryToggle(); + constantSummaryToggle(); + generateTOC(); + mainFocus(); +}); + +})(); diff --git a/doc/js/full_list.js b/doc/js/full_list.js new file mode 100644 index 0000000..59069c5 --- /dev/null +++ b/doc/js/full_list.js @@ -0,0 +1,216 @@ +(function() { + +var $clicked = $(null); +var searchTimeout = null; +var searchCache = []; +var caseSensitiveMatch = false; +var ignoreKeyCodeMin = 8; +var ignoreKeyCodeMax = 46; +var commandKey = 91; + +RegExp.escape = function(text) { + return text.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"); +} + +function escapeShortcut() { + $(document).keydown(function(evt) { + if (evt.which == 27) { + window.parent.postMessage('navEscape', '*'); + } + }); +} + +function navResizer() { + $(window).mousemove(function(e) { + window.parent.postMessage({ + action: 'mousemove', event: {pageX: e.pageX, which: e.which} + }, '*'); + }).mouseup(function(e) { + window.parent.postMessage({action: 'mouseup'}, '*'); + }); + window.parent.postMessage("navReady", "*"); +} + +function clearSearchTimeout() { + clearTimeout(searchTimeout); + searchTimeout = null; +} + +function enableLinks() { + // load the target page in the parent window + $('#full_list li').on('click', function(evt) { + $('#full_list li').removeClass('clicked'); + $clicked = $(this); + $clicked.addClass('clicked'); + evt.stopPropagation(); + + if (evt.target.tagName === 'A') return true; + + var elem = $clicked.find('> .item .object_link a')[0]; + var e = evt.originalEvent; + var newEvent = new MouseEvent(evt.originalEvent.type); + newEvent.initMouseEvent(e.type, e.canBubble, e.cancelable, e.view, e.detail, e.screenX, e.screenY, e.clientX, e.clientY, e.ctrlKey, e.altKey, e.shiftKey, e.metaKey, e.button, e.relatedTarget); + elem.dispatchEvent(newEvent); + evt.preventDefault(); + return false; + }); +} + +function enableToggles() { + // show/hide nested classes on toggle click + $('#full_list a.toggle').on('click', function(evt) { + evt.stopPropagation(); + evt.preventDefault(); + $(this).parent().parent().toggleClass('collapsed'); + highlight(); + }); +} + +function populateSearchCache() { + $('#full_list li .item').each(function() { + var $node = $(this); + var $link = $node.find('.object_link a'); + if ($link.length > 0) { + searchCache.push({ + node: $node, + link: $link, + name: $link.text(), + fullName: $link.attr('title').split(' ')[0] + }); + } + }); +} + +function enableSearch() { + $('#search input').keyup(function(event) { + if (ignoredKeyPress(event)) return; + if (this.value === "") { + clearSearch(); + } else { + performSearch(this.value); + } + }); + + $('#full_list').after(""); +} + +function ignoredKeyPress(event) { + if ( + (event.keyCode > ignoreKeyCodeMin && event.keyCode < ignoreKeyCodeMax) || + (event.keyCode == commandKey) + ) { + return true; + } else { + return false; + } +} + +function clearSearch() { + clearSearchTimeout(); + $('#full_list .found').removeClass('found').each(function() { + var $link = $(this).find('.object_link a'); + $link.text($link.text()); + }); + $('#full_list, #content').removeClass('insearch'); + $clicked.parents().removeClass('collapsed'); + highlight(); +} + +function performSearch(searchString) { + clearSearchTimeout(); + $('#full_list, #content').addClass('insearch'); + $('#noresults').text('').hide(); + partialSearch(searchString, 0); +} + +function partialSearch(searchString, offset) { + var lastRowClass = ''; + var i = null; + for (i = offset; i < Math.min(offset + 50, searchCache.length); i++) { + var item = searchCache[i]; + var searchName = (searchString.indexOf('::') != -1 ? item.fullName : item.name); + var matchString = buildMatchString(searchString); + var matchRegexp = new RegExp(matchString, caseSensitiveMatch ? "" : "i"); + if (searchName.match(matchRegexp) == null) { + item.node.removeClass('found'); + item.link.text(item.link.text()); + } + else { + item.node.addClass('found'); + item.node.removeClass(lastRowClass).addClass(lastRowClass == 'r1' ? 'r2' : 'r1'); + lastRowClass = item.node.hasClass('r1') ? 'r1' : 'r2'; + item.link.html(item.name.replace(matchRegexp, "$&")); + } + } + if(i == searchCache.length) { + searchDone(); + } else { + searchTimeout = setTimeout(function() { + partialSearch(searchString, i); + }, 0); + } +} + +function searchDone() { + searchTimeout = null; + highlight(); + if ($('#full_list li:visible').size() === 0) { + $('#noresults').text('No results were found.').hide().fadeIn(); + } else { + $('#noresults').text('').hide(); + } + $('#content').removeClass('insearch'); +} + +function buildMatchString(searchString, event) { + caseSensitiveMatch = searchString.match(/[A-Z]/) != null; + var regexSearchString = RegExp.escape(searchString); + if (caseSensitiveMatch) { + regexSearchString += "|" + + $.map(searchString.split(''), function(e) { return RegExp.escape(e); }). + join('.+?'); + } + return regexSearchString; +} + +function highlight() { + $('#full_list li:visible').each(function(n) { + $(this).removeClass('even odd').addClass(n % 2 == 0 ? 'odd' : 'even'); + }); +} + +/** + * Expands the tree to the target element and its immediate + * children. + */ +function expandTo(path) { + var $target = $(document.getElementById('object_' + path)); + $target.addClass('clicked'); + $target.removeClass('collapsed'); + $target.parentsUntil('#full_list', 'li').removeClass('collapsed'); + if($target[0]) { + window.scrollTo(window.scrollX, $target.offset().top - 250); + highlight(); + } +} + +function windowEvents(event) { + var msg = event.data; + if (msg.action === "expand") { + expandTo(msg.path); + } + return false; +} + +window.addEventListener("message", windowEvents, false); + +$(document).ready(function() { + escapeShortcut(); + navResizer(); + enableLinks(); + enableToggles(); + populateSearchCache(); + enableSearch(); +}); + +})(); diff --git a/doc/js/jquery.js b/doc/js/jquery.js new file mode 100644 index 0000000..198b3ff --- /dev/null +++ b/doc/js/jquery.js @@ -0,0 +1,4 @@ +/*! jQuery v1.7.1 jquery.com | jquery.org/license */ +(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
      a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
      "+""+"
      ",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="
      t
      ",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
      ",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; +f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

      ";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
      ";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,"
      ","
      "],thead:[1,"","
      "],tr:[2,"","
      "],td:[3,"","
      "],col:[2,"","
      "],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
      ","
      "]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() +{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
      ").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); \ No newline at end of file diff --git a/doc/puppet_class_list.html b/doc/puppet_class_list.html new file mode 100644 index 0000000..9016561 --- /dev/null +++ b/doc/puppet_class_list.html @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + Puppet Class List + + + +
      +
      +

      Puppet Class List

      + + + +
      + + +
      + + diff --git a/doc/puppet_classes/cd_haproxy.html b/doc/puppet_classes/cd_haproxy.html new file mode 100644 index 0000000..20980dd --- /dev/null +++ b/doc/puppet_classes/cd_haproxy.html @@ -0,0 +1,136 @@ + + + + + + + Puppet Class: cd_haproxy + + — Documentation by YARD 0.9.16 + + + + + + + + + + + + + + + + + + + +
      + + +

      Puppet Class: cd_haproxy

      +
      + + +
      +
      Defined in:
      +
      + manifests/init.pp +
      +
      +
      + +

      Summary

      + Class initializes the cd_haproxy module. + +

      Overview

      +
      +
      + +

      cd_haproxy::init.pp Module name: cd_haproxy Author: Arne Teuke +(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

      + +

      cd_haproxy is used for providing automatic configuration of HA proxy. +Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is +free software: you can redistribute it and/or modify it under the terms of +the GNU General Public License as published by the Free Software +Foundation, either version 3 of the License, or (at your option) any later +version.

      + +

      This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details.

      + +

      You should have received a copy of the GNU General Public License along +with this program. If not, see www.gnu.org/licenses/.

      + +
      +
      + + +
      + + +
      +
      + + + + +
      +
      +
      +
      +23
      +24
      +25
      +
      +
      # File 'manifests/init.pp', line 23
      +
      +class cd_haproxy {
      +  include cd_haproxy::params
      +}
      +
      + + + + + + + + \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html b/doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html new file mode 100644 index 0000000..a6f2326 --- /dev/null +++ b/doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html @@ -0,0 +1,177 @@ + + + + + + + Puppet Class: cd_haproxy::firewall::iptables + + — Documentation by YARD 0.9.16 + + + + + + + + + + + + + + + + + + + +
      + + +

      Puppet Class: cd_haproxy::firewall::iptables

      +
      + +
      +
      Inherits:
      +
      cd_haproxy::params
      +
      + + +
      +
      Defined in:
      +
      + manifests/firewall/iptables.pp +
      +
      +
      + +

      Summary

      + manage firewall settings through cd_firewall or puppetlabs-firewall + +

      Overview

      +
      +
      + +

      cd_haproxy::firewall::iptables.pp Module name: cd_haproxy Author: Arne +Teuke (arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

      + +

      cd_haproxy is used for providing automatic configuration of HA proxy. +Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is +free software: you can redistribute it and/or modify it under the terms of +the GNU General Public License as published by the Free Software +Foundation, either version 3 of the License, or (at your option) any later +version.

      + +

      This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details.

      + +

      You should have received a copy of the GNU General Public License along +with this program. If not, see www.gnu.org/licenses/.

      + +
      +
      + + +
      + + +
      + + + + + +
      +
      +
      +
      +23
      +24
      +25
      +26
      +27
      +28
      +29
      +30
      +31
      +32
      +33
      +34
      +35
      +36
      +37
      +38
      +39
      +40
      +41
      +42
      +43
      +
      +
      # File 'manifests/firewall/iptables.pp', line 23
      +
      +class cd_haproxy::firewall::iptables (
      +
      +) inherits cd_haproxy::params {
      +
      +  if ($fqdn == $hy_host_fqdn) and ($hy_manage_fw == true) {
      +
      +    require cd_haproxy::main::files
      +
      +    firewall { "${hy_fw_order_no}${hy_http_port} tcp port ${hy_http_port}":
      +      proto   => 'tcp',
      +      dport   => $hy_http_port,
      +      action  => 'accept',
      +    }
      +
      +    firewall { "${hy_fw_order_no}${hy_https_port} tcp port ${hy_https_port}":
      +      proto   => 'tcp',
      +      dport   => $hy_https_port,
      +      action  => 'accept',
      +    }
      +  }
      +}
      +
      +
      +
      + + + +
      + + \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html new file mode 100644 index 0000000..23609df --- /dev/null +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html @@ -0,0 +1,152 @@ + + + + + + + Puppet Class: cd_haproxy::main::config + + — Documentation by YARD 0.9.16 + + + + + + + + + + + + + + + + + + + +
      + + +

      Puppet Class: cd_haproxy::main::config

      +
      + +
      +
      Inherits:
      +
      cd_haproxy::params
      +
      + + +
      +
      Defined in:
      +
      + manifests/main/config.pp +
      +
      +
      + +

      Summary

      + Class manages all aspects of configuring the module logic for +cd_haproxy. + +

      Overview

      +
      +
      + +

      cd_haproxy::main::config.pp Module name: cd_haproxy Author: Arne Teuke +(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

      + +

      cd_haproxy is used for providing automatic configuration of HA proxy. +Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is +free software: you can redistribute it and/or modify it under the terms of +the GNU General Public License as published by the Free Software +Foundation, either version 3 of the License, or (at your option) any later +version.

      + +

      This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details.

      + +

      You should have received a copy of the GNU General Public License along +with this program. If not, see www.gnu.org/licenses/.

      + +
      +
      + + +
      + + +
      + + + + + +
      +
      +
      +
      +24
      +25
      +26
      +27
      +28
      +29
      +30
      +31
      +
      +
      # File 'manifests/main/config.pp', line 24
      +
      +class cd_haproxy::main::config (
      +
      +) inherits cd_haproxy::params {
      +
      +  include cd_haproxy::server::service
      +  include cd_haproxy::server::proxy_test
      +
      +}
      +
      +
      +
      + + + +
      + + \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Adirs.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Adirs.html new file mode 100644 index 0000000..94fe58b --- /dev/null +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Adirs.html @@ -0,0 +1,199 @@ + + + + + + + Puppet Class: cd_haproxy::main::dirs + + — Documentation by YARD 0.9.16 + + + + + + + + + + + + + + + + + + + +
      + + +

      Puppet Class: cd_haproxy::main::dirs

      +
      + +
      +
      Inherits:
      +
      cd_haproxy::params
      +
      + + +
      +
      Defined in:
      +
      + manifests/main/dirs.pp +
      +
      +
      + +

      Summary

      + Class manages all directories required for cd_haproxy. + +

      Overview

      +
      +
      + +

      cd_haproxy::main::dirs.pp Module name: cd_haproxy Author: Arne Teuke +(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

      + +

      cd_haproxy is used for providing automatic configuration of HA proxy. +Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is +free software: you can redistribute it and/or modify it under the terms of +the GNU General Public License as published by the Free Software +Foundation, either version 3 of the License, or (at your option) any later +version.

      + +

      This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details.

      + +

      You should have received a copy of the GNU General Public License along +with this program. If not, see www.gnu.org/licenses/.

      + +
      +
      + + +
      + + +
      + + + + + +
      +
      +
      +
      +23
      +24
      +25
      +26
      +27
      +28
      +29
      +30
      +31
      +32
      +33
      +34
      +35
      +36
      +37
      +38
      +39
      +40
      +41
      +42
      +43
      +44
      +45
      +46
      +47
      +48
      +49
      +50
      +51
      +52
      +53
      +54
      +
      +
      # File 'manifests/main/dirs.pp', line 23
      +
      +class cd_haproxy::main::dirs (
      +
      +) inherits cd_haproxy::params {
      +
      +  if $fqdn == $hy_host_fqdn {
      +    require cd_haproxy::main::user
      +
      +    # main dir
      +    file { $hy_main_dir:
      +      ensure    =>  directory,
      +      owner     =>  'root',
      +      group     =>  'root',
      +      mode      =>  '0755',
      +      selrange  =>  s0,
      +      selrole   =>  object_r,
      +      seltype   =>  etc_t,
      +      seluser   =>  system_u,
      +    }
      +
      +    # errors dir
      +    file { $hy_errors_dir:
      +      ensure    =>  directory,
      +      owner     =>  'root',
      +      group     =>  'root',
      +      mode      =>  '0755',
      +      selrange  =>  s0,
      +      selrole   =>  object_r,
      +      seltype   =>  etc_t,
      +      seluser   =>  system_u,
      +    }
      +  }
      +}
      +
      +
      +
      + + + +
      + + \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html new file mode 100644 index 0000000..7de5c7d --- /dev/null +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html @@ -0,0 +1,399 @@ + + + + + + + Puppet Class: cd_haproxy::main::files + + — Documentation by YARD 0.9.16 + + + + + + + + + + + + + + + + + + + +
      + + +

      Puppet Class: cd_haproxy::main::files

      +
      + +
      +
      Inherits:
      +
      cd_haproxy::params
      +
      + + +
      +
      Defined in:
      +
      + manifests/main/files.pp +
      +
      +
      + +

      Summary

      + Class manages all configuration files required for cd_haproxy. + +

      Overview

      +
      +
      + +

      cd_haproxy::main::files.pp Module name: cd_haproxy Author: Arne Teuke +(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

      + +

      cd_haproxy is used for providing automatic configuration of HA proxy. +Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is +free software: you can redistribute it and/or modify it under the terms of +the GNU General Public License as published by the Free Software +Foundation, either version 3 of the License, or (at your option) any later +version.

      + +

      This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details.

      + +

      You should have received a copy of the GNU General Public License along +with this program. If not, see www.gnu.org/licenses/.

      + +
      +
      + + +
      + + +
      + + + + + +
      +
      +
      +
      +23
      +24
      +25
      +26
      +27
      +28
      +29
      +30
      +31
      +32
      +33
      +34
      +35
      +36
      +37
      +38
      +39
      +40
      +41
      +42
      +43
      +44
      +45
      +46
      +47
      +48
      +49
      +50
      +51
      +52
      +53
      +54
      +55
      +56
      +57
      +58
      +59
      +60
      +61
      +62
      +63
      +64
      +65
      +66
      +67
      +68
      +69
      +70
      +71
      +72
      +73
      +74
      +75
      +76
      +77
      +78
      +79
      +80
      +81
      +82
      +83
      +84
      +85
      +86
      +87
      +88
      +89
      +90
      +91
      +92
      +93
      +94
      +95
      +96
      +97
      +98
      +99
      +100
      +101
      +102
      +103
      +104
      +105
      +106
      +107
      +108
      +109
      +110
      +111
      +112
      +113
      +114
      +115
      +116
      +117
      +118
      +119
      +120
      +121
      +122
      +123
      +124
      +125
      +126
      +127
      +128
      +129
      +130
      +131
      +132
      +133
      +134
      +135
      +136
      +137
      +138
      +139
      +140
      +141
      +142
      +143
      +144
      +145
      +146
      +147
      +148
      +149
      +150
      +151
      +152
      +153
      +154
      +
      +
      # File 'manifests/main/files.pp', line 23
      +
      +class cd_haproxy::main::files (
      +
      +) inherits cd_haproxy::params {
      +
      +  if $fqdn == $hy_host_fqdn {
      +    require cd_haproxy::main::dirs
      +
      +    # create the concat target
      +    concat {$hy_main_config:
      +      ensure    =>  present,
      +      owner     =>  'root',
      +      group     =>  'root',
      +      mode      =>  '0640',
      +      selrange  =>  s0,
      +      selrole   =>  object_r,
      +      seltype   =>  etc_t,
      +      seluser   =>  system_u,
      +      notify    =>  Service[$hy_service],
      +    }
      +
      +    # create the header
      +    concat::fragment { 'header':
      +      target    =>  $hy_main_config,
      +      content   =>  template($hy_config_head_erb),
      +      order     =>  '001',
      +    }
      +
      +    # pid file
      +    file { $hy_pid:
      +      ensure    =>  file,
      +      owner     =>  'root',
      +      group     =>  'root',
      +      mode      =>  '0644',
      +      selrange  =>  s0,
      +      selrole   =>  object_r,
      +      seltype   =>  haproxy_var_run_t,
      +      seluser   =>  system_u,
      +    }
      +
      +    # error files
      +    file { $hy_400_file:
      +      ensure    =>  file,
      +      owner     =>  'root',
      +      group     =>  'root',
      +      mode      =>  '0644',
      +      selrange  =>  s0,
      +      selrole   =>  object_r,
      +      seltype   =>  etc_t,
      +      seluser   =>  system_u,
      +      content   =>  template($hy_400_erb),
      +      notify    =>  Service[$hy_service],
      +    }
      +
      +    file { $hy_403_file:
      +      ensure    =>  file,
      +      owner     =>  'root',
      +      group     =>  'root',
      +      mode      =>  '0644',
      +      selrange  =>  s0,
      +      selrole   =>  object_r,
      +      seltype   =>  etc_t,
      +      seluser   =>  system_u,
      +      content   =>  template($hy_403_erb),
      +      notify    =>  Service[$hy_service],
      +    }
      +
      +    file { $hy_408_file:
      +      ensure    =>  file,
      +      owner     =>  'root',
      +      group     =>  'root',
      +      mode      =>  '0644',
      +      selrange  =>  s0,
      +      selrole   =>  object_r,
      +      seltype   =>  etc_t,
      +      seluser   =>  system_u,
      +      content   =>  template($hy_408_erb),
      +      notify    =>  Service[$hy_service],
      +    }
      +
      +    file { $hy_500_file:
      +      ensure    =>  file,
      +      owner     =>  'root',
      +      group     =>  'root',
      +      mode      =>  '0644',
      +      selrange  =>  s0,
      +      selrole   =>  object_r,
      +      seltype   =>  etc_t,
      +      seluser   =>  system_u,
      +      content   =>  template($hy_500_erb),
      +      notify    =>  Service[$hy_service],
      +    }
      +
      +    file { $hy_502_file:
      +      ensure    =>  file,
      +      owner     =>  'root',
      +      group     =>  'root',
      +      mode      =>  '0644',
      +      selrange  =>  s0,
      +      selrole   =>  object_r,
      +      seltype   =>  etc_t,
      +      seluser   =>  system_u,
      +      content   =>  template($hy_502_erb),
      +      notify    =>  Service[$hy_service],
      +    }
      +
      +    file { $hy_503_file:
      +      ensure    =>  file,
      +      owner     =>  'root',
      +      group     =>  'root',
      +      mode      =>  '0644',
      +      selrange  =>  s0,
      +      selrole   =>  object_r,
      +      seltype   =>  etc_t,
      +      seluser   =>  system_u,
      +      content   =>  template($hy_503_erb),
      +      notify    =>  Service[$hy_service],
      +    }
      +
      +    file { $hy_504_file:
      +      ensure    =>  file,
      +      owner     =>  'root',
      +      group     =>  'root',
      +      mode      =>  '0644',
      +      selrange  =>  s0,
      +      selrole   =>  object_r,
      +      seltype   =>  etc_t,
      +      seluser   =>  system_u,
      +      content   =>  template($hy_504_erb),
      +      notify    =>  Service[$hy_service],
      +    }
      +  }
      +}
      +
      +
      +
      + + + +
      + + \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Ainstall.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Ainstall.html new file mode 100644 index 0000000..bda5caa --- /dev/null +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Ainstall.html @@ -0,0 +1,156 @@ + + + + + + + Puppet Class: cd_haproxy::main::install + + — Documentation by YARD 0.9.16 + + + + + + + + + + + + + + + + + + + +
      + + +

      Puppet Class: cd_haproxy::main::install

      +
      + +
      +
      Inherits:
      +
      cd_haproxy::params
      +
      + + +
      +
      Defined in:
      +
      + manifests/main/install.pp +
      +
      +
      + +

      Summary

      + Class manage all aspects of installing binaries required for +cd_haproxy + +

      Overview

      +
      +
      + +

      cd_haproxy::main::install.pp Module name: cd_haproxy Author: Arne Teuke +(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

      + +

      cd_haproxy is used for providing automatic configuration of HA proxy. +Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is +free software: you can redistribute it and/or modify it under the terms of +the GNU General Public License as published by the Free Software +Foundation, either version 3 of the License, or (at your option) any later +version.

      + +

      This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details.

      + +

      You should have received a copy of the GNU General Public License along +with this program. If not, see www.gnu.org/licenses/.

      + +
      +
      + + +
      + + +
      + + + + + +
      +
      +
      +
      +24
      +25
      +26
      +27
      +28
      +29
      +30
      +31
      +32
      +33
      +
      +
      # File 'manifests/main/install.pp', line 24
      +
      +class cd_haproxy::main::install (
      +
      +) inherits cd_haproxy::params {
      +
      +  if $fqdn == $hy_host_fqdn {
      +    package {$reqpackages:
      +      ensure => $pkg_ensure,
      +    }
      +  }
      +}
      +
      +
      +
      + + + +
      + + \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Auser.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Auser.html new file mode 100644 index 0000000..d1f0428 --- /dev/null +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Auser.html @@ -0,0 +1,191 @@ + + + + + + + Puppet Class: cd_haproxy::main::user + + — Documentation by YARD 0.9.16 + + + + + + + + + + + + + + + + + + + +
      + + +

      Puppet Class: cd_haproxy::main::user

      +
      + +
      +
      Inherits:
      +
      cd_haproxy::params
      +
      + + +
      +
      Defined in:
      +
      + manifests/main/user.pp +
      +
      +
      + +

      Summary

      + Class manages service users for cd_haproxy. + +

      Overview

      +
      +
      + +

      cd_haproxy::main::user.pp Module name: cd_haproxy Author: Arne Teuke +(arne_teuke@ConfDroid.com)

      + +

      License:

      + +

      This file is part of cd_haproxy.

      + +

      cd_haproxy is used for providing automatic configuration of HAproxy +Copyright (C) 2016 ConfDroid (copyright@ConfDroid.com) This program is +free software: you can redistribute it and/or modify it under the terms of +the GNU General Public License as published by the Free Software +Foundation, either version 3 of the License, or (at your option) any later +version.

      + +

      This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details.

      + +

      You should have received a copy of the GNU General Public License along +with this program. If not, see www.gnu.org/licenses/.

      + +
      +
      + + +
      + + +
      + + + + + +
      +
      +
      +
      +23
      +24
      +25
      +26
      +27
      +28
      +29
      +30
      +31
      +32
      +33
      +34
      +35
      +36
      +37
      +38
      +39
      +40
      +41
      +42
      +43
      +44
      +45
      +46
      +47
      +48
      +
      +
      # File 'manifests/main/user.pp', line 23
      +
      +class cd_haproxy::main::user (
      +
      +) inherits cd_haproxy::params {
      +
      +  if $fqdn == $hy_host_fqdn {
      +    require cd_haproxy::main::install
      +
      +    # manage user
      +    user { $hy_user_name:
      +      ensure      =>  present,
      +      name        =>  $hy_user_name,
      +      allowdupe   =>  false,
      +      comment     =>  $hy_user_comment,
      +      gid         =>  $hy_user_name,
      +      managehome  =>  true,
      +      home        =>  $hy_user_home,
      +      shell       =>  $hy_user_shell,
      +    }
      +
      +    group { $hy_user_name:
      +      ensure      =>  present,
      +      name        =>  $hy_user_name,
      +      allowdupe   =>  false,
      +    }
      +  }
      +}
      +
      +
      +
      + + + +
      + + \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html new file mode 100644 index 0000000..26b9ba5 --- /dev/null +++ b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html @@ -0,0 +1,922 @@ + + + + + + + Puppet Class: cd_haproxy::params + + — Documentation by YARD 0.9.16 + + + + + + + + + + + + + + + + + + + +
      + + +

      Puppet Class: cd_haproxy::params

      + + +

      Summary

      + Class holds all parameters for the cd_haproxy module and is +inherited by all classes except defines. + +

      Overview

      +
      +
      + +

      cd_haproxy::params.pp Module name: cd_haproxy Author: Arne Teuke +(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

      + +

      cd_haproxy is used for providing automatic configuration of HA proxy. +Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is +free software: you can redistribute it and/or modify it under the terms of +the GNU General Public License as published by the Free Software +Foundation, either version 3 of the License, or (at your option) any later +version.

      + +

      This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details.

      + +

      You should have received a copy of the GNU General Public License along +with this program. If not, see www.gnu.org/licenses/.

      + +
      +
      + + +
      +

      Parameters:

      +
        + +
      • + + pkg_ensure + + + (string) + + + (defaults to: 'latest') + + + — +
        +

        which package +type to choose, i.e. latest or present.

        +
        + +
      • + +
      • + + reqpackages + + + (string) + + + (defaults to: ['haproxy']) + + + — +
        +

        specify th epackages to be installed

        +
        + +
      • + +
      • + + hy_host_fqdn + + + (string) + + + (defaults to: "proxy.${::domain}") + + + — +
        +

        the fqdn of the ha proxy host. mmust be fqdn, not cname. specify multiple +fqdns via array.

        +
        + +
      • + +
      • + + hy_manage_fw + + + (boolean) + + + (defaults to: true) + + + — +
        +

        whether to manage the firewall.

        +
        + +
      • + +
      • + + hy_fw_order_no + + + (string) + + + (defaults to: '50') + + + — +
        +

        the rule number to control the oder of the firewall rules.

        +
        + +
      • + +
      • + + hy_http_port + + + (string) + + + (defaults to: '80') + + + — +
        +

        the http port. used in firewall settings

        +
        + +
      • + +
      • + + hy_https_port + + + (string) + + + (defaults to: '443') + + + — +
        +

        the https port. used in firewall settings

        +
        + +
      • + +
      • + + hy_user_name + + + (string) + + + (defaults to: 'haproxy') + + + — +
        +

        the name of the haproxy service user.

        +
        + +
      • + +
      • + + hy_user_comment + + + (string) + + + (defaults to: 'haproxy user') + + + — +
        +

        the comment of the haproxy user, shows up in emails sent from haproxy.

        +
        + +
      • + +
      • + + hy_user_home + + + (string) + + + (defaults to: '/var/lib/haproxy') + + + — +
        +

        the home directory for the haprxy user.

        +
        + +
      • + +
      • + + hy_user_shell + + + (string) + + + (defaults to: '/sbin/nologin') + + + — +
        +

        the shell for the haproxy user.

        +
        + +
      • + +
      • + + hy_log_target + + + (string) + + + (defaults to: '127.0.0.1') + + + — +
        +

        Where to send the logs for this haproxy. Currently only local logging / +rsyslog forwarding supported.

        +
        + +
      • + +
      • + + hy_log_facility + + + (string) + + + (defaults to: 'local2') + + + — +
        +

        which logging facility to use.

        +
        + +
      • + +
      • + + hy_chroot + + + (string) + + + (defaults to: '/var/lib/haproxy') + + + — +
        +

        where the chroot should be

        +
        + +
      • + +
      • + + hy_pid + + + (string) + + + (defaults to: '/var/run/haproxy.pid') + + + — +
        +

        the pid file to use.

        +
        + +
      • + +
      • + + hy_maxconn + + + (string) + + + (defaults to: '4000') + + + — +
        +

        how many connections should we max allow.

        +
        + +
      • + +
      • + + hy_show_stats + + + (boolean) + + + (defaults to: true) + + + — +
        +

        whether we want to display the statistics page

        +
        + +
      • + +
      • + + hy_stats_socket + + + (string) + + + (defaults to: '/var/lib/haproxy/stats') + + + — +
        +

        name and path of the stats socket

        +
        + +
      • + +
      • + + hy_default_mode + + + (string) + + + (defaults to: 'http') + + + — +
        +

        which mode to use in the defaults block

        +
        + +
      • + +
      • + + hy_log_default + + + (string) + + + (defaults to: 'global') + + + — +
        +

        should be used when the instance's logging parameters are the same as +the global ones.

        +
        + +
      • + +
      • + + hy_use_httplog + + + (boolean) + + + (defaults to: true) + + + — +
        +

        whether to use httplogging option. Enable logging of HTTP request, session +state and timers

        +
        + +
      • + +
      • + + hy_use_dontlognull + + + (boolean) + + + (defaults to: true) + + + — +
        +

        Whether to enable or disable dontlognull option. true enables, false +disables.

        +
        + +
      • + +
      • + + hy_use_http_server_close + + + (boolean) + + + (defaults to: true) + + + — +
        +

        Enable or disable HTTP connection closing on the server side

        +
        + +
      • + +
      • + + hy_use_forward_for + + + (boolean) + + + (defaults to: true) + + + — +
        +

        Enable insertion of the X-Forwarded-For header to requests sent to servers.

        +
        + +
      • + +
      • + + hy_use_redispatch + + + (boolean) + + + (defaults to: true) + + + — +
        +

        Enable or disable session redistribution in case of connection failure.

        +
        + +
      • + +
      • + + hy_max_retries + + + (string) + + + (defaults to: '3') + + + — +
        +

        Set the number of retries to perform on a server after a connection +failure.

        +
        + +
      • + +
      • + + hy_timeout_http_request + + + (string) + + + (defaults to: '10s') + + + — +
        +

        Set the maximum allowed time to wait for a complete HTTP request.

        +
        + +
      • + +
      • + + hy_timeout_queue + + + (string) + + + (defaults to: '1m') + + + — +
        +

        Set the maximum time to wait in the queue for a connection slot to be free.

        +
        + +
      • + +
      • + + hy_hy_timeout_connect + + + (string) + + + + — +
        +

        Set the maximum time to wait for a connection attempt to a server to +succeed.

        +
        + +
      • + +
      • + + hy_timeout_client + + + (string) + + + (defaults to: '1m') + + + — +
        +

        Set the maximum inactivity time on the client side.

        +
        + +
      • + +
      • + + hy_timeout_server + + + (string) + + + (defaults to: '1m') + + + — +
        +

        Set the maximum inactivity time on the server side.

        +
        + +
      • + +
      • + + hy_timeout_connect + + + (Any) + + + (defaults to: '10s') + + +
      • + +
      • + + hy_timeout_http_keep_alive + + + (Any) + + + (defaults to: '10s') + + +
      • + +
      • + + hy_timeout_check + + + (Any) + + + (defaults to: '10s') + + +
      • + +
      + + +

      See Also:

      + + +
      + + + + + +
      +
      +
      +
      +74
      +75
      +76
      +77
      +78
      +79
      +80
      +81
      +82
      +83
      +84
      +85
      +86
      +87
      +88
      +89
      +90
      +91
      +92
      +93
      +94
      +95
      +96
      +97
      +98
      +99
      +100
      +101
      +102
      +103
      +104
      +105
      +106
      +107
      +108
      +109
      +110
      +111
      +112
      +113
      +114
      +115
      +116
      +117
      +118
      +119
      +120
      +121
      +122
      +123
      +124
      +125
      +126
      +127
      +128
      +129
      +130
      +131
      +132
      +133
      +134
      +135
      +136
      +137
      +138
      +139
      +140
      +141
      +142
      +143
      +144
      +145
      +146
      +147
      +148
      +149
      +150
      +
      +
      # File 'manifests/params.pp', line 74
      +
      +class cd_haproxy::params (
      +
      +$pkg_ensure                   = 'latest',
      +$reqpackages                  = ['haproxy'],
      +
      +$hy_host_fqdn                 = "proxy.${::domain}",
      +
      +# firewall
      +$hy_manage_fw                 = true,
      +$hy_fw_order_no               = '50',
      +
      +# main config
      +$hy_http_port                 = '80',
      +$hy_https_port                = '443',
      +$hy_chroot                    = '/var/lib/haproxy',
      +$hy_pid                       = '/var/run/haproxy.pid',
      +$hy_maxconn                   = '4000',
      +$hy_show_stats                = true,
      +$hy_stats_socket              = '/var/lib/haproxy/stats',
      +$hy_default_mode              = 'http',
      +$hy_use_http_server_close     = true,
      +$hy_use_forward_for           = true,
      +$hy_use_redispatch            = true,
      +$hy_max_retries               = '3',
      +$hy_timeout_http_request      = '10s',
      +$hy_timeout_queue             = '1m',
      +$hy_timeout_connect           = '10s',
      +$hy_timeout_client            = '1m',
      +$hy_timeout_server            = '1m',
      +$hy_timeout_http_keep_alive   = '10s',
      +$hy_timeout_check             = '10s',
      +
      +# user
      +$hy_user_name                 = 'haproxy',
      +$hy_user_comment              = 'haproxy user',
      +$hy_user_home                 = '/var/lib/haproxy',
      +$hy_user_shell                = '/sbin/nologin',
      +
      +# logging
      +$hy_log_target                = '127.0.0.1',
      +$hy_log_facility              = 'local2',
      +$hy_log_default               = 'global',
      +$hy_use_httplog               = true,
      +$hy_use_dontlognull           = true,
      +
      +) {
      +
      +# service
      +$hy_service           = 'haproxy'
      +
      +# directories
      +$hy_main_dir          = '/etc/haproxy'
      +$hy_errors_dir        = "${hy_main_dir}/errors"
      +
      +# files
      +$hy_main_config       = "${hy_main_dir}/haproxy.cfg"
      +$hy_config_head_erb   = 'cd_haproxy/haproxy_head.erb'
      +$hy_400_file          = "${hy_errors_dir}/400.http"
      +$hy_400_erb           = 'cd_haproxy/errors/400_http.erb'
      +$hy_403_file          = "${hy_errors_dir}/403.http"
      +$hy_403_erb           = 'cd_haproxy/errors/403_http.erb'
      +$hy_408_file          = "${hy_errors_dir}/408.http"
      +$hy_408_erb           = 'cd_haproxy/errors/408_http.erb'
      +$hy_500_file          = "${hy_errors_dir}/500.http"
      +$hy_500_erb           = 'cd_haproxy/errors/500_http.erb'
      +$hy_502_file          = "${hy_errors_dir}/502.http"
      +$hy_502_erb           = 'cd_haproxy/errors/502_http.erb'
      +$hy_503_file          = "${hy_errors_dir}/503.http"
      +$hy_503_erb           = 'cd_haproxy/errors/503_http.erb'
      +$hy_504_file          = "${hy_errors_dir}/504.http"
      +$hy_504_erb           = 'cd_haproxy/errors/504_http.erb'
      +
      +# includes must be last
      +
      +  include cd_haproxy::main::config
      +
      +}
      +
      +
      +
      + + + +
      + + \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aproxy_test.html b/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aproxy_test.html new file mode 100644 index 0000000..da9afe2 --- /dev/null +++ b/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aproxy_test.html @@ -0,0 +1,173 @@ + + + + + + + Puppet Class: cd_haproxy::server::proxy_test + + — Documentation by YARD 0.9.16 + + + + + + + + + + + + + + + + + + + +
      + + +

      Puppet Class: cd_haproxy::server::proxy_test

      +
      + +
      +
      Inherits:
      +
      cd_haproxy::params
      +
      + + +
      +
      Defined in:
      +
      + manifests/server/proxy_test.pp +
      +
      +
      + +

      Summary

      + Define manages the proxies for cd_haproxy. + +

      Overview

      +
      +
      + +

      cd_haproxy::server::proxy_test.pp Module name: cd_haproxy Author: Arne +Teuke (arne_teuke@ConfDroid.com)

      + +

      License:

      + +

      This file is part of cd_haproxy.

      + +

      cd_haproxy is used for providing automatic configuration of HAProxy +Copyright (C) 2016 ConfDroid (copyright@ConfDroid.com) This program is +free software: you can redistribute it and/or modify it under the terms of +the GNU General Public License as published by the Free Software +Foundation, either version 3 of the License, or (at your option) any later +version.

      + +

      This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details.

      + +

      You should have received a copy of the GNU General Public License along +with this program. If not, see www.gnu.org/licenses/.

      + +
      +
      + + +
      + + +
      + + + + + +
      +
      +
      +
      +23
      +24
      +25
      +26
      +27
      +28
      +29
      +30
      +31
      +32
      +33
      +34
      +35
      +36
      +37
      +38
      +39
      +
      +
      # File 'manifests/server/proxy_test.pp', line 23
      +
      +class cd_haproxy::server::proxy_test (
      +
      +) inherits cd_haproxy::params {
      +
      +  cd_haproxy::server::proxy { 'testing':
      +    haproxy_fqdn    =>  'pxe703.studydivision.local',
      +    frontend_name   =>  'test01-frontend',
      +    frontend_mode   =>  'http',
      +    acl_rule        =>  ['too_fast fe_sess_rate ge 10',
      +                        'network_allowed src 0.0.0.0/0'],
      +    fe_maxconn      =>  '10000',
      +    backend_name    =>  'test01-backend',
      +    be_server_name  =>  ['web01 web01.confdroid.com:80 check',
      +                        'web02 web02.confdroid.com:80 check'],
      +
      +  }
      +}
      +
      +
      +
      + + + +
      + + \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aservice.html b/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aservice.html new file mode 100644 index 0000000..cf281a5 --- /dev/null +++ b/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aservice.html @@ -0,0 +1,167 @@ + + + + + + + Puppet Class: cd_haproxy::server::service + + — Documentation by YARD 0.9.16 + + + + + + + + + + + + + + + + + + + +
      + + +

      Puppet Class: cd_haproxy::server::service

      +
      + +
      +
      Inherits:
      +
      cd_haproxy::params
      +
      + + +
      +
      Defined in:
      +
      + manifests/server/service.pp +
      +
      +
      + +

      Summary

      + Class manages the service(s) for cd_haproxy. + +

      Overview

      +
      +
      + +

      cd_haproxy::server::service.pp Module name: cd_haproxy Author: Arne Teuke +(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

      + +

      cd_haproxy is used for providing automatic configuration of HA proxy. +Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is +free software: you can redistribute it and/or modify it under the terms of +the GNU General Public License as published by the Free Software +Foundation, either version 3 of the License, or (at your option) any later +version.

      + +

      This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details.

      + +

      You should have received a copy of the GNU General Public License along +with this program. If not, see www.gnu.org/licenses/.

      + +
      +
      + + +
      + + +
      + + + + + +
      +
      +
      +
      +23
      +24
      +25
      +26
      +27
      +28
      +29
      +30
      +31
      +32
      +33
      +34
      +35
      +36
      +37
      +38
      +
      +
      # File 'manifests/server/service.pp', line 23
      +
      +class cd_haproxy::server::service (
      +
      +) inherits cd_haproxy::params {
      +
      +  if $fqdn == $hy_host_fqdn {
      +
      +    require cd_haproxy::firewall::iptables
      +
      +    service { $hy_service:
      +      ensure      => running,
      +      hasstatus   => true,
      +      hasrestart  => true,
      +      enable      => true,
      +    }
      +  }
      +}
      +
      +
      +
      + + + +
      + + \ No newline at end of file diff --git a/doc/puppet_defined_type_list.html b/doc/puppet_defined_type_list.html new file mode 100644 index 0000000..b481508 --- /dev/null +++ b/doc/puppet_defined_type_list.html @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + Defined Type List + + + +
      +
      +

      Defined Type List

      + + + +
      + + +
      + + diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html new file mode 100644 index 0000000..589e533 --- /dev/null +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html @@ -0,0 +1,437 @@ + + + + + + + Defined Type: cd_haproxy::server::proxy + + — Documentation by YARD 0.9.16 + + + + + + + + + + + + + + + + + + + +
      + + +

      Defined Type: cd_haproxy::server::proxy

      +
      +
      +
      Defined in:
      +
      + manifests/server/proxy.pp +
      +
      +
      + +

      Summary

      + Define manages the proxies for cd_haproxy. + +

      Overview

      +
      +
      + +

      cd_haproxy::server::proxy.pp Module name: cd_haproxy Author: Arne Teuke +(arne_teuke@ConfDroid.com)

      + +

      License:

      + +

      This file is part of cd_haproxy.

      + +

      cd_haproxy is used for providing automatic configuration of HAProxy +Copyright (C) 2016 ConfDroid (copyright@ConfDroid.com) This program is +free software: you can redistribute it and/or modify it under the terms of +the GNU General Public License as published by the Free Software +Foundation, either version 3 of the License, or (at your option) any later +version.

      + +

      This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details.

      + +

      You should have received a copy of the GNU General Public License along +with this program. If not, see www.gnu.org/licenses/.

      + +
      +
      + + +
      +

      Parameters:

      +
        + +
      • + + haproxy_fqdn + + + (string) + + + (defaults to: undef) + + + — +
        +

        the fqdn of the haproxy server in question.

        +
        + +
      • + +
      • + + frontend_name + + + (string) + + + (defaults to: undef) + + + — +
        +

        the name for the frontend section rule.

        +
        + +
      • + +
      • + + frontend_order + + + (string) + + + (defaults to: '010') + + + — +
        +

        the order where the concat should appear in the file.

        +
        + +
      • + +
      • + + frontend_mode + + + (string) + + + (defaults to: undef) + + + — +
        +

        mode for the loadbalancer instance: http or tcp

        +
        + +
      • + +
      • + + fe_use_backend + + + (string) + + + (defaults to: '') + + + — +
        +

        which backend to use. if left empty, the default backend will be used.

        +
        + +
      • + +
      • + + fe_bind_mode + + + (string) + + + (defaults to: '*:80') + + + — +
        +

        which bind mode to use, i.e. to which interface and poort to bind.

        +
        + +
      • + +
      • + + acl_rule + + + (string) + + + (defaults to: '') + + + — +
        +

        an ACL rule to be inserted if required. Empty values will not be populated.

        +
        + +
      • + +
      • + + acl_order + + + (string) + + + (defaults to: '020') + + + — +
        +

        the order where the acl rule should be inserted, so it will be within the +correct lb instance configuration.

        +
        + +
      • + +
      • + + backend_name + + + (string) + + + (defaults to: undef) + + + — +
        +

        the backend name to be used for the rule.

        +
        + +
      • + +
      • + + backend_order + + + (string) + + + (defaults to: '030') + + + — +
        +

        the order for the backend name, so it will be within the correct lb +instance configuration.

        +
        + +
      • + +
      • + + fe_maxconn + + + (string) + + + (defaults to: undef) + + + — +
        +

        the maximum connections for the lb instance.

        +
        + +
      • + +
      • + + be_server_name + + + (Any) + + + (defaults to: undef) + + +
      • + +
      + + +
      + + + + + +
      +
      +
      +
      +40
      +41
      +42
      +43
      +44
      +45
      +46
      +47
      +48
      +49
      +50
      +51
      +52
      +53
      +54
      +55
      +56
      +57
      +58
      +59
      +60
      +61
      +62
      +63
      +64
      +65
      +66
      +67
      +68
      +69
      +70
      +71
      +72
      +73
      +74
      +75
      +76
      +77
      +78
      +79
      +80
      +81
      +82
      +83
      +
      +
      # File 'manifests/server/proxy.pp', line 40
      +
      +define cd_haproxy::server::proxy (
      +
      +$haproxy_fqdn     = undef,
      +$frontend_name    = undef,
      +$frontend_mode    = undef,
      +$fe_use_backend   = '',
      +$fe_bind_mode     = '*:80',
      +$frontend_order   = '010',
      +$acl_rule         = '',
      +$acl_order        = '020',
      +$backend_name     = undef,
      +$backend_order    = '030',
      +$fe_maxconn       = undef,
      +$be_server_name   = undef,
      +
      +
      +) {
      +
      +$hy_main_config   = '/etc/haproxy/haproxy.cfg'
      +$hy_frontendrule  = 'cd_haproxy/haproxy_frontend_rule.erb'
      +$hy_backendrule   = 'cd_haproxy/haproxy_backend_rule.erb'
      +$hy_acl_rule      = 'cd_haproxy/haproxy_acl_rule.erb'
      +
      +  # create frontend section
      +  concat::fragment { "frontend_${name}":
      +    target  =>  $hy_main_config,
      +    content =>  template($hy_frontendrule),
      +    order   =>  $frontend_order,
      +  }
      +
      +  # create acl section
      +  concat::fragment { "acl_${name}":
      +    target  =>  $hy_main_config,
      +    content =>  template($hy_acl_rule),
      +    order   =>  $acl_order,
      +  }
      +
      +  # create backend section
      +  concat::fragment { "backend_${name}":
      +    target  =>  $hy_main_config,
      +    content =>  template($hy_backendrule),
      +    order   =>  $backend_order,
      +  }
      +}
      +
      +
      +
      + + + +
      + + \ No newline at end of file diff --git a/doc/top-level-namespace.html b/doc/top-level-namespace.html new file mode 100644 index 0000000..ffe07ca --- /dev/null +++ b/doc/top-level-namespace.html @@ -0,0 +1,98 @@ + + + + + + + Top Level Namespace + + — Documentation by YARD 0.9.16 + + + + + + + + + + + + + + + + + + + +
      + + +

      Top Level Namespace + + + +

      +
      + + + + + + + + + + + +
      + + + + + + + + + + +
      + + + +
      + + \ No newline at end of file From d2f0aeb550a1c39937ddfb08b83f21f28d0adbe1 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Fri, 10 Sep 2021 14:47:46 +0200 Subject: [PATCH 11/59] recommit for updates in build 119 --- doc/file.README.html | 6 +++--- doc/index.html | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/doc/file.README.html b/doc/file.README.html index 5360084..23d4c92 100644 --- a/doc/file.README.html +++ b/doc/file.README.html @@ -77,13 +77,13 @@ application- or database servers etc.

      WARNING

      -

      **__!!! Attention: Never use this puppet module on systems which have +

      Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and -what would have been configured, hence previuos configurations outside the +what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live -production!!! __**

      +production

      Features

      diff --git a/doc/index.html b/doc/index.html index 796df7f..3f9769a 100644 --- a/doc/index.html +++ b/doc/index.html @@ -77,13 +77,13 @@ application- or database servers etc.

      WARNING

      -

      **__!!! Attention: Never use this puppet module on systems which have +

      Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and -what would have been configured, hence previuos configurations outside the +what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live -production!!! __**

      +production

      Features

      From 55e5ba0b7521bfe3d36eea5b59d32d43b3bc970b Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Fri, 10 Sep 2021 16:32:15 +0200 Subject: [PATCH 12/59] recommit for updates in build 120 --- .../cd_haproxy_3A_3Aparams.html | 43 +++++++++---------- .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html | 13 ++++-- 2 files changed, 30 insertions(+), 26 deletions(-) diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html index 26b9ba5..5ed033c 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html @@ -642,12 +642,14 @@ failure.

    • - hy_hy_timeout_connect + hy_timeout_connect (string) + (defaults to: '10s') + —
      @@ -691,19 +693,6 @@ succeed.

      Set the maximum inactivity time on the server side.

      -
    • - -
    • - - hy_timeout_connect - - - (Any) - - - (defaults to: '10s') - -
    • @@ -711,12 +700,17 @@ succeed.

      hy_timeout_http_keep_alive - (Any) + (string) (defaults to: '10s') + — +
      +

      set the timeout value for keeping https connections alive

      +
      +
    • @@ -724,12 +718,17 @@ succeed.

      hy_timeout_check - (Any) + (string) (defaults to: '10s') + — +
      +

      set the timeout value for how long to check if the timeout has occured

      +
      +
    • @@ -749,10 +748,6 @@ succeed.

       
       
      -74
      -75
      -76
      -77
       78
       79
       80
      @@ -825,10 +820,14 @@ succeed.

      147 148 149 -150
      +150 +151 +152 +153 +154 -
      # File 'manifests/params.pp', line 74
      +        
      # File 'manifests/params.pp', line 78
       
       class cd_haproxy::params (
       
      diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
      index 589e533..7e2353c 100644
      --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
      +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
      @@ -312,12 +312,17 @@ instance configuration.

      be_server_name - (Any) + (string) (defaults to: undef) + — +
      +

      set the name for the backend server

      +
      + @@ -330,7 +335,6 @@ instance configuration.

       
       
      -40
       41
       42
       43
      @@ -373,10 +377,11 @@ instance configuration.

      80 81 82 -83
      +83 +84
      -
      # File 'manifests/server/proxy.pp', line 40
      +        
      # File 'manifests/server/proxy.pp', line 41
       
       define cd_haproxy::server::proxy (
       
      
      From 1e75f3ab9031a2354b3903bfe2a2b0a8cb476e9c Mon Sep 17 00:00:00 2001
      From: Jenkins ConfDroid 
      Date: Wed, 29 Dec 2021 14:54:38 +0100
      Subject: [PATCH 13/59] recommit for updates in build 121
      
      ---
       doc/_index.html                               | 11 ++++----
       doc/css/style.css                             |  5 ++--
       doc/file.README.html                          | 14 ++++++----
       doc/frames.html                               |  4 +--
       doc/index.html                                | 14 ++++++----
       doc/js/app.js                                 | 28 +++++++++++++++++--
       doc/puppet_class_list.html                    |  4 +--
       doc/puppet_classes/cd_haproxy.html            |  9 +++---
       ...d_haproxy_3A_3Afirewall_3A_3Aiptables.html |  9 +++---
       .../cd_haproxy_3A_3Amain_3A_3Aconfig.html     |  9 +++---
       .../cd_haproxy_3A_3Amain_3A_3Adirs.html       |  9 +++---
       .../cd_haproxy_3A_3Amain_3A_3Afiles.html      |  9 +++---
       .../cd_haproxy_3A_3Amain_3A_3Ainstall.html    |  9 +++---
       .../cd_haproxy_3A_3Amain_3A_3Auser.html       |  9 +++---
       .../cd_haproxy_3A_3Aparams.html               |  9 +++---
       ...d_haproxy_3A_3Aserver_3A_3Aproxy_test.html |  9 +++---
       .../cd_haproxy_3A_3Aserver_3A_3Aservice.html  |  9 +++---
       doc/puppet_defined_type_list.html             |  4 +--
       .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html    |  9 +++---
       doc/top-level-namespace.html                  |  8 +++---
       20 files changed, 115 insertions(+), 76 deletions(-)
      
      diff --git a/doc/_index.html b/doc/_index.html
      index d590fc2..abe3379 100644
      --- a/doc/_index.html
      +++ b/doc/_index.html
      @@ -4,15 +4,15 @@
           
       
       
      -  Documentation by YARD 0.9.16
      +  Documentation by YARD 0.9.26
         
       
       
      -  
      +  
       
      -  
      +  
       
      -
      @@ -52,7 +52,7 @@
               
      -

      Documentation by YARD 0.9.16

      +

      Documentation by YARD 0.9.26

      Alphabetic Index

      @@ -126,6 +126,7 @@ +

      Defined Type Listing A-Z

      diff --git a/doc/css/style.css b/doc/css/style.css index 0bf7e2c..eb0dbc8 100644 --- a/doc/css/style.css +++ b/doc/css/style.css @@ -52,6 +52,7 @@ body { background: #fff; padding: 1.2em; padding-top: 0.2em; + box-sizing: border-box; } @media (max-width: 920px) { @@ -422,8 +423,8 @@ li.r2 { background: #fafafa; } #toc ol { padding-left: 1.8em; } #toc li { font-size: 1.1em; line-height: 1.7em; } #toc > ol > li { font-size: 1.1em; font-weight: bold; } -#toc ol > ol { font-size: 0.9em; } -#toc ol ol > ol { padding-left: 2.3em; } +#toc ol > li > ol { font-size: 0.9em; } +#toc ol ol > li > ol { padding-left: 2.3em; } #toc ol + li { margin-top: 0.3em; } #toc.hidden { padding: 10px; background: #fefefe; box-shadow: none; } #toc.hidden:hover { background: #fafafa; } diff --git a/doc/file.README.html b/doc/file.README.html index 23d4c92..87ce737 100644 --- a/doc/file.README.html +++ b/doc/file.README.html @@ -6,15 +6,15 @@ File: README - — Documentation by YARD 0.9.16 + — Documentation by YARD 0.9.26 - + - + - @@ -138,7 +138,8 @@ managing file fragments

      node 'example.example.net' {
         include cd_haproxy
      -}
      +} +
      • through Foreman:

      @@ -170,7 +171,8 @@ addresses the define, like so:

      acl_rule => ['too_fast fe_sess_rate ge 10', 'network_allowed src 0.0.0.0/0'], backend_name => 'test01-backend', - }
      + } +

      This allows the puppet module to create the sections in the configuration file as required. The haproxy service will be restarted after the changes diff --git a/doc/frames.html b/doc/frames.html index b57c778..1310783 100644 --- a/doc/frames.html +++ b/doc/frames.html @@ -2,9 +2,9 @@ - Documentation by YARD 0.9.16 + Documentation by YARD 0.9.26 - @@ -138,7 +138,8 @@ managing file fragments

      node 'example.example.net' {
         include cd_haproxy
      -}
      +} +
      • through Foreman:

      @@ -170,7 +171,8 @@ addresses the define, like so:

      acl_rule => ['too_fast fe_sess_rate ge 10', 'network_allowed src 0.0.0.0/0'], backend_name => 'test01-backend', - } + } +

      This allows the puppet module to create the sections in the configuration file as required. The haproxy service will be restarted after the changes diff --git a/doc/js/app.js b/doc/js/app.js index fecf69d..8d067fe 100644 --- a/doc/js/app.js +++ b/doc/js/app.js @@ -171,6 +171,7 @@ function generateTOC() { var counter = 0; var tags = ['h2', 'h3', 'h4', 'h5', 'h6']; var i; + var curli; if ($('#filecontents h1').length > 1) tags.unshift('h1'); for (i = 0; i < tags.length; i++) { tags[i] = '#filecontents ' + tags[i]; } var lastTag = parseInt(tags[0][1], 10); @@ -190,15 +191,25 @@ function generateTOC() { } if (thisTag > lastTag) { for (i = 0; i < thisTag - lastTag; i++) { - var tmp = $('

        '); toc.append(tmp); toc = tmp; + if ( typeof(curli) == "undefined" ) { + curli = $('
      1. '); + toc.append(curli); + } + toc = $('
          '); + curli.append(toc); + curli = undefined; } } if (thisTag < lastTag) { - for (i = 0; i < lastTag - thisTag; i++) toc = toc.parent(); + for (i = 0; i < lastTag - thisTag; i++) { + toc = toc.parent(); + toc = toc.parent(); + } } var title = $(this).attr('toc-title'); if (typeof(title) == "undefined") title = $(this).text(); - toc.append('
        1. ' + title + '
        2. '); + curli =$('
        3. ' + title + '
        4. '); + toc.append(curli); lastTag = thisTag; }); if (!show) return; @@ -275,6 +286,16 @@ function mainFocus() { setTimeout(function() { $('#main').focus(); }, 10); } +function navigationChange() { + // This works around the broken anchor navigation with the YARD template. + window.onpopstate = function() { + var hash = window.location.hash; + if (hash !== '' && $(hash)[0]) { + $(hash)[0].scrollIntoView(); + } + }; +} + $(document).ready(function() { navResizer(); navExpander(); @@ -287,6 +308,7 @@ $(document).ready(function() { constantSummaryToggle(); generateTOC(); mainFocus(); + navigationChange(); }); })(); diff --git a/doc/puppet_class_list.html b/doc/puppet_class_list.html index 9016561..4b052a9 100644 --- a/doc/puppet_class_list.html +++ b/doc/puppet_class_list.html @@ -4,9 +4,9 @@ - + - + diff --git a/doc/puppet_classes/cd_haproxy.html b/doc/puppet_classes/cd_haproxy.html index 20980dd..0ba7312 100644 --- a/doc/puppet_classes/cd_haproxy.html +++ b/doc/puppet_classes/cd_haproxy.html @@ -6,15 +6,15 @@ Puppet Class: cd_haproxy - — Documentation by YARD 0.9.16 + — Documentation by YARD 0.9.26 - + - + - @@ -104,6 +104,7 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

          +
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html b/doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html index a6f2326..42d5cbc 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html @@ -6,15 +6,15 @@ Puppet Class: cd_haproxy::firewall::iptables - — Documentation by YARD 0.9.16 + — Documentation by YARD 0.9.26 - + - + - @@ -109,6 +109,7 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

          +
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html index 23609df..395a1ce 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html @@ -6,15 +6,15 @@ Puppet Class: cd_haproxy::main::config - — Documentation by YARD 0.9.16 + — Documentation by YARD 0.9.26 - + - + - @@ -110,6 +110,7 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

          +
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Adirs.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Adirs.html index 94fe58b..4180a87 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Adirs.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Adirs.html @@ -6,15 +6,15 @@ Puppet Class: cd_haproxy::main::dirs - — Documentation by YARD 0.9.16 + — Documentation by YARD 0.9.26 - + - + - @@ -109,6 +109,7 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

          +
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html index 7de5c7d..8ac6ac9 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html @@ -6,15 +6,15 @@ Puppet Class: cd_haproxy::main::files - — Documentation by YARD 0.9.16 + — Documentation by YARD 0.9.26 - + - + - @@ -109,6 +109,7 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

          +
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Ainstall.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Ainstall.html index bda5caa..c20c5e6 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Ainstall.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Ainstall.html @@ -6,15 +6,15 @@ Puppet Class: cd_haproxy::main::install - — Documentation by YARD 0.9.16 + — Documentation by YARD 0.9.26 - + - + - @@ -110,6 +110,7 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

          +
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Auser.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Auser.html index d1f0428..ae7ff93 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Auser.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Auser.html @@ -6,15 +6,15 @@ Puppet Class: cd_haproxy::main::user - — Documentation by YARD 0.9.16 + — Documentation by YARD 0.9.26 - + - + - @@ -113,6 +113,7 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

          +
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html index 5ed033c..f639edd 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html @@ -6,15 +6,15 @@ Puppet Class: cd_haproxy::params - — Documentation by YARD 0.9.16 + — Documentation by YARD 0.9.26 - + - + - @@ -734,6 +734,7 @@ succeed.

          +

          See Also:

            diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aproxy_test.html b/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aproxy_test.html index da9afe2..a796569 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aproxy_test.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aproxy_test.html @@ -6,15 +6,15 @@ Puppet Class: cd_haproxy::server::proxy_test - — Documentation by YARD 0.9.16 + — Documentation by YARD 0.9.26 - + - + - @@ -113,6 +113,7 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

            +
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aservice.html b/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aservice.html index cf281a5..3b7bedc 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aservice.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aservice.html @@ -6,15 +6,15 @@ Puppet Class: cd_haproxy::server::service - — Documentation by YARD 0.9.16 + — Documentation by YARD 0.9.26 - + - + - @@ -109,6 +109,7 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

          +
          diff --git a/doc/puppet_defined_type_list.html b/doc/puppet_defined_type_list.html index b481508..123fe43 100644 --- a/doc/puppet_defined_type_list.html +++ b/doc/puppet_defined_type_list.html @@ -4,9 +4,9 @@ - + - + diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html index 7e2353c..ed46e18 100644 --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html @@ -6,15 +6,15 @@ Defined Type: cd_haproxy::server::proxy - — Documentation by YARD 0.9.16 + — Documentation by YARD 0.9.26 - + - + - @@ -328,6 +328,7 @@ instance configuration.

          +
          diff --git a/doc/top-level-namespace.html b/doc/top-level-namespace.html index ffe07ca..be302bd 100644 --- a/doc/top-level-namespace.html +++ b/doc/top-level-namespace.html @@ -6,15 +6,15 @@ Top Level Namespace - — Documentation by YARD 0.9.16 + — Documentation by YARD 0.9.26 - + - + - From 803636887f3a084dc35cc0235f536142ebaa9617 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Mon, 27 Jan 2025 11:55:05 +0100 Subject: [PATCH 14/59] recommit for updates in build 124 --- .../cd_haproxy_3A_3Afirewall_3A_3Aiptables.html | 4 ++-- doc/puppet_classes/cd_haproxy_3A_3Aparams.html | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html b/doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html index 42d5cbc..68d33b1 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html @@ -153,13 +153,13 @@ class cd_haproxy::firewall::iptables ( firewall { "${hy_fw_order_no}${hy_http_port} tcp port ${hy_http_port}": proto => 'tcp', dport => $hy_http_port, - action => 'accept', + jump => 'accept', } firewall { "${hy_fw_order_no}${hy_https_port} tcp port ${hy_https_port}": proto => 'tcp', dport => $hy_https_port, - action => 'accept', + jump => 'accept', } } } diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html index f639edd..b9463a7 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html @@ -174,7 +174,7 @@ type to choose, i.e. latest or present.

          (string) - (defaults to: "proxy.${::domain}") + (defaults to: undef) — @@ -835,7 +835,7 @@ class cd_haproxy::params ( $pkg_ensure = 'latest', $reqpackages = ['haproxy'], -$hy_host_fqdn = "proxy.${::domain}", +$hy_host_fqdn = undef, # firewall $hy_manage_fw = true, From 5cbc8ada8eeeed8ba7c924e8cb82115494a501bd Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Mon, 27 Jan 2025 12:09:23 +0100 Subject: [PATCH 15/59] recommit for updates in build 125 --- doc/_index.html | 5 ----- doc/puppet_class_list.html | 9 +-------- doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html | 4 +--- doc/puppet_classes/cd_haproxy_3A_3Aparams.html | 2 -- 4 files changed, 2 insertions(+), 18 deletions(-) diff --git a/doc/_index.html b/doc/_index.html index abe3379..d34b448 100644 --- a/doc/_index.html +++ b/doc/_index.html @@ -108,11 +108,6 @@ -
        5. - cd_haproxy::server::proxy_test - -
        6. -
        7. cd_haproxy::server::service diff --git a/doc/puppet_class_list.html b/doc/puppet_class_list.html index 4b052a9..189a4cf 100644 --- a/doc/puppet_class_list.html +++ b/doc/puppet_class_list.html @@ -96,14 +96,7 @@
        8. -
        9. - -
        10. - - -
        11. +
        12. diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html index 395a1ce..36d83ea 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html @@ -124,8 +124,7 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

          27 28 29 -30 -31 +30
        13. diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html index b9463a7..c1e26d2 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html @@ -81,8 +81,6 @@ cd_haproxy::firewall::iptables
          - cd_haproxy::server::proxy_test
          - From cde0ca6bf8160295e0f19d33084602b6334b911c Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Mon, 27 Jan 2025 12:31:52 +0100 Subject: [PATCH 16/59] recommit for updates in build 129 --- doc/file.README.html | 4 ++-- doc/index.html | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/file.README.html b/doc/file.README.html index 87ce737..e3128f1 100644 --- a/doc/file.README.html +++ b/doc/file.README.html @@ -191,9 +191,9 @@ selinux is disabled, these contexts are ignored.

          Support

          • -

            OS: CentOS 7

            +

            OS: CentOS 7, Rocky 9

          • -

            Puppet 5

            +

            Puppet 6

          Tests

          diff --git a/doc/index.html b/doc/index.html index 61b07fe..32cc401 100644 --- a/doc/index.html +++ b/doc/index.html @@ -191,9 +191,9 @@ selinux is disabled, these contexts are ignored.

          Support

          • -

            OS: CentOS 7

            +

            OS: CentOS 7, Rocky 9

          • -

            Puppet 5

            +

            Puppet 6

          Tests

          From 2002f1e7e5f20c84bb3ab78c53adf71e869f58e7 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Mon, 27 Jan 2025 13:35:38 +0100 Subject: [PATCH 17/59] recommit for updates in build 132 --- .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html index ed46e18..9bb3db6 100644 --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html @@ -205,7 +205,7 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

          (string) - (defaults to: '*:80') + (defaults to: undef) — @@ -390,7 +390,7 @@ $haproxy_fqdn = undef, $frontend_name = undef, $frontend_mode = undef, $fe_use_backend = '', -$fe_bind_mode = '*:80', +$fe_bind_mode = undef, $frontend_order = '010', $acl_rule = '', $acl_order = '020', From fcc43f7a96a2a6ba74a3d8567cdf68fbdf416e39 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Mon, 27 Jan 2025 14:03:47 +0100 Subject: [PATCH 18/59] recommit for updates in build 137 --- .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html | 50 +++++++++++-------- 1 file changed, 29 insertions(+), 21 deletions(-) diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html index 9bb3db6..8ac2b2e 100644 --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html @@ -223,8 +223,6 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

          (string) - (defaults to: '') - —
          @@ -241,8 +239,6 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

          (string) - (defaults to: '020') - —
          @@ -325,6 +321,32 @@ instance configuration.

          +
        14. + + acl_rule_front + + + (Any) + + + (defaults to: '') + + +
        15. + +
        16. + + acl_rule_back + + + (Any) + + + (defaults to: '') + + +
        17. + @@ -372,14 +394,7 @@ instance configuration.

          74 75 76 -77 -78 -79 -80 -81 -82 -83 -84 +77
          # File 'manifests/main/config.pp', line 24
          @@ -135,7 +134,6 @@ class cd_haproxy::main::config (
           ) inherits cd_haproxy::params {
           
             include cd_haproxy::server::service
          -  include cd_haproxy::server::proxy_test
           
           }
          # File 'manifests/server/proxy.pp', line 41
          @@ -392,8 +407,8 @@ $frontend_mode    = undef,
           $fe_use_backend   = '',
           $fe_bind_mode     = undef,
           $frontend_order   = '010',
          -$acl_rule         = '',
          -$acl_order        = '020',
          +$acl_rule_front   = '',
          +$acl_rule_back    = '',
           $backend_name     = undef,
           $backend_order    = '030',
           $fe_maxconn       = undef,
          @@ -414,13 +429,6 @@ $hy_acl_rule      = 'cd_haproxy/haproxy_acl_rule.erb'
               order   =>  $frontend_order,
             }
           
          -  # create acl section
          -  concat::fragment { "acl_${name}":
          -    target  =>  $hy_main_config,
          -    content =>  template($hy_acl_rule),
          -    order   =>  $acl_order,
          -  }
          -
             # create backend section
             concat::fragment { "backend_${name}":
               target  =>  $hy_main_config,
          
          From c1c28816a9566995645b7dd8b7757332c93bed78 Mon Sep 17 00:00:00 2001
          From: Jenkins ConfDroid 
          Date: Mon, 27 Jan 2025 14:28:02 +0100
          Subject: [PATCH 19/59] recommit for updates in build 141
          
          ---
           .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html                    | 4 ++--
           1 file changed, 2 insertions(+), 2 deletions(-)
          
          diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          index 8ac2b2e..423bacb 100644
          --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          @@ -293,7 +293,7 @@ instance configuration.

          (string) - (defaults to: undef) + (defaults to: '') — @@ -411,7 +411,7 @@ $acl_rule_front = '', $acl_rule_back = '', $backend_name = undef, $backend_order = '030', -$fe_maxconn = undef, +$fe_maxconn = '', $be_server_name = undef, From c420d17e473e3b516dbf8795cf5e35f287b4f548 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Mon, 27 Jan 2025 15:43:52 +0100 Subject: [PATCH 20/59] recommit for updates in build 144 --- .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html index 423bacb..133cbf5 100644 --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html @@ -347,6 +347,19 @@ instance configuration.

          +
        18. + + be_balance + + + (Any) + + + (defaults to: '') + + +
        19. + @@ -413,7 +426,7 @@ $backend_name = undef, $backend_order = '030', $fe_maxconn = '', $be_server_name = undef, - +$be_balance = '', ) { From 8dc50d204446b5bb967a6828d9d8fc8f72cc6e52 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Mon, 27 Jan 2025 15:58:46 +0100 Subject: [PATCH 21/59] recommit for updates in build 146 --- .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html index 133cbf5..faf8f45 100644 --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html @@ -360,6 +360,19 @@ instance configuration.

          +
        20. + + be_mode + + + (Any) + + + (defaults to: '') + + +
        21. + @@ -407,7 +420,8 @@ instance configuration.

          74 75 76 -77
          +77 +78
          # File 'manifests/server/proxy.pp', line 41
          @@ -427,6 +441,7 @@ $backend_order    = '030',
           $fe_maxconn       = '',
           $be_server_name   = undef,
           $be_balance       = '',
          +$be_mode          = '',
           
           ) {
           
          
          From 072be172c8267dee024a716fb6d00f9c0d7ca29c Mon Sep 17 00:00:00 2001
          From: Jenkins ConfDroid 
          Date: Tue, 28 Jan 2025 17:24:35 +0100
          Subject: [PATCH 22/59] recommit for updates in build 159
          
          ---
           .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html    | 56 ++++++++++++-------
           1 file changed, 35 insertions(+), 21 deletions(-)
          
          diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          index faf8f45..0c5501b 100644
          --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          @@ -256,7 +256,7 @@ correct lb instance configuration.

          (string) - (defaults to: undef) + (defaults to: '') — @@ -311,7 +311,7 @@ instance configuration.

          (string) - (defaults to: undef) + (defaults to: '') — @@ -421,34 +421,48 @@ instance configuration.

          75 76 77 -78
          +78 +79 +80 +81 +82 +83 +84 +85
          # File 'manifests/server/proxy.pp', line 41
           
           define cd_haproxy::server::proxy (
           
          -$haproxy_fqdn     = undef,
          -$frontend_name    = undef,
          -$frontend_mode    = undef,
          -$fe_use_backend   = '',
          -$fe_bind_mode     = undef,
          -$frontend_order   = '010',
          -$acl_rule_front   = '',
          -$acl_rule_back    = '',
          -$backend_name     = undef,
          -$backend_order    = '030',
          -$fe_maxconn       = '',
          -$be_server_name   = undef,
          -$be_balance       = '',
          -$be_mode          = '',
          +  $haproxy_fqdn     = undef,
          +  $frontend_name    = undef,
          +  $frontend_mode    = undef,
          +  $fe_use_backend   = '',
          +  $fe_bind_mode     = undef,
          +  $frontend_order   = '010',
          +  $acl_rule_front   = '',
          +  $acl_rule_back    = '',
          +  $backend_name     = '',
          +  $backend_order    = '030',
          +  $fe_maxconn       = '',
          +  $be_server_name   = '',
          +  $be_balance       = '',
          +  $be_mode          = '',
           
           ) {
           
          -$hy_main_config   = '/etc/haproxy/haproxy.cfg'
          -$hy_frontendrule  = 'cd_haproxy/haproxy_frontend_rule.erb'
          -$hy_backendrule   = 'cd_haproxy/haproxy_backend_rule.erb'
          -$hy_acl_rule      = 'cd_haproxy/haproxy_acl_rule.erb'
          +  $hy_main_config   = '/etc/haproxy/haproxy.cfg'
          +  $hy_frontendrule  = 'cd_haproxy/haproxy_frontend_rule.erb'
          +  $hy_backendrule   = 'cd_haproxy/haproxy_backend_rule.erb'
          +  $hy_acl_rule      = 'cd_haproxy/haproxy_acl_rule.erb'
          +
          +
          + # Ensure acl_rule_front and acl_rule_back are arrays
          +  $acl_rule_front_array = split($acl_rule_front, '|')
          +  $acl_rule_back_array  = split($acl_rule_back, '|')
          +  $backend_name_array   = split($backend_name, '|')
          +  $be_server_name_array = split($be_server_name, '|')
           
             # create frontend section
             concat::fragment { "frontend_${name}":
          
          From ef659977c7ba8fb1296f75d1814b9e480cd239f6 Mon Sep 17 00:00:00 2001
          From: Jenkins ConfDroid 
          Date: Tue, 28 Jan 2025 17:36:56 +0100
          Subject: [PATCH 23/59] recommit for updates in build 160
          
          ---
           .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html    | 20 +++++++++----------
           1 file changed, 10 insertions(+), 10 deletions(-)
          
          diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          index 0c5501b..4a1278c 100644
          --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          @@ -187,7 +187,7 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

          (string) - (defaults to: '') + (defaults to: []) — @@ -256,7 +256,7 @@ correct lb instance configuration.

          (string) - (defaults to: '') + (defaults to: []) — @@ -311,7 +311,7 @@ instance configuration.

          (string) - (defaults to: '') + (defaults to: []) — @@ -329,7 +329,7 @@ instance configuration.

          (Any) - (defaults to: '') + (defaults to: []) @@ -342,7 +342,7 @@ instance configuration.

          (Any) - (defaults to: '') + (defaults to: []) @@ -438,15 +438,15 @@ define cd_haproxy::server::proxy ( $haproxy_fqdn = undef, $frontend_name = undef, $frontend_mode = undef, - $fe_use_backend = '', + $fe_use_backend = [], $fe_bind_mode = undef, $frontend_order = '010', - $acl_rule_front = '', - $acl_rule_back = '', - $backend_name = '', + $acl_rule_front = [], + $acl_rule_back = [], + $backend_name = [], $backend_order = '030', $fe_maxconn = '', - $be_server_name = '', + $be_server_name = [], $be_balance = '', $be_mode = '', From 4908ec2564f0b25e579eb6aa6142b94660e6fcef Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Tue, 28 Jan 2025 17:44:25 +0100 Subject: [PATCH 24/59] recommit for updates in build 161 --- .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html index 4a1278c..0c5501b 100644 --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html @@ -187,7 +187,7 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

          (string) - (defaults to: []) + (defaults to: '') — @@ -256,7 +256,7 @@ correct lb instance configuration.

          (string) - (defaults to: []) + (defaults to: '') — @@ -311,7 +311,7 @@ instance configuration.

          (string) - (defaults to: []) + (defaults to: '') — @@ -329,7 +329,7 @@ instance configuration.

          (Any) - (defaults to: []) + (defaults to: '') @@ -342,7 +342,7 @@ instance configuration.

          (Any) - (defaults to: []) + (defaults to: '') @@ -438,15 +438,15 @@ define cd_haproxy::server::proxy ( $haproxy_fqdn = undef, $frontend_name = undef, $frontend_mode = undef, - $fe_use_backend = [], + $fe_use_backend = '', $fe_bind_mode = undef, $frontend_order = '010', - $acl_rule_front = [], - $acl_rule_back = [], - $backend_name = [], + $acl_rule_front = '', + $acl_rule_back = '', + $backend_name = '', $backend_order = '030', $fe_maxconn = '', - $be_server_name = [], + $be_server_name = '', $be_balance = '', $be_mode = '', From 07ddb546ddb3148c6eefe072e4f0f5d8d0ce3c65 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Tue, 28 Jan 2025 17:52:00 +0100 Subject: [PATCH 25/59] recommit for updates in build 163 --- .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html index 0c5501b..7588714 100644 --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html @@ -459,10 +459,10 @@ define cd_haproxy::server::proxy ( # Ensure acl_rule_front and acl_rule_back are arrays - $acl_rule_front_array = split($acl_rule_front, '|') - $acl_rule_back_array = split($acl_rule_back, '|') - $backend_name_array = split($backend_name, '|') - $be_server_name_array = split($be_server_name, '|') + $acl_rule_front_array = split($acl_rule_front, '||') + $acl_rule_back_array = split($acl_rule_back, '||') + $backend_name_array = split($backend_name, '||') + $be_server_name_array = split($be_server_name, '||') # create frontend section concat::fragment { "frontend_${name}": From 45682f2ed9ba8bb8af3722b5083c6e33a6b5870e Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Tue, 28 Jan 2025 18:01:01 +0100 Subject: [PATCH 26/59] recommit for updates in build 164 --- .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html index 7588714..be00c33 100644 --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html @@ -459,10 +459,10 @@ define cd_haproxy::server::proxy ( # Ensure acl_rule_front and acl_rule_back are arrays - $acl_rule_front_array = split($acl_rule_front, '||') - $acl_rule_back_array = split($acl_rule_back, '||') - $backend_name_array = split($backend_name, '||') - $be_server_name_array = split($be_server_name, '||') + $acl_rule_front_array = split($acl_rule_front, '++') + $acl_rule_back_array = split($acl_rule_back, '++') + $backend_name_array = split($backend_name, '++') + $be_server_name_array = split($be_server_name, '++') # create frontend section concat::fragment { "frontend_${name}": From bdc1633437636fae83b3c799029145eeaa1e8fa8 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Tue, 28 Jan 2025 18:04:45 +0100 Subject: [PATCH 27/59] recommit for updates in build 165 --- .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html index be00c33..3efb460 100644 --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html @@ -459,10 +459,10 @@ define cd_haproxy::server::proxy ( # Ensure acl_rule_front and acl_rule_back are arrays - $acl_rule_front_array = split($acl_rule_front, '++') - $acl_rule_back_array = split($acl_rule_back, '++') - $backend_name_array = split($backend_name, '++') - $be_server_name_array = split($be_server_name, '++') + $acl_rule_front_array = split($acl_rule_front, ';') + $acl_rule_back_array = split($acl_rule_back, ';') + $backend_name_array = split($backend_name, ';') + $be_server_name_array = split($be_server_name, ';') # create frontend section concat::fragment { "frontend_${name}": From 01334f39578ef818a4066c1d9fd13f23135cccbc Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Tue, 28 Jan 2025 18:09:36 +0100 Subject: [PATCH 28/59] recommit for updates in build 166 --- doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html index 3efb460..40656f2 100644 --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html @@ -458,7 +458,7 @@ define cd_haproxy::server::proxy ( $hy_acl_rule = 'cd_haproxy/haproxy_acl_rule.erb' - # Ensure acl_rule_front and acl_rule_back are arrays + # Ensure acl_rule_front and acl_rule_back are arrays $acl_rule_front_array = split($acl_rule_front, ';') $acl_rule_back_array = split($acl_rule_back, ';') $backend_name_array = split($backend_name, ';') From 745837a17f50a0a46e65100e95b65348ca5cec1e Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Tue, 28 Jan 2025 18:36:31 +0100 Subject: [PATCH 29/59] recommit for updates in build 171 --- .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html index 40656f2..7b54df0 100644 --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html @@ -373,6 +373,19 @@ instance configuration.

          +
        22. + + default_backend + + + (Any) + + + (defaults to: '') + + +
        23. + @@ -428,7 +441,8 @@ instance configuration.

          82 83 84 -85
          +85 +86
          # File 'manifests/server/proxy.pp', line 41
          @@ -449,6 +463,7 @@ define cd_haproxy::server::proxy (
             $be_server_name   = '',
             $be_balance       = '',
             $be_mode          = '',
          +  $default_backend  = '',
           
           ) {
           
          
          From d200fcf8665f3e1cff61e4a668e36b23692e6839 Mon Sep 17 00:00:00 2001
          From: Jenkins ConfDroid 
          Date: Tue, 28 Jan 2025 19:12:38 +0100
          Subject: [PATCH 30/59] recommit for updates in build 174
          
          ---
           .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html                    | 4 +++-
           1 file changed, 3 insertions(+), 1 deletion(-)
          
          diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          index 7b54df0..1d0c681 100644
          --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          @@ -442,7 +442,8 @@ instance configuration.

          83 84 85 -86
          +86 +87
          # File 'manifests/server/proxy.pp', line 41
          @@ -476,6 +477,7 @@ define cd_haproxy::server::proxy (
             # Ensure acl_rule_front and acl_rule_back are arrays
             $acl_rule_front_array = split($acl_rule_front, ';')
             $acl_rule_back_array  = split($acl_rule_back, ';')
          +  $fe_use_backend_array = split($fe_use_backend,';')
             $backend_name_array   = split($backend_name, ';')
             $be_server_name_array = split($be_server_name, ';')
           
          
          From 0f033f54af2d01ca5f1f7b0556599790eda08621 Mon Sep 17 00:00:00 2001
          From: Jenkins ConfDroid 
          Date: Tue, 28 Jan 2025 23:54:58 +0100
          Subject: [PATCH 31/59] recommit for updates in build 175
          
          ---
           .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html    | 19 ++++++++++++++++++-
           1 file changed, 18 insertions(+), 1 deletion(-)
          
          diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          index 1d0c681..9344728 100644
          --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          @@ -386,6 +386,19 @@ instance configuration.

          +
        24. + + be_option + + + (Any) + + + (defaults to: '') + + +
        25. + @@ -443,7 +456,9 @@ instance configuration.

          84 85 86 -87
          +87 +88 +89
          # File 'manifests/server/proxy.pp', line 41
          @@ -465,6 +480,7 @@ define cd_haproxy::server::proxy (
             $be_balance       = '',
             $be_mode          = '',
             $default_backend  = '',
          +  $be_option        = '',
           
           ) {
           
          @@ -480,6 +496,7 @@ define cd_haproxy::server::proxy (
             $fe_use_backend_array = split($fe_use_backend,';')
             $backend_name_array   = split($backend_name, ';')
             $be_server_name_array = split($be_server_name, ';')
          +  $be_option_array      = split($be_option, ';')
           
             # create frontend section
             concat::fragment { "frontend_${name}":
          
          From b5102635d2eefa59f3a218db4b0b378ce9c8f55e Mon Sep 17 00:00:00 2001
          From: Jenkins ConfDroid 
          Date: Wed, 29 Jan 2025 23:03:29 +0100
          Subject: [PATCH 32/59] recommit for updates in build 177
          
          ---
           .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html    | 71 +++++++++----------
           1 file changed, 34 insertions(+), 37 deletions(-)
          
          diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          index 9344728..feb976a 100644
          --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          @@ -79,26 +79,6 @@
           

          cd_haproxy::server::proxy.pp Module name: cd_haproxy Author: Arne Teuke (arne_teuke@ConfDroid.com)

          -

          License:

          - -

          This file is part of cd_haproxy.

          - -

          cd_haproxy is used for providing automatic configuration of HAProxy -Copyright (C) 2016 ConfDroid (copyright@ConfDroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

          - -

          This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

          - -

          You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

          - @@ -399,6 +379,19 @@ instance configuration.

          +
        26. + + fe_tcp_request + + + (Any) + + + (defaults to: '') + + +
        27. + @@ -410,6 +403,23 @@ instance configuration.

           
           
          +24
          +25
          +26
          +27
          +28
          +29
          +30
          +31
          +32
          +33
          +34
          +35
          +36
          +37
          +38
          +39
          +40
           41
           42
           43
          @@ -443,25 +453,10 @@ instance configuration.

          71 72 73 -74 -75 -76 -77 -78 -79 -80 -81 -82 -83 -84 -85 -86 -87 -88 -89
          +74
          -
          # File 'manifests/server/proxy.pp', line 41
          +        
          # File 'manifests/server/proxy.pp', line 24
           
           define cd_haproxy::server::proxy (
           
          @@ -481,6 +476,7 @@ define cd_haproxy::server::proxy (
             $be_mode          = '',
             $default_backend  = '',
             $be_option        = '',
          +  $fe_tcp_request   = '',
           
           ) {
           
          @@ -497,6 +493,7 @@ define cd_haproxy::server::proxy (
             $backend_name_array   = split($backend_name, ';')
             $be_server_name_array = split($be_server_name, ';')
             $be_option_array      = split($be_option, ';')
          +  $fe_tcp_request_array = split($fe_tcp_request, ';')
           
             # create frontend section
             concat::fragment { "frontend_${name}":
          
          From ddfafcb27e214260ef721a11bb437a3408f56515 Mon Sep 17 00:00:00 2001
          From: Jenkins ConfDroid 
          Date: Thu, 30 Jan 2025 00:07:51 +0100
          Subject: [PATCH 33/59] recommit for updates in build 182
          
          ---
           .../cd_haproxy_3A_3Amain_3A_3Afiles.html      | 20 ++++-
           .../cd_haproxy_3A_3Aparams.html               | 73 ++++++-------------
           .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html    |  6 +-
           3 files changed, 48 insertions(+), 51 deletions(-)
          
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html
          index 8ac6ac9..368e275 100644
          --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html
          +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html
          @@ -248,7 +248,16 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

          151 152 153 -154
          +154 +155 +156 +157 +158 +159 +160 +161 +162 +163
          # File 'manifests/main/files.pp', line 23
          @@ -280,6 +289,15 @@ class cd_haproxy::main::files (
                 order     =>  '001',
               }
           
          +
          +    # create the header
          +    concat::fragment { 'tail':
          +      target    =>  $hy_main_config,
          +      content   =>  template($hy_config_tail_erb),
          +      order     =>  '100',
          +    }
          +
          +
               # pid file
               file { $hy_pid:
                 ensure    =>  file,
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html
          index c1e26d2..e58eda2 100644
          --- a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html
          +++ b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html
          @@ -92,32 +92,12 @@
             
           
           
          -  

          Summary

          - Class holds all parameters for the cd_haproxy module and is -inherited by all classes except defines. -

          Overview

          cd_haproxy::params.pp Module name: cd_haproxy Author: Arne Teuke -(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

          - -

          cd_haproxy is used for providing automatic configuration of HA proxy. -Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

          - -

          This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

          - -

          You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

          +(arne_teuke@confdroid.com)

          @@ -733,13 +713,6 @@ succeed.

          -

          See Also:

          - -
          @@ -747,6 +720,26 @@ succeed.

           
           
          +58
          +59
          +60
          +61
          +62
          +63
          +64
          +65
          +66
          +67
          +68
          +69
          +70
          +71
          +72
          +73
          +74
          +75
          +76
          +77
           78
           79
           80
          @@ -804,29 +797,10 @@ succeed.

          132 133 134 -135 -136 -137 -138 -139 -140 -141 -142 -143 -144 -145 -146 -147 -148 -149 -150 -151 -152 -153 -154
          +135 From b0299246d94fe782fef416b6211f88b190ed2d6b Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Mon, 3 Feb 2025 13:50:20 +0100 Subject: [PATCH 34/59] recommit for updates in build 185 --- .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html index c1b8f16..7efb64a 100644 --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html @@ -299,6 +299,19 @@ instance configuration.

          set the name for the backend server

          + + +
        28. + + fe_option + + + (Any) + + + (defaults to: '') + +
        29. @@ -455,7 +468,9 @@ instance configuration.

          73 74 75 -76 +76 +77 +78
        30. From cfbda4b2acc67aba51d86323fa8dbdceb7a76f74 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Sat, 8 Feb 2025 14:12:19 +0100 Subject: [PATCH 40/59] recommit for updates in build 205 --- .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html index 139f552..5085aa4 100644 --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html @@ -510,9 +510,7 @@ instance configuration.

          89 90 91 -92 -93 -94 +92
          From 47c71dcd98366add1178d0862da3911ad1a1854f Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Wed, 12 Feb 2025 13:03:16 +0100 Subject: [PATCH 44/59] recommit for updates in build 217 --- doc/puppet_classes/cd_haproxy_3A_3Aparams.html | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html index c0b0793..216eefa 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html @@ -626,7 +626,7 @@ failure.

          (string) - (defaults to: '5000') + (defaults to: '10s') — @@ -645,7 +645,7 @@ succeed.

          (string) - (defaults to: '50000') + (defaults to: '50s') — @@ -663,7 +663,7 @@ succeed.

          (string) - (defaults to: '50000') + (defaults to: '50s') — @@ -871,9 +871,9 @@ $hy_use_redispatch = true, $hy_max_retries = '3', $hy_timeout_http_request = '10s', $hy_timeout_queue = '1m', -$hy_timeout_connect = '5000', -$hy_timeout_client = '50000', -$hy_timeout_server = '50000', +$hy_timeout_connect = '10s', +$hy_timeout_client = '50s', +$hy_timeout_server = '50s', $hy_timeout_http_keep_alive = '10s', $hy_timeout_check = '10s', From 3e05ab291e84da9d926e4bd299613126c95df661 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Wed, 12 Feb 2025 13:07:12 +0100 Subject: [PATCH 45/59] recommit for updates in build 218 --- doc/puppet_classes/cd_haproxy_3A_3Aparams.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html index 216eefa..65b5459 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html @@ -645,7 +645,7 @@ succeed.

          (string) - (defaults to: '50s') + (defaults to: '1m') — @@ -663,7 +663,7 @@ succeed.

          (string) - (defaults to: '50s') + (defaults to: '1m') — @@ -872,8 +872,8 @@ $hy_max_retries = '3', $hy_timeout_http_request = '10s', $hy_timeout_queue = '1m', $hy_timeout_connect = '10s', -$hy_timeout_client = '50s', -$hy_timeout_server = '50s', +$hy_timeout_client = '1m', +$hy_timeout_server = '1m', $hy_timeout_http_keep_alive = '10s', $hy_timeout_check = '10s', From 8dcb94fce84603e2726f094a18b67717f2a7ef71 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Wed, 12 Feb 2025 13:39:12 +0100 Subject: [PATCH 46/59] recommit for updates in build 219 --- doc/puppet_classes/cd_haproxy_3A_3Aparams.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html index 65b5459..3a4783b 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html @@ -406,7 +406,7 @@ rsyslog forwarding supported.

          (boolean) - (defaults to: true) + (defaults to: false) — @@ -862,7 +862,7 @@ $hy_https_port = '443', $hy_chroot = '/var/lib/haproxy', $hy_pid = '/var/run/haproxy.pid', $hy_maxconn = '4000', -$hy_show_stats = true, +$hy_show_stats = false, $hy_stats_socket = '/var/lib/haproxy/stats', $hy_default_mode = 'tcp', $hy_use_http_server_close = false, From de2fc2bdb9ff12c0c0393764a3ab68987c7dee22 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Wed, 12 Feb 2025 14:24:08 +0100 Subject: [PATCH 47/59] recommit for updates in build 221 --- .../cd_haproxy_3A_3Aparams.html | 32 ++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html index 3a4783b..96bc48f 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html @@ -707,6 +707,32 @@ succeed.

          set the timeout value for how long to check if the timeout has occured

          + + +
        31. + + hy_hard_stop + + + (Any) + + + (defaults to: true) + + +
        32. + +
        33. + + hy_hard_stop_value + + + (Any) + + + (defaults to: '60s') + +
        34. @@ -840,7 +866,9 @@ succeed.

          136 137 138 -139 +139 +140 +141
        35. diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amonitoring_3A_3Afail2ban.html b/doc/puppet_classes/cd_haproxy_3A_3Amonitoring_3A_3Afail2ban.html index 81e462c..f8bfd67 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Amonitoring_3A_3Afail2ban.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Amonitoring_3A_3Afail2ban.html @@ -132,10 +132,10 @@ class cd_haproxy::monitoring::fail2ban ( ) inherits cd_haproxy::params { - require cd_fail2ban - if $hy_manage_fail2ban == true { + require cd_fail2ban + # configure filter file { '/etc/fail2ban/filter.d/haproxy.conf': From b0e643ba2a1d0051c462ecac419665f502c2cb7a Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Fri, 14 Feb 2025 12:02:08 +0100 Subject: [PATCH 52/59] recommit for updates in build 238 --- ...haproxy_3A_3Amonitoring_3A_3Afail2ban.html | 30 +++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amonitoring_3A_3Afail2ban.html b/doc/puppet_classes/cd_haproxy_3A_3Amonitoring_3A_3Afail2ban.html index f8bfd67..c4bf6a1 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Amonitoring_3A_3Afail2ban.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Amonitoring_3A_3Afail2ban.html @@ -123,7 +123,20 @@ 25 26 27 -28 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 From 31d37cdb1874146c3d8ca34178ff1bd89f4a82b7 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Fri, 14 Feb 2025 12:36:32 +0100 Subject: [PATCH 55/59] recommit for updates in build 241 --- doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html index 6716a90..75c5dff 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html @@ -412,7 +412,7 @@ class cd_haproxy::main::files ( selrole => object_r, seltype => syslog_conf_t, seluser => system_u, - content => template('cd_haproxy/rsyslog/'), + content => template('cd_haproxy/rsyslog/10_haproxy.conf.erb'), notify => Service['rsyslog'], } } From c4142e9c5c59d9c617fb523536b04cc05aed835d Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Fri, 14 Feb 2025 12:40:32 +0100 Subject: [PATCH 56/59] recommit for updates in build 242 --- doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html index 75c5dff..c67180b 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html @@ -413,7 +413,7 @@ class cd_haproxy::main::files ( seltype => syslog_conf_t, seluser => system_u, content => template('cd_haproxy/rsyslog/10_haproxy.conf.erb'), - notify => Service['rsyslog'], +# notify => Service['rsyslog'], # only if using cd_rsyslog } } } From ba33aaa5ddf2689ee50df1b392a845a472f862e6 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Fri, 14 Feb 2025 13:19:25 +0100 Subject: [PATCH 57/59] recommit for updates in build 248 --- doc/puppet_classes/cd_haproxy_3A_3Aparams.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html index f36dc6f..5fd2867 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html @@ -758,7 +758,7 @@ succeed.

          (Any) - (defaults to: true) + (defaults to: '/dev/log local0') @@ -771,7 +771,7 @@ succeed.

          (Any) - (defaults to: true) + (defaults to: '/dev/log local1 notice') @@ -935,8 +935,8 @@ $hy_user_home = '/var/lib/haproxy', $hy_user_shell = '/sbin/nologin', # logging -$hy_log_local0 = true, -$hy_log_local1 = true, +$hy_log_local0 = '/dev/log local0', +$hy_log_local1 = '/dev/log local1 notice', $hy_log_target = '127.0.0.1', $hy_log_facility = 'local2', $hy_log_default = 'global', From 338cfb4e3b2ff739ac38c246228d2eef000a1ad0 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Fri, 14 Feb 2025 13:27:42 +0100 Subject: [PATCH 58/59] recommit for updates in build 249 --- doc/puppet_classes/cd_haproxy_3A_3Aparams.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html index 5fd2867..53afd02 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html @@ -758,7 +758,7 @@ succeed.

          (Any) - (defaults to: '/dev/log local0') + (defaults to: '127.0.0.1:514 local0') @@ -771,7 +771,7 @@ succeed.

          (Any) - (defaults to: '/dev/log local1 notice') + (defaults to: '127.0.0.1:514 local1 notice') @@ -935,8 +935,8 @@ $hy_user_home = '/var/lib/haproxy', $hy_user_shell = '/sbin/nologin', # logging -$hy_log_local0 = '/dev/log local0', -$hy_log_local1 = '/dev/log local1 notice', +$hy_log_local0 = '127.0.0.1:514 local0', +$hy_log_local1 = '127.0.0.1:514 local1 notice', $hy_log_target = '127.0.0.1', $hy_log_facility = 'local2', $hy_log_default = 'global', From 58e933b77f61192061258558c40d8331c6a30e74 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Sat, 22 Feb 2025 13:05:46 +0100 Subject: [PATCH 59/59] recommit for updates in build 250 --- doc/puppet_classes/cd_haproxy_3A_3Aparams.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html index 53afd02..4d22310 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html @@ -136,7 +136,7 @@ type to choose, i.e. latest or present.

          (string) - (defaults to: ['haproxy']) + (defaults to: ['haproxy','httpd-tools']) — @@ -894,7 +894,7 @@ succeed.

          class cd_haproxy::params ( $pkg_ensure = 'latest', -$reqpackages = ['haproxy'], +$reqpackages = ['haproxy','httpd-tools'], $hy_host_fqdn = undef,
          -
          # File 'manifests/params.pp', line 78
          +        
          # File 'manifests/params.pp', line 58
           
           class cd_haproxy::params (
           
          @@ -885,6 +859,7 @@ $hy_errors_dir        = "${hy_main_dir}/errors"
           # files
           $hy_main_config       = "${hy_main_dir}/haproxy.cfg"
           $hy_config_head_erb   = 'cd_haproxy/haproxy_head.erb'
          +$hy_config_tail_erb   = 'cd_haproxy/haproxy_tail.erb'
           $hy_400_file          = "${hy_errors_dir}/400.http"
           $hy_400_erb           = 'cd_haproxy/errors/400_http.erb'
           $hy_403_file          = "${hy_errors_dir}/403.http"
          diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          index feb976a..c1b8f16 100644
          --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          @@ -453,7 +453,9 @@ instance configuration.

          71 72 73 -74
          +74 +75 +76
          # File 'manifests/server/proxy.pp', line 24
          @@ -486,6 +488,7 @@ define cd_haproxy::server::proxy (
             $hy_acl_rule      = 'cd_haproxy/haproxy_acl_rule.erb'
           
           
          +
             # Ensure acl_rule_front and acl_rule_back are arrays
             $acl_rule_front_array = split($acl_rule_front, ';')
             $acl_rule_back_array  = split($acl_rule_back, ';')
          @@ -508,6 +511,7 @@ define cd_haproxy::server::proxy (
               content =>  template($hy_backendrule),
               order   =>  $backend_order,
             }
          +
           }
          # File 'manifests/server/proxy.pp', line 24
          @@ -467,6 +482,7 @@ define cd_haproxy::server::proxy (
             $frontend_mode    = undef,
             $fe_use_backend   = '',
             $fe_bind_mode     = undef,
          +  $fe_option        = '',
             $frontend_order   = '010',
             $acl_rule_front   = '',
             $acl_rule_back    = '',
          @@ -497,6 +513,7 @@ define cd_haproxy::server::proxy (
             $be_server_name_array = split($be_server_name, ';')
             $be_option_array      = split($be_option, ';')
             $fe_tcp_request_array = split($fe_tcp_request, ';')
          +  $fe_option_array      = split($fe_option, ';')
           
             # create frontend section
             concat::fragment { "frontend_${name}":
          
          From 9b1b023517f1e65349631d024f419242c865f7ca Mon Sep 17 00:00:00 2001
          From: Jenkins ConfDroid 
          Date: Thu, 6 Feb 2025 13:01:44 +0100
          Subject: [PATCH 35/59] recommit for updates in build 194
          
          ---
           doc/puppet_classes/cd_haproxy_3A_3Aparams.html | 4 ++--
           1 file changed, 2 insertions(+), 2 deletions(-)
          
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html
          index e58eda2..2cd773a 100644
          --- a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html
          +++ b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html
          @@ -479,7 +479,7 @@ the global ones.

          (boolean) - (defaults to: true) + (defaults to: false) — @@ -844,7 +844,7 @@ $hy_user_shell = '/sbin/nologin', $hy_log_target = '127.0.0.1', $hy_log_facility = 'local2', $hy_log_default = 'global', -$hy_use_httplog = true, +$hy_use_httplog = false, $hy_use_dontlognull = true, ) { From 11064594df445b196e6b87491918c1c03b7992ec Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Thu, 6 Feb 2025 13:06:04 +0100 Subject: [PATCH 36/59] recommit for updates in build 195 --- doc/puppet_classes/cd_haproxy_3A_3Aparams.html | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html index 2cd773a..4e5fc6d 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html @@ -517,7 +517,7 @@ disables.

          (boolean) - (defaults to: true) + (defaults to: false) — @@ -535,7 +535,7 @@ disables.

          (boolean) - (defaults to: true) + (defaults to: false) — @@ -553,7 +553,7 @@ disables.

          (boolean) - (defaults to: true) + (defaults to: false) — @@ -822,9 +822,9 @@ $hy_maxconn = '4000', $hy_show_stats = true, $hy_stats_socket = '/var/lib/haproxy/stats', $hy_default_mode = 'http', -$hy_use_http_server_close = true, -$hy_use_forward_for = true, -$hy_use_redispatch = true, +$hy_use_http_server_close = false, +$hy_use_forward_for = false, +$hy_use_redispatch = false, $hy_max_retries = '3', $hy_timeout_http_request = '10s', $hy_timeout_queue = '1m', From cb583c861475e3d6f54cfd6aec39f64611ea6754 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Fri, 7 Feb 2025 16:19:41 +0100 Subject: [PATCH 37/59] recommit for updates in build 199 --- .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html index 7efb64a..0097256 100644 --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html @@ -405,6 +405,19 @@ instance configuration.

          +
        36. + + fe_req_add + + + (Any) + + + (defaults to: '') + + +
        37. + @@ -470,7 +483,9 @@ instance configuration.

          75 76 77 -78
          +78 +79 +80
          # File 'manifests/server/proxy.pp', line 24
          @@ -495,6 +510,7 @@ define cd_haproxy::server::proxy (
             $default_backend  = '',
             $be_option        = '',
             $fe_tcp_request   = '',
          +  $fe_req_add       = '',
           
           ) {
           
          @@ -514,6 +530,7 @@ define cd_haproxy::server::proxy (
             $be_option_array      = split($be_option, ';')
             $fe_tcp_request_array = split($fe_tcp_request, ';')
             $fe_option_array      = split($fe_option, ';')
          +  $fe_req_add_array     = split($fe_req_add, ';')
           
             # create frontend section
             concat::fragment { "frontend_${name}":
          
          From d90fa161bfceb0ff1d10c2e293411aa3c4cf5033 Mon Sep 17 00:00:00 2001
          From: Jenkins ConfDroid 
          Date: Fri, 7 Feb 2025 16:35:50 +0100
          Subject: [PATCH 38/59] recommit for updates in build 200
          
          ---
           .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html    | 22 +++++++++----------
           1 file changed, 11 insertions(+), 11 deletions(-)
          
          diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          index 0097256..648d009 100644
          --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          @@ -407,7 +407,7 @@ instance configuration.

        38. - fe_req_add + fe_http_request (Any) @@ -510,7 +510,7 @@ define cd_haproxy::server::proxy ( $default_backend = '', $be_option = '', $fe_tcp_request = '', - $fe_req_add = '', + $fe_http_request = '', ) { @@ -522,15 +522,15 @@ define cd_haproxy::server::proxy ( # Ensure acl_rule_front and acl_rule_back are arrays - $acl_rule_front_array = split($acl_rule_front, ';') - $acl_rule_back_array = split($acl_rule_back, ';') - $fe_use_backend_array = split($fe_use_backend,';') - $backend_name_array = split($backend_name, ';') - $be_server_name_array = split($be_server_name, ';') - $be_option_array = split($be_option, ';') - $fe_tcp_request_array = split($fe_tcp_request, ';') - $fe_option_array = split($fe_option, ';') - $fe_req_add_array = split($fe_req_add, ';') + $acl_rule_front_array = split($acl_rule_front, ';') + $acl_rule_back_array = split($acl_rule_back, ';') + $fe_use_backend_array = split($fe_use_backend,';') + $backend_name_array = split($backend_name, ';') + $be_server_name_array = split($be_server_name, ';') + $be_option_array = split($be_option, ';') + $fe_tcp_request_array = split($fe_tcp_request, ';') + $fe_option_array = split($fe_option, ';') + $fe_http_request_array = split($fe_http_request, ';') # create frontend section concat::fragment { "frontend_${name}": From c38e4092b2155ead1a75033968ef8398674a6e92 Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Sat, 8 Feb 2025 13:53:47 +0100 Subject: [PATCH 39/59] recommit for updates in build 204 --- .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html | 59 ++++++++++++++++--- 1 file changed, 50 insertions(+), 9 deletions(-) diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html index 648d009..139f552 100644 --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html @@ -418,6 +418,19 @@ instance configuration.

        39. +
        40. + + backend_configs + + + (Any) + + + (defaults to: []) + + +
        41. + @@ -485,7 +498,21 @@ instance configuration.

          77 78 79 -80
          +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94
          # File 'manifests/server/proxy.pp', line 24
          @@ -511,6 +538,8 @@ define cd_haproxy::server::proxy (
             $be_option        = '',
             $fe_tcp_request   = '',
             $fe_http_request  = '',
          +  $backend_configs  = [],
          +
           
           ) {
           
          @@ -534,18 +563,30 @@ define cd_haproxy::server::proxy (
           
             # create frontend section
             concat::fragment { "frontend_${name}":
          -    target  =>  $hy_main_config,
          -    content =>  template($hy_frontendrule),
          -    order   =>  $frontend_order,
          +    target      =>  $hy_main_config,
          +    content     =>  template($hy_frontendrule),
          +    order       =>  $frontend_order,
             }
           
          -  # create backend section
          -  concat::fragment { "backend_${name}":
          -    target  =>  $hy_main_config,
          -    content =>  template($hy_backendrule),
          -    order   =>  $backend_order,
          +
          +  # Create backend sections dynamically based on $backend_configs
          +  $backend_configs.each |$index, $backend_config| {
          +    concat::fragment { "backend_${name}_${index}":
          +      target    =>  $hy_main_config,
          +      content   =>  template($hy_backendrule),
          +      order     =>  $backend_order,
          +      # Use variables from the backend config for each backend
          +      variables => $backend_config,
          +    }
             }
           
          +#  # create backend section
          +#  concat::fragment { "backend_${name}":
          +#    target  =>  $hy_main_config,
          +#    content =>  template($hy_backendrule),
          +#    order   =>  $backend_order,
          +#  }
          +
           }
          # File 'manifests/server/proxy.pp', line 24
          @@ -572,11 +570,9 @@ define cd_haproxy::server::proxy (
             # Create backend sections dynamically based on $backend_configs
             $backend_configs.each |$index, $backend_config| {
               concat::fragment { "backend_${name}_${index}":
          -      target    =>  $hy_main_config,
          -      content   =>  template($hy_backendrule),
          -      order     =>  $backend_order,
          -      # Use variables from the backend config for each backend
          -      variables => $backend_config,
          +      target  =>  $hy_main_config,
          +      content =>  template($hy_backendrule),
          +      order   =>  "${backend_order}${index}",  # Ensure unique order for each backend
               }
             }
           
          
          From bb23e2b9d7b85a920c96a2e62fa7c20028f88427 Mon Sep 17 00:00:00 2001
          From: Jenkins ConfDroid 
          Date: Sat, 8 Feb 2025 14:55:55 +0100
          Subject: [PATCH 41/59] recommit for updates in build 208
          
          ---
           .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html    | 22 +++++++++++++------
           1 file changed, 15 insertions(+), 7 deletions(-)
          
          diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          index 5085aa4..33cd686 100644
          --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          @@ -510,7 +510,11 @@ instance configuration.

          89 90 91 -92
          +92 +93 +94 +95 +96
          # File 'manifests/server/proxy.pp', line 24
          @@ -566,14 +570,18 @@ define cd_haproxy::server::proxy (
               order       =>  $frontend_order,
             }
           
          +  # Flag to ensure backends are only created once
          +  $backends_created = false
           
          -  # Create backend sections dynamically based on $backend_configs
          -  $backend_configs.each |$index, $backend_config| {
          -    concat::fragment { "backend_${name}_${index}":
          -      target  =>  $hy_main_config,
          -      content =>  template($hy_backendrule),
          -      order   =>  "${backend_order}${index}",  # Ensure unique order for each backend
          +  unless $backends_created {
          +    $backend_configs.each |$index, $backend_config| {
          +      concat::fragment { "backend_${name}_${index}":
          +        target  =>  $hy_main_config,
          +        content =>  template($hy_backendrule),
          +        order   =>  "${backend_order}${index}",
          +      }
               }
          +    $backends_created = true
             }
           
           #  # create backend section
          
          From 89a03cf5ac4bf35720c6d64d5e1c6e2071e1df74 Mon Sep 17 00:00:00 2001
          From: Jenkins ConfDroid 
          Date: Sat, 8 Feb 2025 15:02:30 +0100
          Subject: [PATCH 42/59] recommit for updates in build 209
          
          ---
           .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html    | 26 +++++--------------
           1 file changed, 7 insertions(+), 19 deletions(-)
          
          diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          index 33cd686..9b70c3c 100644
          --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          @@ -508,13 +508,7 @@ instance configuration.

          87 88 89 -90 -91 -92 -93 -94 -95 -96
          +90
          # File 'manifests/server/proxy.pp', line 24
          @@ -570,19 +564,13 @@ define cd_haproxy::server::proxy (
               order       =>  $frontend_order,
             }
           
          -  # Flag to ensure backends are only created once
          -  $backends_created = false
          +  # Ensure backends are only created once
          +  ensure_resource('concat::fragment', "backends_${name}", {
          +    'target'  => $hy_main_config,
          +    'content' => template($hy_backendrule),
          +    'order'   => $backend_order,
          +  })
           
          -  unless $backends_created {
          -    $backend_configs.each |$index, $backend_config| {
          -      concat::fragment { "backend_${name}_${index}":
          -        target  =>  $hy_main_config,
          -        content =>  template($hy_backendrule),
          -        order   =>  "${backend_order}${index}",
          -      }
          -    }
          -    $backends_created = true
          -  }
           
           #  # create backend section
           #  concat::fragment { "backend_${name}":
          
          From 3856974c2f2ee96e972243840b7ba87a8c34bfaf Mon Sep 17 00:00:00 2001
          From: Jenkins ConfDroid 
          Date: Wed, 12 Feb 2025 11:54:09 +0100
          Subject: [PATCH 43/59] recommit for updates in build 214
          
          ---
           .../cd_haproxy_3A_3Aparams.html               | 69 ++++++++++++++++---
           .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html    | 16 +----
           2 files changed, 60 insertions(+), 25 deletions(-)
          
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html
          index 4e5fc6d..c0b0793 100644
          --- a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html
          +++ b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html
          @@ -442,7 +442,7 @@ rsyslog forwarding supported.

          (string) - (defaults to: 'http') + (defaults to: 'tcp') — @@ -553,7 +553,7 @@ disables.

          (boolean) - (defaults to: false) + (defaults to: true) — @@ -626,7 +626,7 @@ failure.

          (string) - (defaults to: '10s') + (defaults to: '5000') — @@ -645,7 +645,7 @@ succeed.

          (string) - (defaults to: '1m') + (defaults to: '50000') — @@ -663,7 +663,7 @@ succeed.

          (string) - (defaults to: '1m') + (defaults to: '50000') — @@ -709,6 +709,45 @@ succeed.

          +
        42. + + hy_log_local0 + + + (Any) + + + (defaults to: true) + + +
        43. + +
        44. + + hy_log_local1 + + + (Any) + + + (defaults to: true) + + +
        45. + +
        46. + + hy_use_tcplog + + + (Any) + + + (defaults to: true) + + +
        47. + @@ -797,7 +836,11 @@ succeed.

          132 133 134 -135
          +135 +136 +137 +138 +139
          # File 'manifests/params.pp', line 58
          @@ -821,16 +864,16 @@ $hy_pid                       = '/var/run/haproxy.pid',
           $hy_maxconn                   = '4000',
           $hy_show_stats                = true,
           $hy_stats_socket              = '/var/lib/haproxy/stats',
          -$hy_default_mode              = 'http',
          +$hy_default_mode              = 'tcp',
           $hy_use_http_server_close     = false,
           $hy_use_forward_for           = false,
          -$hy_use_redispatch            = false,
          +$hy_use_redispatch            = true,
           $hy_max_retries               = '3',
           $hy_timeout_http_request      = '10s',
           $hy_timeout_queue             = '1m',
          -$hy_timeout_connect           = '10s',
          -$hy_timeout_client            = '1m',
          -$hy_timeout_server            = '1m',
          +$hy_timeout_connect           = '5000',
          +$hy_timeout_client            = '50000',
          +$hy_timeout_server            = '50000',
           $hy_timeout_http_keep_alive   = '10s',
           $hy_timeout_check             = '10s',
           
          @@ -841,12 +884,16 @@ $hy_user_home                 = '/var/lib/haproxy',
           $hy_user_shell                = '/sbin/nologin',
           
           # logging
          +$hy_log_local0                = true,
          +$hy_log_local1                = true,
           $hy_log_target                = '127.0.0.1',
           $hy_log_facility              = 'local2',
           $hy_log_default               = 'global',
          +$hy_use_tcplog                = true,
           $hy_use_httplog               = false,
           $hy_use_dontlognull           = true,
           
          +
           ) {
           
           # service
          diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          index 9b70c3c..0f7736b 100644
          --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          @@ -502,13 +502,7 @@ instance configuration.

          81 82 83 -84 -85 -86 -87 -88 -89 -90
          +84
          # File 'manifests/server/proxy.pp', line 24
          @@ -536,7 +530,6 @@ define cd_haproxy::server::proxy (
             $fe_http_request  = '',
             $backend_configs  = [],
           
          -
           ) {
           
             $hy_main_config   = '/etc/haproxy/haproxy.cfg'
          @@ -571,13 +564,8 @@ define cd_haproxy::server::proxy (
               'order'   => $backend_order,
             })
           
          +  # open sepcific firewall ports
           
          -#  # create backend section
          -#  concat::fragment { "backend_${name}":
          -#    target  =>  $hy_main_config,
          -#    content =>  template($hy_backendrule),
          -#    order   =>  $backend_order,
          -#  }
           
           }
          # File 'manifests/params.pp', line 58
          @@ -876,6 +904,8 @@ $hy_timeout_client            = '1m',
           $hy_timeout_server            = '1m',
           $hy_timeout_http_keep_alive   = '10s',
           $hy_timeout_check             = '10s',
          +$hy_hard_stop                 = true,
          +$hy_hard_stop_value           = '60s',
           
           # user
           $hy_user_name                 = 'haproxy',
          
          From d74423b0d50a540332a9bcf323ddca85653b8974 Mon Sep 17 00:00:00 2001
          From: Jenkins ConfDroid 
          Date: Wed, 12 Feb 2025 14:35:02 +0100
          Subject: [PATCH 48/59] recommit for updates in build 222
          
          ---
           .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html    | 32 ++++++++++++++++++-
           1 file changed, 31 insertions(+), 1 deletion(-)
          
          diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          index 0f7736b..5cb6c01 100644
          --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          @@ -431,6 +431,32 @@ instance configuration.

          +
        48. + + be_stick_table + + + (Any) + + + (defaults to: '') + + +
        49. + +
        50. + + be_stick_on + + + (Any) + + + (defaults to: '') + + +
        51. + @@ -502,7 +528,9 @@ instance configuration.

          81 82 83 -84
          +84 +85 +86
          # File 'manifests/server/proxy.pp', line 24
          @@ -529,6 +557,8 @@ define cd_haproxy::server::proxy (
             $fe_tcp_request   = '',
             $fe_http_request  = '',
             $backend_configs  = [],
          +  $be_stick_table   = '',
          +  $be_stick_on      = '',
           
           ) {
           
          
          From 708c4db1e25d0a9332ef317e229479f1e751de9b Mon Sep 17 00:00:00 2001
          From: Jenkins ConfDroid 
          Date: Wed, 12 Feb 2025 16:22:10 +0100
          Subject: [PATCH 49/59] recommit for updates in build 228
          
          ---
           .../cd_haproxy_3A_3Aserver_3A_3Aproxy.html      | 17 ++++++++++++++++-
           1 file changed, 16 insertions(+), 1 deletion(-)
          
          diff --git a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          index 5cb6c01..c3fe7bf 100644
          --- a/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          +++ b/doc/puppet_defined_types/cd_haproxy_3A_3Aserver_3A_3Aproxy.html
          @@ -457,6 +457,19 @@ instance configuration.

          +
        52. + + be_http_check + + + (Any) + + + (defaults to: '') + + +
        53. + @@ -530,7 +543,8 @@ instance configuration.

          83 84 85 -86
          +86 +87
          # File 'manifests/server/proxy.pp', line 24
          @@ -559,6 +573,7 @@ define cd_haproxy::server::proxy (
             $backend_configs  = [],
             $be_stick_table   = '',
             $be_stick_on      = '',
          +  $be_http_check    = '',
           
           ) {
           
          
          From a60b3b4ec6b8a3281605440e8ac51ac2409dd5dc Mon Sep 17 00:00:00 2001
          From: Jenkins ConfDroid 
          Date: Fri, 14 Feb 2025 11:37:36 +0100
          Subject: [PATCH 50/59] recommit for updates in build 236
          
          ---
           doc/_index.html                               |   5 +
           doc/puppet_class_list.html                    |  11 +-
           ...d_haproxy_3A_3Afirewall_3A_3Aiptables.html |  56 +++---
           .../cd_haproxy_3A_3Amain_3A_3Aconfig.html     |  34 +---
           .../cd_haproxy_3A_3Amain_3A_3Adirs.html       |  56 +++---
           .../cd_haproxy_3A_3Amain_3A_3Afiles.html      |  56 +++---
           .../cd_haproxy_3A_3Amain_3A_3Ainstall.html    |  40 ++---
           .../cd_haproxy_3A_3Amain_3A_3Auser.html       |  58 ++----
           ...haproxy_3A_3Amonitoring_3A_3Afail2ban.html | 167 ++++++++++++++++++
           .../cd_haproxy_3A_3Aparams.html               |  23 ++-
           .../cd_haproxy_3A_3Aserver_3A_3Aservice.html  |  52 ++----
           11 files changed, 321 insertions(+), 237 deletions(-)
           create mode 100644 doc/puppet_classes/cd_haproxy_3A_3Amonitoring_3A_3Afail2ban.html
          
          diff --git a/doc/_index.html b/doc/_index.html
          index d34b448..1c88fc8 100644
          --- a/doc/_index.html
          +++ b/doc/_index.html
          @@ -103,6 +103,11 @@
                 
                       
               
          +            
        54. + cd_haproxy::monitoring::fail2ban + +
        55. +
        56. cd_haproxy::params diff --git a/doc/puppet_class_list.html b/doc/puppet_class_list.html index 189a4cf..3a33595 100644 --- a/doc/puppet_class_list.html +++ b/doc/puppet_class_list.html @@ -89,14 +89,21 @@
        57. -
        58. +
        59. + +
        60. + + +
        61. -
        62. +
        63. diff --git a/doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html b/doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html index 68d33b1..e8c725e 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Afirewall_3A_3Aiptables.html @@ -84,23 +84,7 @@

          cd_haproxy::firewall::iptables.pp Module name: cd_haproxy Author: Arne -Teuke (arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

          - -

          cd_haproxy is used for providing automatic configuration of HA proxy. -Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

          - -

          This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

          - -

          You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

          +Teuke (arne_teuke@confdroid.com)

          @@ -117,30 +101,30 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

           
           
          +6
          +7
          +8
          +9
          +10
          +11
          +12
          +13
          +14
          +15
          +16
          +17
          +18
          +19
          +20
          +21
          +22
           23
           24
           25
          -26
          -27
          -28
          -29
          -30
          -31
          -32
          -33
          -34
          -35
          -36
          -37
          -38
          -39
          -40
          -41
          -42
          -43
          +26
        64. -
          # File 'manifests/firewall/iptables.pp', line 23
          +        
          # File 'manifests/firewall/iptables.pp', line 6
           
           class cd_haproxy::firewall::iptables (
           
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html
          index 36d83ea..3631f98 100644
          --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html
          +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html
          @@ -85,23 +85,7 @@ cd_haproxy.
             

          cd_haproxy::main::config.pp Module name: cd_haproxy Author: Arne Teuke -(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

          - -

          cd_haproxy is used for providing automatic configuration of HA proxy. -Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

          - -

          This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

          - -

          You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

          +(arne_teuke@confdroid.com)

          @@ -118,16 +102,16 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

           
           
          -24
          -25
          -26
          -27
          -28
          -29
          -30
          +7 +8 +9 +10 +11 +12 +13
          -
          # File 'manifests/main/config.pp', line 24
          +        
          # File 'manifests/main/config.pp', line 7
           
           class cd_haproxy::main::config (
           
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Adirs.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Adirs.html
          index 4180a87..a525497 100644
          --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Adirs.html
          +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Adirs.html
          @@ -84,23 +84,7 @@
             

          cd_haproxy::main::dirs.pp Module name: cd_haproxy Author: Arne Teuke -(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

          - -

          cd_haproxy is used for providing automatic configuration of HA proxy. -Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

          - -

          This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

          - -

          You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

          +(arne_teuke@confdroid.com)

          @@ -117,6 +101,23 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

           
           
          +6
          +7
          +8
          +9
          +10
          +11
          +12
          +13
          +14
          +15
          +16
          +17
          +18
          +19
          +20
          +21
          +22
           23
           24
           25
          @@ -131,27 +132,10 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

          34 35 36 -37 -38 -39 -40 -41 -42 -43 -44 -45 -46 -47 -48 -49 -50 -51 -52 -53 -54
          +37
          -
          # File 'manifests/main/dirs.pp', line 23
          +        
          # File 'manifests/main/dirs.pp', line 6
           
           class cd_haproxy::main::dirs (
           
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html
          index 368e275..61af50e 100644
          --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html
          +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html
          @@ -84,23 +84,7 @@
             

          cd_haproxy::main::files.pp Module name: cd_haproxy Author: Arne Teuke -(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

          - -

          cd_haproxy is used for providing automatic configuration of HA proxy. -Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

          - -

          This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

          - -

          You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

          +(arne_teuke@confdroid.com)

          @@ -117,6 +101,23 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

           
           
          +6
          +7
          +8
          +9
          +10
          +11
          +12
          +13
          +14
          +15
          +16
          +17
          +18
          +19
          +20
          +21
          +22
           23
           24
           25
          @@ -240,27 +241,10 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

          143 144 145 -146 -147 -148 -149 -150 -151 -152 -153 -154 -155 -156 -157 -158 -159 -160 -161 -162 -163
          +146
          -
          # File 'manifests/main/files.pp', line 23
          +        
          # File 'manifests/main/files.pp', line 6
           
           class cd_haproxy::main::files (
           
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Ainstall.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Ainstall.html
          index c20c5e6..88472fe 100644
          --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Ainstall.html
          +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Ainstall.html
          @@ -85,23 +85,7 @@ cd_haproxy
             

          cd_haproxy::main::install.pp Module name: cd_haproxy Author: Arne Teuke -(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

          - -

          cd_haproxy is used for providing automatic configuration of HA proxy. -Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

          - -

          This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

          - -

          You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

          +(arne_teuke@confdroid.com)

          @@ -118,19 +102,19 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

           
           
          -24
          -25
          -26
          -27
          -28
          -29
          -30
          -31
          -32
          -33
          +7 +8 +9 +10 +11 +12 +13 +14 +15 +16
          -
          # File 'manifests/main/install.pp', line 24
          +        
          # File 'manifests/main/install.pp', line 7
           
           class cd_haproxy::main::install (
           
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Auser.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Auser.html
          index ae7ff93..352c769 100644
          --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Auser.html
          +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Auser.html
          @@ -86,26 +86,6 @@
           

          cd_haproxy::main::user.pp Module name: cd_haproxy Author: Arne Teuke (arne_teuke@ConfDroid.com)

          -

          License:

          - -

          This file is part of cd_haproxy.

          - -

          cd_haproxy is used for providing automatic configuration of HAproxy -Copyright (C) 2016 ConfDroid (copyright@ConfDroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

          - -

          This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

          - -

          You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

          - @@ -121,6 +101,23 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

           
           
          +6
          +7
          +8
          +9
          +10
          +11
          +12
          +13
          +14
          +15
          +16
          +17
          +18
          +19
          +20
          +21
          +22
           23
           24
           25
          @@ -129,27 +126,10 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

          28 29 30 -31 -32 -33 -34 -35 -36 -37 -38 -39 -40 -41 -42 -43 -44 -45 -46 -47 -48
          +31
          -
          # File 'manifests/main/user.pp', line 23
          +        
          # File 'manifests/main/user.pp', line 6
           
           class cd_haproxy::main::user (
           
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amonitoring_3A_3Afail2ban.html b/doc/puppet_classes/cd_haproxy_3A_3Amonitoring_3A_3Afail2ban.html
          new file mode 100644
          index 0000000..81e462c
          --- /dev/null
          +++ b/doc/puppet_classes/cd_haproxy_3A_3Amonitoring_3A_3Afail2ban.html
          @@ -0,0 +1,167 @@
          +
          +
          +  
          +    
          +
          +
          +  Puppet Class: cd_haproxy::monitoring::fail2ban
          +  
          +    — Documentation by YARD 0.9.26
          +  
          +
          +
          +  
          +
          +  
          +
          +
          +
          +
          +  
          +
          +  
          +
          +
          +  
          +  
          +    
          +
          +    
          + + +

          Puppet Class: cd_haproxy::monitoring::fail2ban

          +
          + +
          +
          Inherits:
          +
          cd_haproxy::params
          +
          + + +
          +
          Defined in:
          +
          + manifests/monitoring/fail2ban.pp +
          +
          +
          + +

          Summary

          + Class manages fail2ban settings + +

          Overview

          +
          +
          + +

          Module name: cd_haproxy Author: Arne Teuke (arne_teuke@confdroid.com)

          + +
          +
          + + +
          + + + +
          + + + + + +
          +
          +
          +
          +5
          +6
          +7
          +8
          +9
          +10
          +11
          +12
          +13
          +14
          +15
          +16
          +17
          +18
          +19
          +20
          +21
          +22
          +23
          +24
          +25
          +26
          +27
          +28
          +
          +
          # File 'manifests/monitoring/fail2ban.pp', line 5
          +
          +class cd_haproxy::monitoring::fail2ban (
          +
          +) inherits cd_haproxy::params {
          +
          +  require cd_fail2ban
          +
          +  if $hy_manage_fail2ban == true {
          +
          +    # configure filter
          +    
          +    file { '/etc/fail2ban/filter.d/haproxy.conf':
          +      ensure    =>  file,
          +      owner     =>  'root',
          +      group     =>  'root',
          +      mode      =>  '0644',
          +      selrange  =>  s0,
          +      selrole   =>  object_r,
          +      seltype   =>  etc_t,
          +      seluser   =>  system_u,
          +      content   =>  template('cd_haproxy/fail2ban/f2b_haproxy.conf.erb'),
          +      notify    =>  Service[$fn_service],
          +    }
          +  }
          +}
          +
          +
          +
          + + + +
          + + \ No newline at end of file diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html index 96bc48f..f36dc6f 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Aparams.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Aparams.html @@ -81,6 +81,8 @@ cd_haproxy::firewall::iptables
          + cd_haproxy::monitoring::fail2ban
          + @@ -707,6 +709,19 @@ succeed.

          set the timeout value for how long to check if the timeout has occured

          + + +
        65. + + hy_manage_fail2ban + + + (Any) + + + (defaults to: false) + +
        66. @@ -868,7 +883,10 @@ succeed.

          138 139 140 -141
        67. +141 +142 +143 +144
          # File 'manifests/params.pp', line 58
          @@ -884,6 +902,9 @@ $hy_host_fqdn                 = undef,
           $hy_manage_fw                 = true,
           $hy_fw_order_no               = '50',
           
          +# fail2ban
          +$hy_manage_fail2ban           = false,
          +
           # main config
           $hy_http_port                 = '80',
           $hy_https_port                = '443',
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aservice.html b/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aservice.html
          index 3b7bedc..be5f5e5 100644
          --- a/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aservice.html
          +++ b/doc/puppet_classes/cd_haproxy_3A_3Aserver_3A_3Aservice.html
          @@ -84,23 +84,7 @@
             

          cd_haproxy::server::service.pp Module name: cd_haproxy Author: Arne Teuke -(arne_teuke@confdroid.com) License: This file is part of cd_haproxy.

          - -

          cd_haproxy is used for providing automatic configuration of HA proxy. -Copyright (C) 2017 confdroid (copyright@confdroid.com) This program is -free software: you can redistribute it and/or modify it under the terms of -the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version.

          - -

          This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details.

          - -

          You should have received a copy of the GNU General Public License along -with this program. If not, see www.gnu.org/licenses/.

          +(arne_teuke@confdroid.com)

          @@ -117,25 +101,25 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

           
           
          -23
          -24
          -25
          -26
          -27
          -28
          -29
          -30
          -31
          -32
          -33
          -34
          -35
          -36
          -37
          -38
          +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21
          -
          # File 'manifests/server/service.pp', line 23
          +        
          # File 'manifests/server/service.pp', line 6
           
           class cd_haproxy::server::service (
           
          
          From d4332e7a41825e23333c870b21b8dc850603f294 Mon Sep 17 00:00:00 2001
          From: Jenkins ConfDroid 
          Date: Fri, 14 Feb 2025 11:42:16 +0100
          Subject: [PATCH 51/59] recommit for updates in build 237
          
          ---
           .../cd_haproxy_3A_3Amain_3A_3Aconfig.html            | 12 +++++++++++-
           .../cd_haproxy_3A_3Amonitoring_3A_3Afail2ban.html    |  4 ++--
           2 files changed, 13 insertions(+), 3 deletions(-)
          
          diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html
          index 3631f98..f4b90da 100644
          --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html
          +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Aconfig.html
          @@ -108,7 +108,12 @@ cd_haproxy.
           10
           11
           12
          -13
          +13 +14 +15 +16 +17 +18
          # File 'manifests/main/config.pp', line 7
          @@ -119,6 +124,11 @@ class cd_haproxy::main::config (
           
             include cd_haproxy::server::service
           
          +  if $hy_manage_fail2ban == true {
          +
          +    include cd_haproxy::monitoring::fail2ban
          +  
          +  }
           }
          # File 'manifests/monitoring/fail2ban.pp', line 5
          @@ -148,7 +161,20 @@ class cd_haproxy::monitoring::fail2ban (
                 seltype   =>  etc_t,
                 seluser   =>  system_u,
                 content   =>  template('cd_haproxy/fail2ban/f2b_haproxy.conf.erb'),
          -      notify    =>  Service[$fn_service],
          +      notify    =>  Service['fail2ban'],
          +    }
          +
          +    file { '/etc/fail2ban/jail.d/010-haproxy.conf':
          +      ensure    =>  file,
          +      owner     =>  'root',
          +      group     =>  'root',
          +      mode      =>  '0644',
          +      selrange  =>  s0,
          +      selrole   =>  object_r,
          +      seltype   =>  etc_t,
          +      seluser   =>  system_u,
          +      content   =>  template('cd_haproxy/fail2ban/010_jaild_haproxy.conf.erb'),
          +      notify    =>  Service['fail2ban'],
               }
             }
           }
          From 3f28830de33b55a33688fd25d10749141c3c6cba Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Fri, 14 Feb 2025 12:05:47 +0100 Subject: [PATCH 53/59] recommit for updates in build 239 --- .../cd_haproxy_3A_3Amonitoring_3A_3Afail2ban.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amonitoring_3A_3Afail2ban.html b/doc/puppet_classes/cd_haproxy_3A_3Amonitoring_3A_3Afail2ban.html index c4bf6a1..629a5ec 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Amonitoring_3A_3Afail2ban.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Amonitoring_3A_3Afail2ban.html @@ -173,7 +173,7 @@ class cd_haproxy::monitoring::fail2ban ( selrole => object_r, seltype => etc_t, seluser => system_u, - content => template('cd_haproxy/fail2ban/010_jaild_haproxy.conf.erb'), + content => template('cd_haproxy/fail2ban/010_jail.d_haproxy.conf.erb'), notify => Service['fail2ban'], } } From 4cba39b767d43e3f3f6bd12b5afd8b13c96f908b Mon Sep 17 00:00:00 2001 From: Jenkins ConfDroid Date: Fri, 14 Feb 2025 12:31:52 +0100 Subject: [PATCH 54/59] recommit for updates in build 240 --- .../cd_haproxy_3A_3Amain_3A_3Afiles.html | 32 ++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html index 61af50e..6716a90 100644 --- a/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html +++ b/doc/puppet_classes/cd_haproxy_3A_3Amain_3A_3Afiles.html @@ -241,7 +241,22 @@ 143 144 145 -146 +146 +147 +148 +149 +150 +151 +152 +153 +154 +155 +156 +157 +158 +159 +160 +161
          # File 'manifests/main/files.pp', line 6
          @@ -385,6 +400,21 @@ class cd_haproxy::main::files (
                 content   =>  template($hy_504_erb),
                 notify    =>  Service[$hy_service],
               }
          +
          +    # make sure rsyslog is logging haproxy logs
          +
          +    file { '/etc/rsyslog.d/10-haproxy.conf':
          +      ensure    =>  file,
          +      owner     =>  'root',
          +      group     =>  'root',
          +      mode      =>  '0644',
          +      selrange  =>  s0,
          +      selrole   =>  object_r,
          +      seltype   =>  syslog_conf_t,
          +      seluser   =>  system_u,
          +      content   =>  template('cd_haproxy/rsyslog/'),
          +      notify    =>  Service['rsyslog'],
          +    }
             }
           }