lindegroup / autopkgr

AutoPkgr is a free Mac app that makes it easy to install and configure AutoPkg.
http://www.lindegroup.com/autopkgr
Apache License 2.0
536 stars 51 forks source link

Adobe Flash Player #255

Closed mgrevtech closed 9 years ago

mgrevtech commented 9 years ago

I dont think I ever had to spend so much time in troubleshooting an initial software setup during my whole tech career. However I really like Autopkgr and would like to get this working fully. After overcoming most of the errors and reading forum posts over and over, my current issue is related to getting Adobe Flash Player show up in JSS/Self-service. All the other app packages work fine. Adobe Flash just doesnt show up no matter what I do - no smart groups or policies get created in Casper. Really wish there was a specific documentation just for setting up Adobe Flash package to integrate with casper. Atleast it could be used as an example for setting up any other similar non-app packages. I have gone over the various posts & documentations there is available on here and tried all suggestions but maybe its something simple, I just dont know what. Could someone pleaseeee help me figure this out? A step procedure to get Flash working in JSS.

Plus I keep getting the below error messages but I have read that these errors are normal and can be suppressed. As long as the policies/packages gets created on casper, I am fine with that. Thanks. Jason.

The following error occured:

Error running recipes /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) /Library/Python/2.7/site-packages/python_jss-0.5.3-py2.7.egg/jss/contrib/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) A Python exception occurred during the execution of autopkg, see the console log for more details. [ERROR] TypeError: not all arguments converted during string formatting

eahrold commented 9 years ago

@mgrevtech, Sorry to hear you're having so much trouble getting things set up.

The request warnings are one thing, but there is an error happening here that is most likely the culprit,

 A Python exception occurred during the execution of autopkg, see the console log for more details. [ERROR] TypeError: not all arguments converted during string formatting

Is the error you posted from the console log, or from the modal window? If just from the window, would you mind going to the Console.app and filtering out AutoPkgr, and pasting the message that starts with the word Traceback. It should give us some more to go on.

Also you should probably just suppress the certificate warnings...

defaults write com.github.autopkg JSS_SUPPRESS_WARNINGS -bool True

Thanks

mgrevtech commented 9 years ago

@eahrold Hey eldon, thanks a lot for the reply. Is that what you are looking for?

