fvddlZddlmZmZddlmZmZddlmZm Z eje Z GddeZ y)N)IterableList)subputil)PackageManagerUninstalledPackagescBeZdZdZdefdZdZdedefdZ e dZ y) Snapsnapreturnc>ttjdS)Nr )boolrwhichselfs K/usr/lib/python3/dist-packages/cloudinit/distros/package_management/snap.py availablezSnap.availablesDJJv&''cy)Nrs rupdate_package_sourceszSnap.update_package_sourcess rpkglistc,tjdt|}g}|D]-} tjddg|j ddz/|S#tj $r*|j |tjd|YnwxYw)Nz%s=%sr install=zFailed to 'snap install %s'!) rexpand_package_listlistrsplitProcessExecutionErrorappendLOGinfo)rrfailedpkgs rinstall_packageszSnap.install_packagess**7DMB >C > 69- #q0AAB >  -- > c"7= >s*A:BBc2tjddgy)Nr refresh)rrrrupgrade_packageszSnap.upgrade_packages$s 69%&rN) __name__ __module__ __qualname__namerrrrrr& staticmethodr)rrrr r s@ D(4(   5H ''rr )loggingtypingrr cloudinitrr4cloudinit.distros.package_management.package_managerrr getLoggerr*r"r rrrr4s3!  g!'>'r