Puppet Class: mysql::bindings

Inherits:
mysql::params
Defined in:
manifests/bindings.pp

Summary

Parent class for MySQL bindings.

Overview

Examples:

Install Ruby language bindings

class { 'mysql::bindings':
  ruby_enable           => true,
  ruby_package_ensure   => 'present',
  ruby_package_name     => 'ruby-mysql-2.7.1-1mdv2007.0.sparc.rpm',
  ruby_package_provider => 'rpm',
}

Parameters:

  • install_options (Optional[Array[String[1]]]) (defaults to: undef)

    Passes ‘install_options` array to managed package resources. You must pass the [appropriate options](docs.puppetlabs.com/references/latest/type.html#package-attribute-install_options) for the package manager(s).

  • java_enable (Boolean) (defaults to: false)

    Specifies whether ‘::mysql::bindings::java` should be included. Valid values are `true`, `false`.

  • perl_enable (Boolean) (defaults to: false)

    Specifies whether ‘mysql::bindings::perl` should be included. Valid values are `true`, `false`.

  • php_enable (Boolean) (defaults to: false)

    Specifies whether ‘mysql::bindings::php` should be included. Valid values are `true`, `false`.

  • python_enable (Boolean) (defaults to: false)

    Specifies whether ‘mysql::bindings::python` should be included. Valid values are `true`, `false`.

  • ruby_enable (Boolean) (defaults to: false)

    Specifies whether ‘mysql::bindings::ruby` should be included. Valid values are `true`, `false`.

  • client_dev (Boolean) (defaults to: false)

    Specifies whether ‘::mysql::bindings::client_dev` should be included. Valid values are `true`’, ‘false`.

  • daemon_dev (Boolean) (defaults to: false)

    Specifies whether ‘::mysql::bindings::daemon_dev` should be included. Valid values are `true`, `false`.

  • java_package_ensure (Variant[Enum['present','absent'], Pattern[/(\d+)[\.](\d+)[\.](\d+)/]]) (defaults to: $mysql::params::java_package_ensure)

    Whether the package should be present, absent, or a specific version. Valid values are ‘present’, ‘absent’, or ‘x.y.z’. Only applies if ‘java_enable => true`.

  • java_package_name (String[1]) (defaults to: $mysql::params::java_package_name)

    The name of the Java package to install. Only applies if ‘java_enable => true`.

  • java_package_provider (Optional[String[1]]) (defaults to: $mysql::params::java_package_provider)

    The provider to use to install the Java package. Only applies if ‘java_enable => true`.

  • perl_package_ensure (Variant[Enum['present','absent'], Pattern[/(\d+)[\.](\d+)[\.](\d+)/]]) (defaults to: $mysql::params::perl_package_ensure)

    Whether the package should be present, absent, or a specific version. Valid values are ‘present’, ‘absent’, or ‘x.y.z’. Only applies if ‘perl_enable => true`.

  • perl_package_name (String[1]) (defaults to: $mysql::params::perl_package_name)

    The name of the Perl package to install. Only applies if ‘perl_enable => true`.

  • perl_package_provider (Optional[String[1]]) (defaults to: $mysql::params::perl_package_provider)

    The provider to use to install the Perl package. Only applies if ‘perl_enable => true`.

  • php_package_ensure (Variant[Enum['present','absent'], Pattern[/(\d+)[\.](\d+)[\.](\d+)/]]) (defaults to: $mysql::params::php_package_ensure)

    Whether the package should be present, absent, or a specific version. Valid values are ‘present’, ‘absent’, or ‘x.y.z’. Only applies if ‘php_enable => true`.

  • php_package_name (String[1]) (defaults to: $mysql::params::php_package_name)

    The name of the PHP package to install. Only applies if ‘php_enable => true`.

  • php_package_provider (Optional[String[1]]) (defaults to: $mysql::params::php_package_provider)

    The provider to use to install the PHP package. Only applies if ‘php_enable => true`.

  • python_package_ensure (Variant[Enum['present','absent'], Pattern[/(\d+)[\.](\d+)[\.](\d+)/]]) (defaults to: $mysql::params::python_package_ensure)

    Whether the package should be present, absent, or a specific version. Valid values are ‘present’, ‘absent’, or ‘x.y.z’. Only applies if ‘python_enable => true`.

  • python_package_name (String[1]) (defaults to: $mysql::params::python_package_name)

    The name of the Python package to install. Only applies if ‘python_enable => true`.

  • python_package_provider (Optional[String[1]]) (defaults to: $mysql::params::python_package_provider)

    The provider to use to install the Python package. Only applies if ‘python_enable => true`.

  • ruby_package_ensure (Variant[Enum['present','absent'], Pattern[/(\d+)[\.](\d+)[\.](\d+)/]]) (defaults to: $mysql::params::ruby_package_ensure)

    Whether the package should be present, absent, or a specific version. Valid values are ‘present’, ‘absent’, or ‘x.y.z’. Only applies if ‘ruby_enable => true`.

  • ruby_package_name (String[1]) (defaults to: $mysql::params::ruby_package_name)

    The name of the Ruby package to install. Only applies if ‘ruby_enable => true`.

  • ruby_package_provider (Optional[String[1]]) (defaults to: $mysql::params::ruby_package_provider)

    What provider should be used to install the package.

  • client_dev_package_ensure (Variant[Enum['present','absent'], Pattern[/(\d+)[\.](\d+)[\.](\d+)/]]) (defaults to: $mysql::params::client_dev_package_ensure)

    Whether the package should be present, absent, or a specific version. Valid values are ‘present’, ‘absent’, or ‘x.y.z’. Only applies if ‘client_dev => true`.

  • client_dev_package_name (Optional[String[1]]) (defaults to: $mysql::params::client_dev_package_name)

    The name of the client_dev package to install. Only applies if ‘client_dev => true`.

  • client_dev_package_provider (Optional[String[1]]) (defaults to: $mysql::params::client_dev_package_provider)

    The provider to use to install the client_dev package. Only applies if ‘client_dev => true`.

  • daemon_dev_package_ensure (Variant[Enum['present','absent'], Pattern[/(\d+)[\.](\d+)[\.](\d+)/]]) (defaults to: $mysql::params::daemon_dev_package_ensure)

    Whether the package should be present, absent, or a specific version. Valid values are ‘present’, ‘absent’, or ‘x.y.z’. Only applies if ‘daemon_dev => true`.

  • daemon_dev_package_name (String[1]) (defaults to: $mysql::params::daemon_dev_package_name)

    The name of the daemon_dev package to install. Only applies if ‘daemon_dev => true`.

  • daemon_dev_package_provider (Optional[String[1]]) (defaults to: $mysql::params::daemon_dev_package_provider)

    The provider to use to install the daemon_dev package. Only applies if ‘daemon_dev => true`.



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

class mysql::bindings (
  Optional[Array[String[1]]] $install_options = undef,
  # Boolean to determine if we should include the classes.
  Boolean $java_enable     = false,
  Boolean $perl_enable     = false,
  Boolean $php_enable      = false,
  Boolean $python_enable   = false,
  Boolean $ruby_enable     = false,
  Boolean $client_dev      = false,
  Boolean $daemon_dev      = false,
  # Settings for the various classes.
  Variant[Enum['present','absent'], Pattern[/(\d+)[\.](\d+)[\.](\d+)/]] $java_package_ensure         = $mysql::params::java_package_ensure,
  String[1]                                                             $java_package_name           = $mysql::params::java_package_name,
  Optional[String[1]]                                                   $java_package_provider       = $mysql::params::java_package_provider,
  Variant[Enum['present','absent'], Pattern[/(\d+)[\.](\d+)[\.](\d+)/]] $perl_package_ensure         = $mysql::params::perl_package_ensure,
  String[1]                                                             $perl_package_name           = $mysql::params::perl_package_name,
  Optional[String[1]]                                                   $perl_package_provider       = $mysql::params::perl_package_provider,
  Variant[Enum['present','absent'], Pattern[/(\d+)[\.](\d+)[\.](\d+)/]] $php_package_ensure          = $mysql::params::php_package_ensure,
  String[1]                                                             $php_package_name            = $mysql::params::php_package_name,
  Optional[String[1]]                                                   $php_package_provider        = $mysql::params::php_package_provider,
  Variant[Enum['present','absent'], Pattern[/(\d+)[\.](\d+)[\.](\d+)/]] $python_package_ensure       = $mysql::params::python_package_ensure,
  String[1]                                                             $python_package_name         = $mysql::params::python_package_name,
  Optional[String[1]]                                                   $python_package_provider     = $mysql::params::python_package_provider,
  Variant[Enum['present','absent'], Pattern[/(\d+)[\.](\d+)[\.](\d+)/]] $ruby_package_ensure         = $mysql::params::ruby_package_ensure,
  String[1]                                                             $ruby_package_name           = $mysql::params::ruby_package_name,
  Optional[String[1]]                                                   $ruby_package_provider       = $mysql::params::ruby_package_provider,
  Variant[Enum['present','absent'], Pattern[/(\d+)[\.](\d+)[\.](\d+)/]] $client_dev_package_ensure   = $mysql::params::client_dev_package_ensure,
  Optional[String[1]]                                                   $client_dev_package_name     = $mysql::params::client_dev_package_name,
  Optional[String[1]]                                                   $client_dev_package_provider = $mysql::params::client_dev_package_provider,
  Variant[Enum['present','absent'], Pattern[/(\d+)[\.](\d+)[\.](\d+)/]] $daemon_dev_package_ensure   = $mysql::params::daemon_dev_package_ensure,
  String[1]                                                             $daemon_dev_package_name     = $mysql::params::daemon_dev_package_name,
  Optional[String[1]]                                                   $daemon_dev_package_provider = $mysql::params::daemon_dev_package_provider
) inherits mysql::params {
  case $facts['os']['family'] {
    'Archlinux': {
      if $java_enable { fail("::mysql::bindings::java cannot be managed by puppet on ${facts['os']['family']} as it is not in official repositories. Please disable java mysql binding.") }
      if $perl_enable { include 'mysql::bindings::perl' }
      if $php_enable { warning("::mysql::bindings::php does not need to be managed by puppet on ${facts['os']['family']} as it is included in mysql package by default.") }
      if $python_enable { include 'mysql::bindings::python' }
      if $ruby_enable { fail("::mysql::bindings::ruby cannot be managed by puppet on ${facts['os']['family']} as it is not in official repositories. Please disable ruby mysql binding.") }
    }

    default: {
      if $java_enable { include 'mysql::bindings::java' }
      if $perl_enable { include 'mysql::bindings::perl' }
      if $php_enable { include 'mysql::bindings::php' }
      if $python_enable { include 'mysql::bindings::python' }
      if $ruby_enable { include 'mysql::bindings::ruby' }
    }
  }

  if $client_dev { include 'mysql::bindings::client_dev' }
  if $daemon_dev { include 'mysql::bindings::daemon_dev' }
}