Ben Beuchler wrote:
> My initial base config contained a "vim" package. After installing a
> few servers I realized what I really wanted was a "vim-nox" package.
>
> Feeling clever, I changed this:
>
> package {"vim":
> ensure => installed,
> }
>
> To this:
>
> package {"vim":
> name => "vim-nox",
> ensure => installed,
> }
>
> That way I could still refer to the package by the generic term "vim"
> but I would get the bloated version. Unfortunately, none of the
> client nodes are picking up the change. They seem to think that since
> the resource is still called "vim" they don't have to re-install it.
>
> Is there anything I can do to get this change to propagate? Of course
> if I go to each client and remove the "vim" package it gets replaced
> at the next run with "vim-nox", but I'm hoping for something a bit
> more elegant. And, perhaps, an explanation enumerating the ways in
> which my course of action was clueless.
The fact that a run after manually removing the vim package installs vim-nox
suggests to me that puppet itself is actually picking up on the change fine.
(You could run puppetd with --debug to check this.)
My first thought would be that your vim package is set up to advertise itself
as providing an acceptable substitute for the vim-nox package. Thus, when
puppet asks your package manager "do you have the vim-nox package installed?"
it says "sure!" You don't say which package manager you're using, so this is
purely speculation, but it would be simple enough to create a manifest to test
this out. Try something like this:
package { "vim-purge":
name => "vim",
ensure => absent
}
package { "vim":
name => "vim-nox",
ensure => installed,
require => Package["vim-purge"]
}
The require should make sure that it uninstalls the vim package before
attempting to install the vim-nox package.
As an alternative, you could make a tiny class that contains just those two
packages, and then refer to the vim class instead. That way you'd avoid the
potentially confusing title vs name differences.
--
Frank Sweetser fs at wpi.edu | For every problem, there is a solution that
WPI Senior Network Engineer | is simple, elegant, and wrong. - HL Mencken
GPG fingerprint = 6174 1257 129E 0D21 D8D4 E8A3 8E39 29E3 E2E8 8CEC
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Puppet Users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/puppet-users?hl=en
-~----------~----~----~----~------~----~------~--~---