Commit Graph

26 Commits

Author SHA1 Message Date
Greg Neagle
d555861c4f Fixed bug in getCatalogInfoFromDmg that could lead to an unhandled exception if there are no supported installer items on a disk image.
git-svn-id: http://munki.googlecode.com/svn/trunk@520 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2010-04-08 22:30:04 +00:00
Greg Neagle
6125f77293 Changes to support installation of Adobe Acrobat Pro 9 updates.
git-svn-id: http://munki.googlecode.com/svn/trunk@415 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-12-24 20:27:33 +00:00
Greg Neagle
68ab8e5c61 Added error message when we can't mount a disk image.
git-svn-id: http://munki.googlecode.com/svn/trunk@412 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-12-19 05:11:31 +00:00
Greg Neagle
d355c27e9f Using munkicommon.getVersionString() instead of directly reading CFBundleShortVersionString to work around edge cases consistently.
Tweaks in finding apps for appdmg

git-svn-id: http://munki.googlecode.com/svn/trunk@406 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-12-16 17:50:30 +00:00
Greg Neagle
d561d24f75 Fixed issue with makepkginfo when generating "installs" items with no path to an installer item
git-svn-id: http://munki.googlecode.com/svn/trunk@390 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-12-03 00:03:38 +00:00
Greg Neagle
1d31cb6267 Added support for a new "autoremove" key in package info. Packages with autoremove set to True will be automatically removed if they are not in the managed_installs list of the primary manifest or any included manifest.
git-svn-id: http://munki.googlecode.com/svn/trunk@381 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-11-24 21:14:53 +00:00
Greg Neagle
c51bff7647 Fix when looking for install item in mounted disk image.
git-svn-id: http://munki.googlecode.com/svn/trunk@376 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-11-19 03:27:19 +00:00
Greg Neagle
9322485665 Added support for a 'package_path' key in pkg info to indicate a specific package on a disk image containing multiple packages, or where the package to be installed is not at the root of the disk image.
For Adobe packages, 'package_path' now replaces 'adobe_package_name' with the same functionality.

git-svn-id: http://munki.googlecode.com/svn/trunk@368 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-11-18 17:46:56 +00:00
Greg Neagle
827c4b5264 Cleaned up exception handling
git-svn-id: http://munki.googlecode.com/svn/trunk@356 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-11-18 04:39:24 +00:00
Greg Neagle
5ea46d211b PEP-8 line length cleanup
git-svn-id: http://munki.googlecode.com/svn/trunk@355 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-11-18 04:15:59 +00:00
Greg Neagle
425e9c6591 makepkginfo can now create pkginfo for Adobe CS3 installers; better metadata for CS4 installers as well.
git-svn-id: http://munki.googlecode.com/svn/trunk@329 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-11-16 19:56:51 +00:00
Greg Neagle
fce4f6fab2 Added a check for diskimages with Software License Agreements. These cannot be automatically mounted by hdiutil, so they are useless to munki.
git-svn-id: http://munki.googlecode.com/svn/trunk@295 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-10-23 22:58:56 +00:00
Greg Neagle
660a8a8e98 Added support for "appdmg" package type. This is a dmg that contains a single application at the root of the mounted dmg, which is then copied to /Applications (for install) or simply rm -rf /Applications/appname (for removal).
makepkginfo generates pkginfo files for this package type, and updatecheck.py and installer.py have the appropriate additions.

git-svn-id: http://munki.googlecode.com/svn/trunk@279 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-10-22 21:42:57 +00:00
Greg Neagle
c88108f207 Merged makeadobepkginfo and makepkginfo.
git-svn-id: http://munki.googlecode.com/svn/trunk@275 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-10-21 18:55:21 +00:00
Greg Neagle
f8b28a05fb makepkginfo can now be called with only -f arguments, and no actual install item. This generates a list of filesystem items which can by manually added to the 'installs' key of a pkginfo item.
git-svn-id: http://munki.googlecode.com/svn/trunk@266 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-10-20 23:37:46 +00:00
Greg Neagle
4872ce7776 Removed commented out lines as part of a general cleanup.
git-svn-id: http://munki.googlecode.com/svn/trunk@214 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-09-17 00:01:37 +00:00
Greg Neagle
75a1f96f9f Changed from #!/usr/bin/env python to #!/usr/bin/python because we need to use Apple's installed Python, and not whatever python the user happens to be using...
Added support for CFBundleVersion when CFBundleShortVersionString is missing.

