diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..7ea409f --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,9 @@ + +--------------------------------------- + +### 0.1.0 - + +Initial release. + +##### Changes +* Add a repository (hwraid for Debian). diff --git a/manifests/init.pp b/manifests/init.pp index 4fefe81..7710fba 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -24,18 +24,27 @@ # === Examples # # class { 'megacli': -# servers => [ 'pool.ntp.org', 'ntp.local.company.com' ], # } # # === Authors # -# Author Name +# Gardouille # # === Copyright # -# Copyright 2015 Your name here, unless otherwise noted. +# WTFPL # -class megacli { +class megacli ( + # Repository + $repo_ensure = $megacli::params::repo_ensure, + $repo_url = $megacli::params::repo_url, + $repo_key = $megacli::params::repo_key, + $repo_key_server = $megacli::params::repo_key_server, + $repo_include_src = $megacli::params::repo_include_src, + $repos = $megacli::params::repos, +) inherits megacli::params { + + include megacli::repo } diff --git a/manifests/params.pp b/manifests/params.pp new file mode 100644 index 0000000..2ffb7d5 --- /dev/null +++ b/manifests/params.pp @@ -0,0 +1,27 @@ +# == Class: megacli::params +# +class megacli::params { + case $::osfamily { + 'Debian': { + if $::operatingsystem == 'Debian' { + + # Repository + $repo_ensure = present + $repo_url = 'http://hwraid.le-vert.net/debian/' + $repo_key = '23B3D3B4' + $repo_key_server = 'keyserver.ubuntu.com' + $repo_include_src = false + $repos = 'main' + + } + + } + default: { + fail("Osfamily (${::osfamily}) or lsbdistid (${::lsbdistid}) is not yet unsupported. Please send a mail or check https://git.101010.fr/puppet/megacli/issues if you want a support.") + + } + + } + + +} # Private class: megacli::params diff --git a/manifests/repo.pp b/manifests/repo.pp new file mode 100644 index 0000000..9e314dd --- /dev/null +++ b/manifests/repo.pp @@ -0,0 +1,20 @@ +# == Class: megacli::repo +# +# Add a repository to install Megacli +# +class megacli::repo { + case $::osfamily { + 'Debian': { + apt::source {'megacli': + ensure => $megacli::repo_ensure, + location => $megacli::repo_url, + release => $::lsbdistcodename, + repos => $megacli::repos, + include_src => $megacli::repo_include_src, + key => $megacli::repo_key, + key_server => $megacli::repo_key_server, + } + } + } + +} # Private class: megacli::repo diff --git a/metadata.json b/metadata.json index 880b822..532b102 100644 --- a/metadata.json +++ b/metadata.json @@ -7,8 +7,15 @@ "source": "https://git.101010.fr/puppet/megacli", "project_page": "https://git.101010.fr/puppet/megacli", "issues_url": "https://git.101010.fr/puppet/megacli/issues", + "description": "Megacli module", + "operatingsystem_support": [ + { + "operatingsystem":"Debian" + } + ], "dependencies": [ - {"name":"puppetlabs-stdlib","version_requirement":">= 1.0.0"} + {"name":"puppetlabs/stdlib","version_requirement":"4.x"}, + {"name":"puppetlabs/apt","version_requirement":">=1.1.0 <2.0.0"} ] }