1/27/15 8:45:53.138 PM AutoPkgr[10816]: Welcome to AutoPkgr! 1/27/15 8:45:53.482 PM AutoPkgr[10816]: Invalid color System, labelColor (warning given only once) 1/27/15 8:45:57.578 PM AutoPkgr[10816]: redirected (null) 1/27/15 8:45:57.652 PM secd[389]: securityd_xpc_dictionary_handler AutoPkgr[10816] copy_matching The operation couldn’t be completed. (OSStatus error -34018 - client has neither application-identifier nor keychain-access-groups entitlements) 1/27/15 8:45:57.653 PM AutoPkgr[10816]: SecOSStatusWith error:[-34018] The operation couldn’t be completed. (OSStatus error -34018 - Remote error : The operation couldn‚Äôt be completed. (OSStatus error -34018 - client has neither application-identifier nor keychain-access-groups entitlements)) 1/27/15 8:45:57.676 PM AutoPkgr[10816]: Successfully retrieved keychain entry for account sysadmin@email.com 1/27/15 8:45:57.677 PM AutoPkgr[10816]: Updating AutoPkg recipe repos... 1/27/15 8:45:57.849 PM AutoPkgr[10816]: JSSImporter is up to date. 1/27/15 8:45:58.565 PM AutoPkgr[10816]: Installed version of AutoPkg: 0.4.2 1/27/15 8:45:59.083 PM AutoPkgr[10816]: Latest version of AutoPkg available on GitHub: 0.4.2. 1/27/15 8:46:11.364 PM AutoPkgr[10816]: AutoPkg recipe repos updated. 1/27/15 8:46:20.435 PM AutoPkgr[10816]: (1/8) Processing Firefox.jss... 1/27/15 8:46:42.970 PM AutoPkgr[10816]: Unmount successful for /Volumes/CasperShareCasperShare 1/27/15 8:46:43.138 PM AutoPkgr[10816]: (2/8) Processing GoogleChrome.jss... 1/27/15 8:47:03.908 PM AutoPkgr[10816]: Unmount successful for /Volumes/CasperShareCasperShare 1/27/15 8:47:04.071 PM AutoPkgr[10816]: (3/8) Processing GoogleChrome.pkg... 1/27/15 8:47:22.072 PM AutoPkgr[10816]: (4/8) Processing Firefox.pkg... 1/27/15 8:47:39.453 PM AutoPkgr[10816]: (5/8) Processing AdobeFlashPlayer.jss... 1/27/15 8:47:40.335 PM AutoPkgr[10816]: (FULL AUTOPKG TRACEBACK) File "/usr/local/bin/autopkg", line 1469, in sys.exit(main(sys.argv)) File "/usr/local/bin/autopkg", line 1463, in main exit(subcommands[verb]'function') File "/usr/local/bin/autopkg", line 1287, in run_recipes autopackager.process(recipe) File "/Library/AutoPkg/autopkglib/init.py", line 466, in process self.env = processor.process() File "/Library/AutoPkg/autopkglib/init.py", line 295, in process self.main() File "/Users/administrator/Library/AutoPkg/RecipeRepos/com.github.autopkg.recipes/AdobeFlashPlayer/AdobeFlashURLProvider.py", line 94, in main self.env["url"] = self.get_adobeflash_dmg_url() File "/Users/administrator/Library/AutoPkg/RecipeRepos/com.github.autopkg.recipes/AdobeFlashPlayer/AdobeFlashURLProvider.py", line 87, in get_adobeflash_dmg_url return DOWNLOAD_TEMPLATE_URL % version TypeError: not all arguments converted during string formatting 1/27/15 8:47:40.377 PM secd[389]: securityd_xpc_dictionary_handler AutoPkgr[10816] copy_matching The operation couldn’t be completed. (OSStatus error -34018 - client has neither application-identifier nor keychain-access-groups entitlements) 1/27/15 8:47:40.377 PM AutoPkgr[10816]: SecOSStatusWith error:[-34018] The operation couldn’t be completed. (OSStatus error -34018 - Remote error : The operation couldn‚Äôt be completed. (OSStatus error -34018 - client has neither application-identifier nor keychain-access-groups entitlements)) 1/27/15 8:47:44.754 PM AutoPkgr[10816]: Successfully sent email from sysadmin@email.com

FYI, initially when it was giving the errors as below:

Couldn't download http://fpdownload.macromedia.com/get/flashplayer/pdc/16.0.0.296/install_flash_player_osx.dmg: HTTP Error 404: Not Found Couldn't download http://fpdownload.macromedia.com/get/flashplayer/pdc/16.0.0.296/install_flash_player_osx.dmg: HTTP Error 404: Not Found

