Defined Type: elasticsearch::pipeline

Defined in:
manifests/pipeline.pp

Overview

This define allows you to insert, update or delete Elasticsearch index

ingestion pipelines.

Pipeline content should be defined through the `content` parameter.

Parameters:

  • ensure (Enum['absent', 'present']) (defaults to: 'present')

    Controls whether the named pipeline should be present or absent in the cluster.

  • content (Hash) (defaults to: {})

    Contents of the pipeline in hash form.

  • api_basic_auth_password (Optional[String]) (defaults to: $elasticsearch::api_basic_auth_password)

    HTTP basic auth password to use when communicating over the Elasticsearch API.

  • api_basic_auth_username (Optional[String]) (defaults to: $elasticsearch::api_basic_auth_username)

    HTTP basic auth username to use when communicating over the Elasticsearch API.

  • api_ca_file (Optional[Stdlib::Absolutepath]) (defaults to: $elasticsearch::api_ca_file)

    Path to a CA file which will be used to validate server certs when communicating with the Elasticsearch API over HTTPS.

  • api_ca_path (Optional[Stdlib::Absolutepath]) (defaults to: $elasticsearch::api_ca_path)

    Path to a directory with CA files which will be used to validate server certs when communicating with the Elasticsearch API over HTTPS.

  • api_host (String) (defaults to: $elasticsearch::api_host)

    Host name or IP address of the ES instance to connect to.

  • api_port (Integer[0, 65535]) (defaults to: $elasticsearch::api_port)

    Port number of the ES instance to connect to

  • api_protocol (Enum['http', 'https']) (defaults to: $elasticsearch::api_protocol)

    Protocol that should be used to connect to the Elasticsearch API.

  • api_timeout (Integer) (defaults to: $elasticsearch::api_timeout)

    Timeout period (in seconds) for the Elasticsearch API.

  • validate_tls (Boolean) (defaults to: $elasticsearch::validate_tls)

    Determines whether the validity of SSL/TLS certificates received from the Elasticsearch API should be verified or ignored.

Author:

  • Tyler Langlois <tyler.langlois@elastic.co>



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
# File 'manifests/pipeline.pp', line 47

define elasticsearch::pipeline (
  Enum['absent', 'present']      $ensure                  = 'present',
  Optional[String]               $api_basic_auth_password = $elasticsearch::api_basic_auth_password,
  Optional[String]               $api_basic_auth_username = $elasticsearch::api_basic_auth_username,
  Optional[Stdlib::Absolutepath] $api_ca_file             = $elasticsearch::api_ca_file,
  Optional[Stdlib::Absolutepath] $api_ca_path             = $elasticsearch::api_ca_path,
  String                         $api_host                = $elasticsearch::api_host,
  Integer[0, 65535]              $api_port                = $elasticsearch::api_port,
  Enum['http', 'https']          $api_protocol            = $elasticsearch::api_protocol,
  Integer                        $api_timeout             = $elasticsearch::api_timeout,
  Hash                           $content                 = {},
  Boolean                        $validate_tls            = $elasticsearch::validate_tls,
) {
  es_instance_conn_validator { "${name}-ingest-pipeline":
    server  => $api_host,
    port    => $api_port,
    timeout => $api_timeout,
  }
  -> elasticsearch_pipeline { $name:
    ensure       => $ensure,
    content      => $content,
    protocol     => $api_protocol,
    host         => $api_host,
    port         => $api_port,
    timeout      => $api_timeout,
    username     => $api_basic_auth_username,
    password     => $api_basic_auth_password,
    ca_file      => $api_ca_file,
    ca_path      => $api_ca_path,
    validate_tls => $validate_tls,
  }
}