Commit Graph

501 Commits

Author SHA1 Message Date
Greg Neagle
681acae624 Add MCX support, based on code contribution from Dan Roque.
Other minor clean-ups.

git-svn-id: http://munki.googlecode.com/svn/trunk@973 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-12-13 20:11:22 +00:00
Rob Middleton
f87284d4d4 Remove tmpdir at expected exits of managedsoftwareupdate. tmpdir is created by global line in munkicommon: "tmpdir = tempfile.mkdtemp()". More fiddly to make the change so tmpdir only created where there is demand for it.
git-svn-id: http://munki.googlecode.com/svn/trunk@972 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-12-12 09:11:22 +00:00
Rob Middleton
e2ef24363d itemindex needs to always be in sync with the for installlist loop to allow foundagain / deletion logic to work in forced installs
git-svn-id: http://munki.googlecode.com/svn/trunk@971 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-12-12 01:20:57 +00:00
Justin McWilliams
edd0eee5dd munkicommon:
Replace getAvailableDiskSpace() method shelling out to diskutil with more reliable and faster Python os.statvfs() call. Credit John Randolph.


git-svn-id: http://munki.googlecode.com/svn/trunk@969 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-12-10 16:44:14 +00:00
Greg Neagle
a0820fe027 Added more logging/debug logging to experimental "softwareupdatename" support for pkginfo.
git-svn-id: http://munki.googlecode.com/svn/trunk@967 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-12-10 00:10:10 +00:00
Greg Neagle
26bc156996 Exit if makepkginfo returns empty pkginfo.
git-svn-id: http://munki.googlecode.com/svn/trunk@952 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-12-08 18:47:45 +00:00
Greg Neagle
4142e8fab8 Fix for updatecheck.getAutoRemovalItems() to properly exclude items in a managed_installs list that are specified with version as well as name.
git-svn-id: http://munki.googlecode.com/svn/trunk@951 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-12-06 18:46:46 +00:00
Greg Neagle
344baea859 Fix logic when checking to see if an item in a managed_uninstalls list has already been processed as a managed_install.
git-svn-id: http://munki.googlecode.com/svn/trunk@950 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-12-06 18:41:14 +00:00
Greg Neagle
503cdf7ec5 Added support for 'softwareupdatename' in pkginfo
git-svn-id: http://munki.googlecode.com/svn/trunk@949 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-12-03 22:19:05 +00:00
Greg Neagle
50fbf2d2e8 Change how we track what we've processed so items that are in both managed_updates and optional_installs are not listed twice when there is an update available. Addresses munki issue 51.
git-svn-id: http://munki.googlecode.com/svn/trunk@948 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-12-02 22:39:25 +00:00
Greg Neagle
35d8757faf munkiimport now searches the repo for pkg/installer_items that match the one currently being imported to allow you to make a new version of a package consistent with a previous version.
git-svn-id: http://munki.googlecode.com/svn/trunk@947 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-12-01 21:04:28 +00:00
John Randolph
5c4e7ca51b tweaks to handle objc.pyobc_unicode (NSString) correctly
git-svn-id: http://munki.googlecode.com/svn/trunk@946 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-12-01 20:33:15 +00:00
John Randolph
3d8d960bb1 simplify listdir() function to use Python's os.listdir() with unicode
path behavior to do the work for us



git-svn-id: http://munki.googlecode.com/svn/trunk@945 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-12-01 16:20:06 +00:00
Rob Middleton
098d450c67 fix to r912: installer.installWithInfo got an extra return parameter. The call to it from within appleupdates.installAppleUpdates needed changing to be consistent. Without that change restartneeded was being read as true in all cases.
git-svn-id: http://munki.googlecode.com/svn/trunk@944 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-12-01 04:48:08 +00:00
Justin McWilliams
46bbc2d596 Encode ClientIdentifier in UTF-8 before attempting to urllib2.quote() it, to support unicode characters in client id.
git-svn-id: http://munki.googlecode.com/svn/trunk@942 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-30 18:22:10 +00:00
John Randolph
ffe6722d87 wrap os.listdir() to decode utf-8 unicode into unicode objects
change all code locations using os.listdir() to use munkicommon.listdir()



