Commit Graph

784 Commits

Author SHA1 Message Date
Greg Neagle cab84a49d2 Check SuppressAutoInstall value before attempting unattended installs 2011-09-19 10:13:44 -07:00
Justin McWilliams 72dfa5bce0 s/Content-Type/Content-Length/ 2011-09-19 10:11:56 -04:00
Greg Neagle fd1622edfa Don't kill loginwindow if we're doing checkandinstallatstartup and a restart is not required; launchd will restart us. 2011-09-16 17:05:59 -07:00
Justin McWilliams 56216d1db3 Don't sleep for .1 seconds in between reading HTTP header lines. 2011-09-16 18:02:21 -04:00
Justin McWilliams 79cec41552 Fix CPU owning for curl downloads while on slow internet connections when Content-Length header is not present.
App Engine Blobstore does not send Content-Type, which means targetsize is always 0 and therefore the conditional that calculates and reports download progress is never entered, and the existing sleep location is never hit. On slow internet connections, this means that CPU spikes as proc.poll() is being called far more than curl is downloading.

Fix this by moving time.sleep(0.1) into the main curl while loop, where it'll execute on every loop iteration. That means we have a small sleep even while headers are downloading/etc, but that's not a big deal given it's a 1/10th of a second.
2011-09-15 18:39:49 -04:00
Rob Middleton a572573fbb Reset report data structure before any calls that add warnings/errors. 2011-09-15 18:27:10 +10:00
Rob Middleton b22e9de11a Back out another dual trigger file - in logouthelper 2011-09-15 18:12:22 +10:00
Greg Neagle 833d509c94 Fix - send update notification to MSU.app after an unattended install; fix method signature for utils.runExternalScript 2011-09-14 16:43:50 -07:00
Greg Neagle 2acd81991b Merge branch 'status-launch-and-cache-on-checksum' of https://code.google.com/p/munki into status-launch-and-cache-on-checksum 2011-09-14 15:36:17 -07:00
Greg Neagle 239663353f Fix issues in munki.py when writing trigger files; edits to launchdaemons so managedsoftwareupdate-loginwindow runs only when a trigger file is present 2011-09-14 15:31:42 -07:00
Rob Middleton 570c0f7ad4 Allow preflight/postflight to run so long as the permissions are not weaker than managedsoftwareupdate. 2011-09-14 21:31:31 +10:00
Greg Neagle 25a9315cba mount_nfs fix for munkiimport and manifestutil 2011-09-13 15:14:32 -07:00
Rob Middleton 57b543de88 use getxattr function in all relevant places 2011-09-08 07:22:30 +10:00
Rob Middleton c903723dbd add brief logging + squash a wrong name 2011-09-07 23:18:52 +10:00
Rob Middleton ed27d180ed Do not redownload or check payload files with web server if hash of cached file matches hash in catalog. 2011-09-07 22:49:00 +10:00
Rob Middleton cb5e0076d0 Speed launch of MSU.app status mode to cover the login window following logout install actions. 2011-09-07 21:23:48 +10:00
Lars Fronius e45f31fe07 Why shouldn't manifestutil and munkiimport use nfs, and why shouldn't it be the same function for both? 2011-09-05 15:08:26 +02:00
Greg Neagle d821429830 Change sample munki repo URLs to use example.com in keeping with RFC 2606: http://tools.ietf.org/html/rfc2606 2011-08-26 17:12:14 -07:00
Greg Neagle 957998c87d Fixed (again) appleupdates.GetSoftwareUpdatePref method to respect MCX 2011-08-26 12:29:49 -07:00
Greg Neagle 54ed666e23 Stash build number and git revision in munkilib/version.plist; update munkicommon.get_version() to read build number from munkilib/version.plist 2011-08-24 10:30:24 -07:00
Justin McWilliams 2fdd6fdcfb Merging (well, moving) refactored appleupdates module, unit tests, and runtests.sh to master branch. 2011-08-24 12:42:19 -04:00
Greg Neagle 91be98ae2d Fix so reading com.apple.SoftwareUpdate prefs respects MCX 2011-08-23 11:25:18 -07:00
Justin McWilliams 9d470035c2 Bug fix for appleupdates.AvailableUpdatesAreDownloaded() where productKey is not in downloaded dict. 2011-08-17 08:32:29 -04:00
Greg Neagle 98ac900592 Update discardTimeZoneFromDate() function in updatecheck.py to match that in MSU.app's munki.py. Fixes issue with Lion caused by differing string representations of NSDates between Lion and Snow Leopard.
git-svn-id: http://munki.googlecode.com/svn/trunk@1294 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-16 02:11:15 +00:00
John Randolph 0dfd915f55 change this module to use munkicommon.getOsVersion() instead of os.uname()
splitting.

