How to scope java updates

rcurran
Contributor

I'd like to create a smart group that says if the user has java but isn't currently on the latest version 1.70_21-b12, to update. Clearly the way I'm doing it below isn't working :)

http://cl.ly/image/303W0A3h0w0I

Thanks in advance!

11 REPLIES 11

rcurran
Contributor

I just enabled collect plugins from the inventory options. I believe I should be able to scope it now, but if there's a better way I'd love to hear :)

Best

rtrouton
Release Candidate Programs Tester

I've got a couple of extension attributes that I use for this. I have a post here on them:

http://derflounder.wordpress.com/2012/10/31/casper-extension-attribute-scripts-to-report-java-browse...

rcurran
Contributor

Scratch that, found this post https://jamfnation.jamfsoftware.com/discussion.html?id=7117&postid=37306

:)

mm2270
Legendary Contributor III

Java is not an application technically, so the Application Title and Version criteria won't work with that. Gathering Plug-Ins in Inventory also may not give you what you want. The best way most of us have found is to build an Extension Attribute that reports back the installed version of the Java plug-in, or if not installed, reports that as well.

Then build a Smart Group off that and scope. We have even gone as far as splitting up the major and minor versions for Java into 2 separate EAs, so we can be more granular about it. In other words, something like: Java JRE Major Version Is 1.7.0, Java JRE Minor Version Is 17, etc.

jhalvorson
Valued Contributor

I use both of the EA's pointed out by rtrouton; one gets the vendor and the other gets the version number.

I have two Smart Groups to sort out which systems need the Apple JAVA update:
-----
Smart Group: 10.6 Update Apple Java
OS Configuration Information

  • Operating System "like" 10.6

Extension Attributes Information

  • App Version - Java Vendor [is]Apple
  • [and] App Version - Java Version [is not] JavaInstallOnDemand: 13.9.5
  • [and] App Version - Java Version [is not] Not Installed

-----
Smart Group: 10.7 or 10.8 Update Apple Java
OS Configuration Information

  • Operating System [like] 10.7
  • [or] Operating System [like] 10.8

Extension Attributes Information

  • App Version - Java Version [is not] JavaInstallOnDemand: 14.7.0
  • [and] App Version - Java Vendor [is] Apple

-----

The logic above avoids installing Java on machines that don't have Java installed. I don't know if that is possible with 10.6, but I don't want to be blamed for installing it back on if the user purposely removed Java.

luke_j_nelson
New Contributor II

The extension attributes work great for us. The 3 smart groups we use have these conditions:

Java 7:

OS Configuration Information:
Operating System - like - 10.7
[or] Operating System - like - 10.8
[and] Operating System - not like - server

Extension Attributes Information:
Java 7 Version - like - 1.7
[and] Java 7 Version - not like - 1.7.0_21
[and] Java 7 Version - not like - 1.7.0_23

Java 6 - 10.6:

OS Configuration Information:
Operating System - is - 10.6.8
[and] Operating System - not like - server

Extension Attributes information:
Java 6 Version - like - 1.6
[and] Java 6 Version - not like - 1.6.0_45
[and] Java 6 Version - not like - 1.6.0_47

Java 6 - 10.7 and 10.8:

OS Configuration Information:
Operating System - like - 10.7
[or] Operating System - like - 10.8
[and] Operating System - not like - server

Extension Attributes Information:
Java 6 Version - like - 1.6
[and] Java 6 Version - not like - 1.6.0_45
[and] Java 6 Version - not like - 1.6.0_47

I include "not likes" for the next versions to future proof, in case Oracle releases an update and I'm out of the office.

rseide
Contributor

I've tried making smart groups based on all the examples here, including the EAs that go along with them and no members show up for any of them.

I even tried the example Luke made here: https://jamfnation.jamfsoftware.com/discussion.html?id=7117&postid=37306

Not sure what I am doing wrong? Any suggestions?

If I use the EAs I created in the examples, use them in an Advanced Search, and then update Inventory via RMT, then it works. Otherwise, for Smart Groups, they don't work.

mm2270
Legendary Contributor III

@rseide - This is probably too simple, but do you know if your Mac clients have reported in with new inventory since you set up the EAs? You won't get any results in your Smart Group until some data is actually available.

rseide
Contributor

@mm2270

Yes, I ran Remote with the "Update Inventory" option checked in the Advanced tab on All Managed Clients and it still didn't add any members to the Smart Groups I created following the examples provided in the links.

As I mentioned, if I apply those same EAs to an Advanced Search, run Remote again (same criteria above), then the scripts work and the Java fields populate.

I can try playing around some more.

Also, this question may be for another thread, or if it's been addressed already, please let me know the link: What is the best way to push out the Java updates via Casper?

mm2270
Legendary Contributor III

@Rich-

I'm certain there are lots of threads where best practice for Java deployments is discussed, but to summarize, just use the existing .pkg installs from either Apple or oracle and throw them into Casper Admin to upload to your distribution points. Then add them into a policy to install them. There's generally no need to recapture those pkg installs; they work as is.
You can then use Smart Groups, once we help you get those working, to scope the Macs that need the updates and deploy them. That's a somewhat simplified overview and of course there are more details to make it all work properly.

As for EAs, is it possible to post an image of how they are set up? Are you using the ones from Rich Trouton's blog page or from somewhere else?

rseide
Contributor

@Mike, yeah I will do some more searching on Java deployments.

Re EAs: Yes, I am using the ones from Rich Trouton's blog, 1 from Luke in the thread I posted (https://jamfnation.jamfsoftware.com/discussion.html?id=7117&postid=37306), and another one I found on here somewhere.

I think the problem may lie in the search criteria in the Smart Group in the EA sections. I used the same criteria in the examples provided in this thread.

I will try and post some pics tomorrow, when I have more time.

Thanks for your help, Mike.