9. Converting older ZenPacks to ZenPack eggs

Zenoss 2.2 includes a new script called eggifyzenpack which automates much or all of the process of converting a pre-2.2 ZenPack to an egg ZenPack. The script is in $ZENHOME/bin so is usually on the zenoss user's path already. The --newid option is required and specifies the new name of the ZenPack. (See the section above on ZenPack names.) the sole positional argument to eggifyzenpack is the current name of the installed ZenPack to be converted. Zeo must be running prior to invoking the script.

eggifyzenpack --newid ZenPacks.MyCompany.MyZenPackName MyOldZenPackName

This will create a ZenPack with the name given with --newid in $ZENHOME/ZenPacks. The old ZenPack that was converted is uninstalled and removed from $ZENHOME/Products. ZenPacks converted in this way have PREV_ZENPACK_NAME in their setup.py set to the name of the old ZenPack that they replace. When a user with the old ZenPack installed installs the new egg ZenPack it will be processed as an upgrade and the older ZenPack will be removed.