On Monday, October 29, 2012 3:37:45 AM UTC-5, Luca Gioppo
wrote:>
> I have the problem of installing stuff in zip files (that is the tipical
> way of distributing java stuffs as JBoss, WSO2).
> Which can be the preferred solution to make such an install:
> - the only option I see is gettin the zip with curl or wget and than
> executing a unzip placing the stuff in the desired folder.
>
> Doing this leaves behind the zip files somewhere and removing it causes
> puppet to download it again everytime.
>
> It would be best to have a sort of provider dedicated to zip so that it
> can remove and can have all the knowledge of wheather the stuff is
> installed or not.
>
ZIP is an archive file format, but what you are asking for requires a
package management system. It is impossible to write a general-purpose
provider that can do what you suggest with ZIP. You could write specific
classes for managing the software contained in each such zip, leveraging
your knowledge of the zip contents, but that''s going to get extremely
tricky if you need to ensure specific versions of such software.
>
> Logically I do not want the file in the server, but I need it to make
> puppet do the work: if I understand well the puppet philosophy this way of
> doing is a bit against it since I do not have to create a list of
> instructions to obtain a result, but I should just list a set of
> configutations (I need a file there because I need it)
>
> Any hint on good practices.
>
Even before considering Puppet, it is an excellent idea to insist on
installing software on your computers only via their native package
management system. For RedHat-family Linuxes, for instance, that means
using RPMs, and for Windows it means MSI. That way, the system knows what
software has been installed, and in some cases (e.g. RPM-based systems) it
even knows exactly which files belong to which packages. There are a lot
of reasons why this is a good thing, but the most relevant one to your
question is that Puppet can learn from the system whether a particular
target package is already installed.
If the software you want to install is not already available packaged for
the appropriate package-management system, then you may need to build your
own packages and keep them in your own local repository. How hard that
would be depends on the software to be packaged and the target packaging
system, but if the software is already available as a ZIPped image then it
probably isn''t to hard to just convert the ZIP to a bona fide package.
John
--
You received this message because you are subscribed to the Google Groups
"Puppet Users" group.
To view this discussion on the web visit
https://groups.google.com/d/msg/puppet-users/-/k1ze6R8CHBYJ.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to
puppet-users+unsubscribe@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/puppet-users?hl=en.