git-svn-id: http://munki.googlecode.com/svn/trunk@941 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-30 16:28:45 +00:00
Greg Neagle
7ab92fa3cc Changes to simplify processing logic and allow items that are in both managed_updates and optional_installs to be removed by the user.
git-svn-id: http://munki.googlecode.com/svn/trunk@933 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-29 21:33:03 +00:00
Greg Neagle
1136569854 Simplify the logic in appleSoftwareUpdatesAvailable() when suppresscheck is True.
git-svn-id: http://munki.googlecode.com/svn/trunk@932 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-29 18:23:35 +00:00
Rob Middleton
6ee6a33e96 pylint: bug in munkicommon.format_time, indentation fixes
git-svn-id: http://munki.googlecode.com/svn/trunk@931 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-27 10:10:27 +00:00
Rob Middleton
e55faec0aa fix to r924: on suppresscheck still need to consider whether cached apple updates are available.
git-svn-id: http://munki.googlecode.com/svn/trunk@930 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-27 05:54:57 +00:00
Rob Middleton
1ff5d190fa applesoftwareupdatesonly is not global / not in this scope
git-svn-id: http://munki.googlecode.com/svn/trunk@929 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-26 08:52:00 +00:00
Rob Middleton
32b7e37066 Fix to functionality added in r818. On GUI auto run, do forced installs, then prompt user if either munki updates still availalbe, or any apple updates available.
git-svn-id: http://munki.googlecode.com/svn/trunk@928 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-25 02:03:29 +00:00
Greg Neagle
ece16bfac6 Make sure uninstall script is removed regardless of success or failure.
git-svn-id: http://munki.googlecode.com/svn/trunk@927 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-23 19:21:11 +00:00
Greg Neagle
337bb70150 More changes to Apple Software Update logic: if /Library/Updates/index.plist exists, we check values from /Library/Preferences/com.apple.SoftwareUpdate.plist -- LastResultCode and LastSuccessfulDate --to attempt to determine if index.plist is still valid, or if it may be stale.
git-svn-id: http://munki.googlecode.com/svn/trunk@926 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-23 18:38:33 +00:00
Greg Neagle
f790b71aea Add support for uninstall scripts embedded into pkginfo.
git-svn-id: http://munki.googlecode.com/svn/trunk@925 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-22 20:00:15 +00:00
Greg Neagle
a77c1329fb Simplified check for available Apple Software Updates to avoid presenting stale info to user.
git-svn-id: http://munki.googlecode.com/svn/trunk@924 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-22 18:13:04 +00:00
Greg Neagle
f575542905 Make sure we return false if user clicks the stop button while building the package database under Snow Leopard
git-svn-id: http://munki.googlecode.com/svn/trunk@923 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-21 00:32:12 +00:00
Greg Neagle
5be8b5ed84 If running a preflight script, call munkicommon.display_status so we tickle the munkistatus socket before it times out.
git-svn-id: http://munki.googlecode.com/svn/trunk@922 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-18 22:25:00 +00:00
Justin McWilliams
e190a2e9d5 Make all munkicommon.display_* methods accept a message and optional arguments
to concatenate to the message (using Python concat ala logging.* methods); drop unicode chars.

Fix problem (line 338 of updatecheck.py) where attempting to string-concat
unicode characters before sending to munkicommon.display_debug1() causes
UnicodeDecodeError.



git-svn-id: http://munki.googlecode.com/svn/trunk@921 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-18 21:03:01 +00:00
Greg Neagle
01bbf73ef2 Typo fix in updatecheck.py;
munkicommon - in display_warning and display_error, make sure it is a string that is appended to report['Warnings'] or report['Errors']

git-svn-id: http://munki.googlecode.com/svn/trunk@919 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-18 16:38:44 +00:00
Greg Neagle
3a18a9fd9e installer.py: account for case where no valid installer item is found on a disk image
updatecheck.py: provide more feedback when pkg items are rejected due to incompatible os or architecture.