(also, our whitespace filter whacked many other lines)



git-svn-id: http://munki.googlecode.com/svn/trunk@1290 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-11 21:29:21 +00:00
Justin McWilliams a9ef0a7034 tuple() wrap getOsVersion() map return, ensuring the return is a tuple not a list.
git-svn-id: http://munki.googlecode.com/svn/trunk@1289 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-11 21:06:42 +00:00
Justin McWilliams 8cd8e31a97 MACHINE['os_vers'] needs to be the full version, not just major/minor.
git-svn-id: http://munki.googlecode.com/svn/trunk@1288 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-11 19:35:20 +00:00
Justin McWilliams e3b3034c0e Use the new munkicommon.getOsVersion() across the board, especially one place that was previously shelling out to /usr/bin/sw_vers.
git-svn-id: http://munki.googlecode.com/svn/trunk@1287 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-11 19:31:51 +00:00
Justin McWilliams 4543948aad Cleanup appleupdates style, move default catalog urls to constant dict, make new getOsVersion() method instead of parsing uname, etc.
git-svn-id: http://munki.googlecode.com/svn/trunk@1286 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-11 18:41:48 +00:00
Greg Neagle e6106f0345 Change run_softwareupdate to use ptyexec tool if available.
git-svn-id: http://munki.googlecode.com/svn/trunk@1285 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-11 16:58:10 +00:00
John Randolph 5590168d49 add ptyexec helper script to run subprocesses in pseudo ttys and unbuffer
their I/O.



git-svn-id: http://munki.googlecode.com/svn/trunk@1284 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-11 16:22:31 +00:00
Greg Neagle 843212a881 Updated comments for TODOs.
git-svn-id: http://munki.googlecode.com/svn/trunk@1283 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-10 22:03:45 +00:00
Justin McWilliams cb85f5beb1 Move scattered Apple Software Update catalog name and path strings to constants, with comments describing each of them (some with TODOs to add comments).
git-svn-id: http://munki.googlecode.com/svn/trunk@1282 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-10 21:41:34 +00:00
Greg Neagle be33a193e1 Change output of etag and range request warnings when downloading via HTTP so that these are not formal warnings, but rather informational-level messages that are logged and printed to stdout when run via the command line.
git-svn-id: http://munki.googlecode.com/svn/trunk@1281 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-10 16:37:54 +00:00
Justin McWilliams 567af9fc2e r1277 added a 'time' key to the ManagedInstallReport:InstallResults dicts, which was an epoc timestamp. 'time' is now a [date] value, filled using NSDate.new().
git-svn-id: http://munki.googlecode.com/svn/trunk@1279 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-08 17:41:09 +00:00
Justin McWilliams 8294821bc7 ManagedInstallReport:InstallResults dicts now has a 'time' key which is the epoc time when the install took place. This is helpful when reporting may be delayed to future executions of Munki.
git-svn-id: http://munki.googlecode.com/svn/trunk@1277 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-08 16:18:12 +00:00
Justin McWilliams c6008abbc0 Apple Software Update fixes for environments where CatalogURL is already a file:// URL, not a http:// URL.
- s/getHTTPfileIfChangedAtomically/getResourceIfChangedAtomically/
- getFileIfChangedAtomically should urllib2.unquote paths, in case they came from the file:// URL.


