Skip to content

Instantly share code, notes, and snippets.

@StephenBrown2
Last active December 20, 2015 09:09
Show Gist options
  • Save StephenBrown2/6106113 to your computer and use it in GitHub Desktop.
Save StephenBrown2/6106113 to your computer and use it in GitHub Desktop.
mariadb::params
class maria::params {
$version = '5.5'
$os = $::operatingsystem ? {
'RedHat' => 'rhel',
'LinuxMint' => 'ubuntu',
default => inline_template('<%= @::operatingsystem.downcase %>'),
}
$arch = $::architecture ? {
'/^*86$/' => 'x86',
'/^*64$/' => 'amd64',
default => $::architecture,
}
case $::osfamily {
'RedHat': { $available_releases = ['5.5', '10.0'] }
'Debian': {
case $os {
'debian': {
case $::lsbmajrelease {
'6': { $available_releases = ['5.2', '5.3', '5.5', '10.0'] }
'7': { $available_releases = ['5.5', '10.0'] }
default: {
fail( "MariaDB not supported on ${::operatingsystem} ${::operatingsystemrelease}" )
}
}
}
'ubuntu': {
case $::lsbdistcodename {
/(hardy|maverick|natty|oneiric)/: {
if $::operatingsystem == 'LinuxMint' {
fail( "MariaDB not supported on ${::operatingsystem} ${::operatingsystemrelease}" )
} else {
$available_releases = ['5.2', '5.3']
}
}
'lucid': {
$available_releases = ['5.2', '5.3', '5.5', '10.0']
}
/(precise|quantal|raring)/: {
$available_releases = ['5.5', '10.0']
}
default: {
fail( "MariaDB not supported on ${::operatingsystem} ${::operatingsystemrelease}" )
}
}
}
default: {
fail( "MariaDB not supported on ${::operatingsystem} ${::operatingsystemrelease}" )
}
}
}
default: {
case $::operatingsystem {
'OpenSUSE': { notice( 'openSUSE includes MariaDB in their repositories as of openSUSE 11.3' ) }
'Mageia': { notice( 'Mageia includes MariaDB in their repositories as of Mageia 2' ) }
default: { warning( "MariaDB may not be supported on ${::operatingsystem} ${::operatingsystemrelease}, defaulting MariaDB available_releases to 5.5" ) }
$available_releases = ['5.5']
}
}
if ! ($version in $available_releases) {
warning( "MariaDB ${version} not supported on ${::operatingsystem} ${::operatingsystemrelease}, setting release to ${available_releases[-1]}" )
$version = $available_releases[-1]
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment