you probably need to lift up the parameters to the define.

something like

´´´´
define accounts::virtual ($uid, $realname, $pass, $shell='/bin/bash') {... }
´´´´

It's been awhile since I did program in puppet, but that should be a start.


--
Lowe Schmidt | +46 723 867 157

On 23 January 2016 at 18:22, Tim Dunphy <[email protected]> wrote:

> Hey guys,
>
>  I've got a puppet module that creates user accounts on linux machines.
>
>  I'm trying to override a couple settings in my config for the user's
> shell and home directory. And I'm getting this error:
>
>     Error: Could not retrieve catalog from remote server: Error 400 on
> SERVER: Invalid parameter shell on Accounts::Virtual[mysql] at
> /etc/puppet/environments/production/modules/accounts/manifests/init.pp:70
> on node solr1.jokefire.com
>     Warning: Not using cache on failed catalog
>     Error: Could not retrieve catalog; skipping run
>
> I have the user virtual account definitions setup this way in the account
> module's init.pp:
>
>
>        @accounts::virtual { 'mysql':
>          uid             =>  1007,
>          shell           =>  '/bin/false',
>          home            => '/var/lib/mysql',
>          realname        =>  'mysql',
>          pass            =>  'secret_hash',
>         }
>
> And this is how the virtual account definitions are setup:
>
>     # Defined type for creating virtual user accounts
>     #
>     define accounts::virtual ($uid,$realname,$pass) {
>
>       user { $title:
>         ensure            =>  'present',
>         uid               =>  $uid,
>         gid               =>  $title,
>         shell             =>  '/bin/bash',
>         home              =>  "/home/${title}",
>         comment           =>  $realname,
>         password          =>  $pass,
>         managehome        =>  true,
>         require           =>  Group[$title]
>       }
>
>       group { $title:
>         gid               =>  $uid,
>       }
>
>       file { "/home/${title}":
>         ensure            =>  directory,
>         owner             =>  $title,
>         group             =>  $title,
>         mode              =>  0750,
>         require           =>  [ User[$title], Group[$title] ]
>       }
>     }
>
> Where am I going wrong? Why can't I override these values?
>
> --
> GPG me!!
>
> gpg --keyserver pool.sks-keyservers.net --recv-keys F186197B
>
> --
> You received this message because you are subscribed to the Google Groups
> "Puppet Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/puppet-users/CAOZy0ekGSusExu6fP03HA-%2BY2iPmCaMgv%2B7%3Dkr6V%2BCBOHS%3DH9Q%40mail.gmail.com
> <https://groups.google.com/d/msgid/puppet-users/CAOZy0ekGSusExu6fP03HA-%2BY2iPmCaMgv%2B7%3Dkr6V%2BCBOHS%3DH9Q%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/CAC-wWcSzshwerCyVLSJMYP3_kS%2BxftCjRkERc-mwd0O2JEiwZg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to