I assumed it must have something to do with the URL for Adobe Flash download and so decided to modify the original URL in the AdobeFlashURLProvider.py file to (http://fpdownload.macromedia.com/pub/flashplayer/latest/help/install_flash_player_osx.dmg) This did fix the "Couldn't download" error but then today, I modified the URL back to the original one, since that one seemed to be working today. So as of now, it is back at the original URL (http://fpdownload.macromedia.com/get/flashplayer/pdc/16.0.0.296/install_flash_player_osx.dmg)

Regarding the certificate warnings, yes I had run that suppress command before as well but it does not look like its suppressing them. And I ran it again just now but no luck. I keep getting the error modal window each time I run Check Apps Now.

homebysix commented 9 years ago

Hi @mgrevtech,

Most of the "AutoPkgr" problems we've seen are actually recipe problems. They can usually be diagnosed by trying to run a specific recipe in Terminal, like autopkg run AdobeFlashPlayer.jss. If the error persists in Terminal, then AutoPkgr is not the cause.

I suspect the 404 error you saw with Flash is one such issue. Adobe's feed was having some trouble for a while, but if you run autopkg repo-update all (or click the Update Repos Now button in AutoPkgr) then you should be able to use the new AdobeFlashPlayer recipes.

I don't recommend editing the actual files in the RecipeRepos folder. Instead, make an override and edit that, so that when the original recipes are updated, you'll be able to merge the changes in conflict-free.

eahrold commented 9 years ago

@mgrevtech Hey Jason, Elliot's right, you definitely want to create overrides instead of editing there recipes directly, it can cause unexpected problems down the line otherwise.

It is strange that the warnings still persist since that's the same issue as in #243

defaults write com.github.autopkg JSS_SUPPRESS_WARNINGS -bool true

you may want to also check that this is set correctly,

defaults write com.github.autopkg JSS_VERIFY_SSL -bool false

You're not by any chance running these commands using sudo (or as another user) are you?

And one last question, are the other jss recipes you're running making it into your JSS?

mgrevtech commented 9 years ago

@eahrold @homebysix Actually I did try the override method as well but same errors. Maybe I did something wrong. So I copied the AdobeFlashPlayerExtensionAttribute.xml, AdobeFlashSmartGroupTemplate.xml, AdobeFlashPlayer.png files over to the Override folder. Is this the right way? However forgot to mention, there is one extra step that I did - I have been editing the jss.recipe files to change the Group name to something of my own (static group I created on jss) instead of the default 'Testing' one. Again, this has been working fine for all the apps like Firefox, Chrome and few other even with editing jss.recipe files directly in the RecipeRepos folder. And I have also tried the same thing by going the override method.

Sudo, yes :) Thats strange I was always under the impression that those kind of commands had to be run as sudo. Ran command without root, warnings suprressed now, thanks!

So now the only error remaining is the " A Python exception occurred during the execution of autopkg, see the console log for more details. [ERROR] TypeError: not all arguments converted during string formatting"

mgrevtech commented 9 years ago

Wow, finally it works now!! Adobe Flash policy & smart group created in JSS. I am not sure what happened but could the errors have been caused by the modification of the Group name 'Testing' I have been doing on the jss.recipe files? After stashing all the recipe files I modified, I then ran Update Repos and new recipe files for all apps were created (AdobeFlashURLProvider.py file is not back in the AdobeFlashPlayer folder though). Now Firefox, Chrome and Flash (yay!) recipes getting into JSS smoothly. Except that they are all getting created under the default name 'Testing' category on JSS. So am I right in understanding that if I wanted to change the Testing group/category name to something of my own, I have to create overrides for each recipes?

Plus, in the email I receive about new software available is like this:

"The following software is now available for testing: install: Version not detected install: Version not detected"

I like to change that 'install' word to 'AdobeFlashPlayer' - where do I do that?

eahrold commented 9 years ago

@mgrevtech, Hey Jason, Thanks for pointing this out, I'm getting the exact same results. Adobe is doing something real strange with it's naming of the download calling it install_all_mac_pl_sgn.z

This is what I get when I do autopkg run AdobeFlashPlayer.jss

The following new items were downloaded:
    ~/Library/AutoPkg/Cache/com.github.autopkg.jss.FlashPlayerExtractPackage/downloads/install_all_mac_pl_sgn.z

AutoPkgr really just does a best guess approach to what app is download from the above string. Most applications have sensible names like Firefox_xx.dmg and then AutoPkgr will separate the last path component by punctuation (i.e _ ) leaving "Firefox". This is the first time Flash Player has gone this route with it's naming and is probably will get resolved with future release (in the past flash player has been reported correctly).