git-svn-id: http://munki.googlecode.com/svn/trunk@209 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-09-14 16:51:32 +00:00
Greg Neagle
445962ec20 Updated makepkginfo to use munkilib/FoundationPlist.py instead of plistlib.
git-svn-id: http://munki.googlecode.com/svn/trunk@174 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-08-20 17:56:12 +00:00
Greg Neagle
423c31340d Lots of replacing of plistlib.readPlist() with munikcommon.readPlist() so we can handle binary plists.
More fixes for JAMF Composer-generated packages.

git-svn-id: http://munki.googlecode.com/svn/trunk@150 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-07-31 16:34:02 +00:00
Greg Neagle
dc30a741f8 Print error message if no valid installer item is found on a disk image, and if we can't extract info from .pkg or .mpkg items. Fix for http://code.google.com/p/munki/issues/detail?id=1
git-svn-id: http://munki.googlecode.com/svn/trunk@146 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-07-31 14:34:25 +00:00
Greg Neagle
07cfc5235c Moved all support libraries into munkilib package.
Combined installcheck and managedinstaller into managedsoftwareupdate to avoid race conditions between the two tools.
Removed support for Apple Software Updates (because it didn't work correctly!)


git-svn-id: http://munki.googlecode.com/svn/trunk@112 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-07-14 18:04:34 +00:00
Greg Neagle
07fc86c9d7 munkilib.py:
- changes to pythonScriptRunning() to allow the tools to detect if another instance of themselves is running
- updated getBundlePackageInfo() to handle pre-dist style .mpkgs

removepackages.py:
- changes to handle multiple receipts with the same packageid

installcheck:
- removed random sleep option - this will move to another tool so we don't have installcheck itself sleeping; this prevented the other tools from running if you happened to, say, call managedinstaller while installcheck was sleeping.
- installcheck checks to see if another instance of itself is running and exits if so
- suppress errors when getting the primary manifest and trying long hostname, then short hostname, then "site_default".

makecatalogs:
- don't try to process ._ files or .DS_Store files.

makepkginfo:
- try to generate a better installer_item_location if the path has "/pkgs" in it




git-svn-id: http://munki.googlecode.com/svn/trunk@110 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-07-09 06:13:01 +00:00
Greg Neagle
c435d139ba munkilib.py:
Workaround for broken ScriptingBridge to SystemConfiguration in an unreleased OS version.
removepackages.py: 
for an unreleased OS version, no longer manipulate the Apple receipts DB using sqlite3, but instead just use pkgutil (and other related changes)
munkistatus.py: 
munkistatus.message() now clears the detail field.
managedinstaller: 
removed explicit clearing of munkistatus detail
makecatalogs: 
more progress and error reporting when building catalogs
makepkginfo: 
add default catalogs, uninstallable, and uninstall_method info to dictionary



git-svn-id: http://munki.googlecode.com/svn/trunk@104 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-06-24 04:58:17 +00:00
Greg Neagle
82ad48c60e Added support for installcheck and managedinstaller to handle Apple Software Updates.
Moved some functions from makepkginfo to munkilib so installcheck could use them.
Added checking to installcheck, managedinstaller, and removepackages.py so they warn and exit if run by a non-root user.
Added checks to installcheck and mamangedinstaller so that they exit if the other is running.


git-svn-id: http://munki.googlecode.com/svn/trunk@87 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-05-22 19:05:57 +00:00
Greg Neagle
9ab12d5a8f Renamed managedinstalls.py to munkilib.py.
Removed cfconsoleuser.py. Its function was added to munkilib.py.
Renamed ManagedInstaller to managedinstaller.py. Next commit it will be renamed to managedinstaller.
Renamed removepackages to removepackages.py
Refactored removepackages.py so it can be called as a Python module as well as a command-line tool.
managedinstaller.py now calls removepackages.py as a module instead of as a subprocess.
Cleaned up globals in installcheck, managedinstaller, and removepackages.
Removed bad copyright info from makcatalogs.


git-svn-id: http://munki.googlecode.com/svn/trunk@74 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-05-20 16:34:17 +00:00
Greg Neagle
59f69cf162 Major rewrite and refactoring of the core tools.
installcheck replaces catalogcheck.py.  installcheck supports the new catalog format and the new dependencies.  Cleaned up output and logging.
ManagedInstaller and removepackages tweaked for better logging and MunkiStatus output.
Removed the logout hook examples (for now)
makecatalogitem is now makepkginfo
New makecatalogs tool.

git-svn-id: http://munki.googlecode.com/svn/trunk@50 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-05-11 18:03:40 +00:00