git-svn-id: http://munki.googlecode.com/svn/trunk@918 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-17 21:57:21 +00:00
Greg Neagle
a7cc6e5457 Alter debug output when comparing OS version and architecture.
git-svn-id: http://munki.googlecode.com/svn/trunk@915 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-15 18:40:16 +00:00
Greg Neagle
149715226a installs/removals that are skipped during forced_* operations are rewritten to InstallInfo.plist so they can be done with user approval. installer items in /Library/Managed Installs/Cache/ are not removed if needed by skipped installs.
git-svn-id: http://munki.googlecode.com/svn/trunk@912 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-12 19:20:04 +00:00
MagerValp
33ffe3bffb Handle installer -query failing when makepkginfo analyzes a pkg on a network volume. Assumes that the charset is UTF-8, which probably needs to be fixed.
git-svn-id: http://munki.googlecode.com/svn/trunk@911 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-12 15:05:34 +00:00
Greg Neagle
e4bc10aedd Managed Software Update.app now warns if any blocking apps are running if the user chooses to update without logging out.
git-svn-id: http://munki.googlecode.com/svn/trunk@910 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-12 00:35:46 +00:00
Greg Neagle
74f5ce6d50 installer.py: consider list of installs for blocking applications only if no 'blocking_applications' key in pkginfo.
git-svn-id: http://munki.googlecode.com/svn/trunk@909 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-11 23:27:13 +00:00
Greg Neagle
cb4cff3c1e Fix for edge case where item is in SelfServeManifest to be installed, but in another manifest for removal. Previously, item would be uninstalled, then reinstalled, then uninstalled... Now it's uninstalled and the entry in SelfServeManifest is ignored.
git-svn-id: http://munki.googlecode.com/svn/trunk@908 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-11 22:24:39 +00:00
Greg Neagle
9f3f02d879 Faster, simpler method of determining if an app is running for use with blocking_applications; this also finds running Carbon/CFMApp applications...
git-svn-id: http://munki.googlecode.com/svn/trunk@907 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-11 00:38:40 +00:00
John Randolph
44d2ab28ab fix typo in MSUAppDelegate
prevent curl from using non-authenticated anon DH cipher types, 
  e.g. TLS_DH_anon_WITH_AES_256_CBC_SHA

(seems that curl --ciphers HIGH selects high # bit ciphers, but
not necessarily only secure ones)



git-svn-id: http://munki.googlecode.com/svn/trunk@899 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-10 19:27:54 +00:00
Greg Neagle
87036833e1 Added support for blocking_applications that cause a forced_install or forced_uninstall to be skipped if any application in the list is running.
git-svn-id: http://munki.googlecode.com/svn/trunk@898 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-10 01:00:44 +00:00
Greg Neagle
849c79d041 Print better error messages when repo path is missing expected directories.
git-svn-id: http://munki.googlecode.com/svn/trunk@894 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-08 17:39:28 +00:00
Greg Neagle
486af91aa5 Use cp -pR when copying from a disk image to preserve creation and modification times, etc. If user, group or mode are not specified, default to "root", "admin", and "o-w" respectively.
git-svn-id: http://munki.googlecode.com/svn/trunk@893 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-08 17:36:54 +00:00
Greg Neagle
6334f35c6f Revert to Python pre-2.6 try/except format, since the new 2.6+ format breaks under Leopard, which uses Python 2.5.x by default.
git-svn-id: http://munki.googlecode.com/svn/trunk@892 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-06 19:28:47 +00:00
Greg Neagle
fbeaadbe48 Change shebang to use installed Python, not environment's Python.
git-svn-id: http://munki.googlecode.com/svn/trunk@887 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-03 00:03:04 +00:00
John Randolph
f4dc95a10d Add --ciphers HIGH to limit curl ssl ciphers usage
as discussed previously in 
http://code.google.com/p/munki/issues/detail?id=40



git-svn-id: http://munki.googlecode.com/svn/trunk@886 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-11-02 21:33:40 +00:00
Greg Neagle
595cc334cd Fix for unicode characters in pkg name or description
git-svn-id: http://munki.googlecode.com/svn/trunk@885 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-10-29 21:17:48 +00:00
Greg Neagle
3db9b52cda Minor docstring and output tweaks.
git-svn-id: http://munki.googlecode.com/svn/trunk@882 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-10-28 18:59:57 +00:00
Greg Neagle
6045ae8516 munkiimport now optionally runs makecatalogs after importing an installer item
git-svn-id: http://munki.googlecode.com/svn/trunk@879 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-10-27 23:57:09 +00:00
Greg Neagle
4c4f34d064 makePkgInfo() now uses the makepkginfo in the same directory as munkiimport if it exists.
git-svn-id: http://munki.googlecode.com/svn/trunk@878 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-10-27 22:05:58 +00:00
Greg Neagle
0ed9cb744d Better handle the case where the install item path is in repo/pkgs/.
git-svn-id: http://munki.googlecode.com/svn/trunk@877 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-10-27 21:58:08 +00:00