On Wed, Apr 13, 2011 at 3:53 PM, Shi <jinzish...@gmail.com> wrote:

> Thank Jon.
> Based on your class, I've come up with the following code which worked
> for me.
> class sun-jdk {
>     package {"java-1.6.0-openjdk":
>        ensure  =>  absent,
>    }
>     exec {"jdk_install":
>        cwd     =>  "/root",
>        command =>  "/root/jdk-6u24-linux-x64-rpm.bin",
>        creates =>  "/usr/java/jdk1.6.0_24/bin/javac",
>        require =>  [Package["java-1.6.0-openjdk"], file["/root/
> jdk-6u24-linux-x64-rpm.bin"]],
>    }
>    package {jdk:
>        require =>  Exec["jdk_install"],
>    }
>    file {"/root/jdk-6u24-linux-x64-rpm.bin":
>        ensure => present,
>        source => "puppet:///modules/sun-jdk/jdk-6u24-linux-x64-
> rpm.bin";
>    }
> }
> I didn't use NFS share but made use of the puppet file server.
>
> If anyone has suggestions for improvement, please let me know.
> Thanks a lot.
> Shi
>
> On Apr 12, 10:38 pm, Jon Jaroker <goo...@jaroker.com> wrote:
> > I have the same requirement to install Sun JDK, not openJDK.  Below is
> > the module I am using.  I would be grateful for suggestions on how
> > this install can be done better.
> >
> > Thank you,
> > Jon
> >
> > class java {
> >
> >     package {"java-1.6.0-openjdk":
> >         ensure  =>  absent,
> >     }
> >
> >     exec {"java_install":
> >         cwd     =>  "/opt",
> >         command =>  "/usr/bin/yes | /opt/share/downloads/java/jdk-6u24-
> > linux-x64.bin",
> >         creates =>  "/opt/jdk1.6.0_24/COPYRIGHT",
> >         require =>  Package["java-1.6.0-openjdk"],
> >     }
> >
> >     file {"/usr/bin/java":
> >         ensure  =>  "/opt/jdk1.6.0_24/bin/java",
> >         require =>  Exec["java_install"],
> >     }
> >
> > }
> >
> > On Apr 12, 3:55 pm, Shi <jinzish...@gmail.com> wrote:
> >
> >
> >
> >
> >
> >
> >
> > > Hi there,
> >
> > > I am new to Puppet and am writing my first module to manage our
> > > cluster. So far, it worked out reasonably well. I can add yum
> > > repositories and install packages with Puppet automatically.
> > > However, one package requires the use of Sun JDK, not the openjdk
> > > coming with CentOS.
> > > The only way to do this is to download the jdk-6u24-linux-x64-rpm.bin
> > > file and run it.
> >
> > > I figure I might be able to use something like
> >
> > > package {jdk:
> > >     source="/mnt/share/jdk-6u24-linux-x64-rpm.bin",
> > >     ensure => installed;
> > >   }
> >
> > > I guess I could put the file under the shared NFS /mnt/share. But
> > > there is no way I can tell puppet to simply run the source as an
> > > executable. All the PROVIDER options are for a particular format, such
> > > as RPM or DEB. I guess I could run the file once on one machine, and
> > > it will extract the rpms. I could then just use the rpms, but that is
> > > less than ideal.
> >
> > > Also, if I don't want to pre-mount the NFS share, is there any way to
> > > scp the file from the master node? Do I then have to set up ssh
> > > without password for the root?
> >
> > > Thank you very much.
> > > Shi
>
> --
> You received this message because you are subscribed to the Google Groups
> "Puppet Users" group.
> To post to this group, send email to puppet-users@googlegroups.com.
> To unsubscribe from this group, send email to
> puppet-users+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/puppet-users?hl=en.
>
>
Hi,

Having been down this road with java and various other packages I'd suggest
managing the package at the pkg. manager/mirror level (i.e. custom pkg) and
_then_ pull from that with java-ensure class as required  (also consider
utilizing alternatives command for the system implementation.
Of course './jdk-6u21-linux-x64-rpm.bin -x ' will extract the RPM ...


-- 
Cheers,

Steven
-----------------------
Steven Acres
UNIX/Linux System Administrator

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.

Reply via email to