AutoPkgr gets the app name correct most of the time, so it'll probably be hard to justify reworking this aspect unless we start seeing more unconventional naming schemes with other recipes.

Anyway glad to hear things are working now for the most part.

-Eldon.

mgrevtech commented 9 years ago

Hi eldon, Understood. Thanks for looking for into this and the background information.

So any comments/suggestions regarding the defalt Testing name for Category in JSS as mentioned above. Is it ok to give the category a custom name by modifying the jss.recipe files in RecipeRepos folder or better to create overrides? Prefer to give it a different category name. I am still not sure if this was causing the related issues.

homebysix commented 9 years ago

Hi @mgrevtech,

To change the category name, I'd strongly recommend creating/editing an override file. For example, here is my Firefox.jss.recipe override file in its entirety:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Identifier</key>
    <string>local.jss.Firefox</string>
    <key>Input</key>
    <dict>
        <key>CATEGORY</key>
        <string>Web Browsers</string>
        <key>DESCRIPTION</key>
        <string>Popular web browser from Mozilla.</string>
        <key>POLICY_CATEGORY</key>
        <string>Auto Update</string>
    </dict>
    <key>ParentRecipe</key>
    <string>com.github.autopkg.jss.Firefox_EN</string>
</dict>
</plist>

Notice the policy category is "Auto Update" and the package category is "Web Browsers." Hope that helps!

mgrevtech commented 9 years ago

Hi @homebysix I actually went ahead and did try the override earlier. Everything works fine, all policies & smart groups getting created fine in JSS. Really strange though, the errors I have been getting seem to be inconsistent. At times, autopkgr works fine when you 'Check Apps Now' without any errors. But then I keep getting the below error every once in a while.

"The following error occured: Error running recipes mount_smbfs: server connection failed: Software caused connection abort A Python exception occurred during the execution of autopkg, see the console log for more details. [ERROR] subprocess.CalledProcessError: Command '['mount', '-t', 'smbfs', '//casper;username:password@casper.localserver.com:139/CasperShare', '/Volumes/CasperShareCasperShare']' returned non-zero exit status 68"

And then surprisingly on the next auto run (4 hour schedule), no errors! without any troubleshooting. Does this have anything to do with my JSS settings on autopkgr F&I? My API password has no characters in it.

mgrevtech commented 9 years ago

And FYI, couple of other errors I have been getting below. The errors are different each time. As Elliot mentioned, I am guessing all these must be related to bad repos.

The following software is now available for testing: iMovie: 10.0.5 iPhoto: 9.5.1 The following error occured: Error running recipes

Couldn't download http://fpdownload2.macromedia.com/get/flashplayer/update/current/install/install_all_mac_pl_sgn.z:

The following error occured: Error running recipes A Python exception occurred during the execution of autopkg, see the console log for more details. [ERROR] OSError: [Errno 2] No such file or directory: '/Users/administrator/Library/AutoPkg/Cache/com.github.scriptingosx.pkg.iMovie/iMovie/Applications/iMovie.app/Contents/_MASReceipt'

eahrold commented 9 years ago

I doubt the SMB issue is your password as long as it works once. It could maybe be that the Casper Admin has the the share mounted which I think cause the JSSImporter mount to fail, or possibly the share point is never unmounted causing a similar condition.

The flash dl, may be just a normal glitch while Adobe works things out, it's not unusual that you'll get the same errors reported for a few days when companies deploy a new version differently than the last.

I'm not exactly sure what's going on with the iMovie recipe, you may want to trash /com.github.scriptingosx.pkg.iMovie in the Cache folder and try again to see if it sorts itself out.

mgrevtech commented 9 years ago

As long as the new recipes are getting pushed into JSS, I think I will be fine for now with a few errors once in a while. I will try to open up a new issue the next time I come across something completely new. Thanks a lot for you help!! much appreciated, couldn't have done it without you guys @eahrold @homebysix

Jason.

eahrold commented 9 years ago

You're welcome. Glad to help.