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 (Any) (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 (Any) (defaults to: false)

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

  • perl_enable (Any) (defaults to: false)

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

  • php_enable (Any) (defaults to: false)

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

  • python_enable (Any) (defaults to: false)

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

  • ruby_enable (Any) (defaults to: false)

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

  • client_dev (Any) (defaults to: false)

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

  • daemon_dev (Any) (defaults to: false)

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

  • java_package_ensure (Any) (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 (Any) (defaults to: $mysql::params::java_package_name)

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

  • java_package_provider (Any) (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 (Any) (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 (Any) (defaults to: $mysql::params::perl_package_name)

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

  • perl_package_provider (Any) (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 (Any) (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 (Any) (defaults to: $mysql::params::php_package_name)

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

  • php_package_provider (Any) (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 (Any) (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 (Any) (defaults to: $mysql::params::python_package_name)

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

  • python_package_provider (Any) (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 (Any) (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 (Any) (defaults to: $mysql::params::ruby_package_name)

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

  • ruby_package_provider (Any) (defaults to: $mysql::params::ruby_package_provider)

    What provider should be used to install the package.

  • client_dev_package_ensure (Any) (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 (Any) (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 (Any) (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 (Any) (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 (Any) (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 (Any) (defaults to: $mysql::params::daemon_dev_package_provider)

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



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

class mysql::bindings (
  $install_options = undef,
  # Boolean to determine if we should include the classes.
  $java_enable     = false,
  $perl_enable     = false,
  $php_enable      = false,
  $python_enable   = false,
  $ruby_enable     = false,
  $client_dev      = false,
  $daemon_dev      = false,
  # Settings for the various classes.
  $java_package_ensure         = $mysql::params::java_package_ensure,
  $java_package_name           = $mysql::params::java_package_name,
  $java_package_provider       = $mysql::params::java_package_provider,
  $perl_package_ensure         = $mysql::params::perl_package_ensure,
  $perl_package_name           = $mysql::params::perl_package_name,
  $perl_package_provider       = $mysql::params::perl_package_provider,
  $php_package_ensure          = $mysql::params::php_package_ensure,
  $php_package_name            = $mysql::params::php_package_name,
  $php_package_provider        = $mysql::params::php_package_provider,
  $python_package_ensure       = $mysql::params::python_package_ensure,
  $python_package_name         = $mysql::params::python_package_name,
  $python_package_provider     = $mysql::params::python_package_provider,
  $ruby_package_ensure         = $mysql::params::ruby_package_ensure,
  $ruby_package_name           = $mysql::params::ruby_package_name,
  $ruby_package_provider       = $mysql::params::ruby_package_provider,
  $client_dev_package_ensure   = $mysql::params::client_dev_package_ensure,
  $client_dev_package_name     = $mysql::params::client_dev_package_name,
  $client_dev_package_provider = $mysql::params::client_dev_package_provider,
  $daemon_dev_package_ensure   = $mysql::params::daemon_dev_package_ensure,
  $daemon_dev_package_name     = $mysql::params::daemon_dev_package_name,
  $daemon_dev_package_provider = $mysql::params::daemon_dev_package_provider
) inherits mysql::params {
  case $::osfamily {
    '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' }
}