]> gitweb.fluxo.info Git - puppet-stdlib.git/commit
Add ensure_resources() function
authorNikhil Yadav <nikhil.yadav@amdocs.com>
Thu, 10 Mar 2016 05:03:35 +0000 (10:33 +0530)
committerNikhil Yadav <nikhil.yadav@amdocs.com>
Tue, 15 Mar 2016 03:59:38 +0000 (09:29 +0530)
commit0da9ca7e4a78df49c08873f55caf7c88cdd9bc32
treeacb34d38594538ee3a3074d48b67cb75ef7099bd
parent69ca8d09c6124e9b5bd98e62fb201e734ae5bd05
Add ensure_resources() function

New function "ensure_resources()" to support passing hash as parameter OR from hiera backend

This new function is extension of ensure_resource() which will now support to pass multiple values as hash/array OR from hiera backend variables in title argument with additional parameters needed.

It will
process multiple values for a resource type from the passed argument & pass each entry (type, title, params) to ensure_resource() in required format for further processing.
Now user can have duplicate resource check functionality extended to multiple entries with this new function.

Use:
For multiple resources using
hash:
ensure_resources('user', {'dan' => { gid => 'mygroup', uid =>'600' } ,  'alex' => { gid => 'mygroup' }}, {'ensure' =>'present'})

From Hiera Backend:

userlist:
  dan:
    gid: 'mygroup'

uid: '600'
  alex:
 gid: 'mygroup'

Call:
ensure_resources('user',hiera_hash('userlist'), {'ensure' => 'present'})

ensure_packages()
Modified to also support Hash type argument for packages

This modification will call newly added ensure_resources() for processing Hash as second argument.
The original functionality remains same for Array type arguments.

Use:
hiera:

packagelist:
  ksh:
    ensure: latest
  mlocate: {}
  myrpm:
    provider: rpm
    source: "/tmp/myrpm-1.0.0.x86_64.rpm"
    install_options:
      --prefix:
        /users/home
  openssl:
    provider: rpm
    source: "/tmp/openssl-1.0.1e-42.el7.x86_64.rpm"

Call:
ensure_packages($packagelist)
README.markdown
lib/puppet/parser/functions/ensure_packages.rb
lib/puppet/parser/functions/ensure_resources.rb [new file with mode: 0644]