git-svn-id: http://munki.googlecode.com/svn/trunk@1273 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-05 16:36:47 +00:00
Justin McWilliams d03b2ba11f Merging forced_install_after_date branch to trunk.
This adds Force Install Notifications support to the MSU GUI, and logouthelper support to managedsoftwareupdate/launchd. Documentation on using the pkginfo force_install_after_date key to come....

This merge also includes localization fixes and on-the-fly updating of the MSU GUI when managedsoftwareupdate runs in the background while the GUI is open, changing InstallInfo.

With this merge, the Munki version is increased to 0.8.0 and MSU GUI version to 3.2.


git-svn-id: http://munki.googlecode.com/svn/trunk@1270 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-04 19:23:19 +00:00
Justin McWilliams 0e858b098a Munki should output and log preflight output, both stdout and stderr, and should output and log postflight return codes if != 0 (even though it doesn't perform any different actions).
git-svn-id: http://munki.googlecode.com/svn/trunk@1269 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-04 18:35:36 +00:00
Greg Neagle e0d43c410e Fix for updatecheck logic when multiple items to be installed require the same non-existent package.
git-svn-id: http://munki.googlecode.com/svn/trunk@1267 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-03 20:24:42 +00:00
Greg Neagle 1b91dfd626 - Refinement of fix for ValueError: NSInvalidArgumentException - -[__NSTaggedDate UTF8String] error on Lion when managedsoftwareupdate attempts to notify the user of available updates.
- pylint cleanups.

git-svn-id: http://munki.googlecode.com/svn/trunk@1265 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-02 21:11:50 +00:00
Greg Neagle beb2ace07c Fix for ValueError: NSInvalidArgumentException - -[__NSTaggedDate UTF8String] error on Lion when managedsoftwareupdate attempts to notify the user of available updates.
git-svn-id: http://munki.googlecode.com/svn/trunk@1261 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-02 17:58:42 +00:00
Greg Neagle 93b350e7cb Merge changes from apple_update branch to trunk.
git-svn-id: http://munki.googlecode.com/svn/trunk@1259 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-08-02 15:09:11 +00:00
Greg Neagle ea0a373e72 Changed version.plist to 0.7.2 for Lion update and iTunes 10.4 fix.
git-svn-id: http://munki.googlecode.com/svn/trunk@1243 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-07-20 22:16:21 +00:00
Greg Neagle 259efe634f Fix for <None> nodeValues in distribution files -- affects Apple Software Updates. Problem first encountered in iTunes 10.4 update.
git-svn-id: http://munki.googlecode.com/svn/trunk@1242 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-07-20 22:03:25 +00:00
Greg Neagle f1a6760616 Fix for empty managed_installs or removals when printing available updates.
git-svn-id: http://munki.googlecode.com/svn/trunk@1240 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-07-20 04:18:02 +00:00
Greg Neagle 1962307e3a When looking for installed applications, if the Info.plst contains a CFBundleIdentifier, never fall back to comparing by CFBundleName.
Remove .encode('UTF-8') for items being sent to munkicommon.display_debug2, since that function does an .encode('UTF-8') as well.

git-svn-id: http://munki.googlecode.com/svn/trunk@1233 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-07-13 03:38:48 +00:00
John Randolph c0ef9f25d0 add new key minimum_update_version to installs items.
this key describes the minimum version # which will be targetted 
for update when Munki is discovering installed versions.

real world example:
  set minimum_update_version=4.0 on Firefox4, Firefox3.x will not be touched.



git-svn-id: http://munki.googlecode.com/svn/trunk@1225 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-06-22 19:52:09 +00:00
John Randolph 6a324e25e7 supply missing module import
git-svn-id: http://munki.googlecode.com/svn/trunk@1218 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-06-20 20:21:12 +00:00
Greg Neagle 1d8a66b0a5 Attempt at fix for Software Update.app launching at loginwindow under Leopard when munki checks for Apple Software Updates at loginwindow. Symptom was Software Update menu bar appearing at loginwindow.
git-svn-id: http://munki.googlecode.com/svn/trunk@1214 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2011-06-10 17:36:00 +00:00