ó ¡ôXc@s’ddlZddlmZddlmZmZmZddlmZddl m Z ddl m Z ddl mZdefd „ƒYZdS( iÿÿÿÿN(tArg(t IAMRequestt AS_ACCOUNTt arg_group(tDeleteGroupPolicy(tGetGroup(tListGroupPolicies(tRemoveUserFromGroupt DeleteGroupc Bs˜eZdZeddƒeddddddddƒed d d d dd dddejƒeddddddddƒegZ d„Z d„Z RS(sDelete a groupthelps&name of the group to delete (required)s-rs --recursivetactiont store_truetroute_tosXremove all user memberships and policies associated with the group firsts-Rs--recursive-eucatdestt IsRecursivet store_consttconstttrues-ps --pretends{list the user memberships and policies that would be deleted instead of actually deleting them. Implies -r.c CsŸ|jds|jdrŸtj|d|jdd|jdƒ}|jƒjdgƒ}tj|d|jdd|jdƒ}|jƒjdgƒ}n g}g}|jdráig|D]}|d^qÂd6|d 6S|jdr‘g|D]}|d ^qõ}tj|d|jdd |d|jdƒ}|jƒxJ|D]?}tj|d|jdd |d|jdƒ}|jƒqKWn|j ƒSdS( Nt recursivetpretendt GroupNametDelegateAccounttUserst PolicyNamestArntmemberstpoliciestUserNamet user_namest PolicyName( targsRt from_othertparamstmaintgetRRRtsend(tselftreqRRtmembert member_namestpolicy((sF/usr/lib/python2.7/site-packages/euca2ools/commands/iam/deletegroup.pyR!2s8 !   cCsZ|jdrVdGHx|dD]}d|GHqWdGHx|dD]}d|GHq@WndS(NRtusersRs R(R(R$tresulttarnR(((sF/usr/lib/python2.7/site-packages/euca2ools/commands/iam/deletegroup.pyt print_resultTs  N( t__name__t __module__t DESCRIPTIONRRtNonetargparsetSUPPRESSRtARGSR!R,(((sF/usr/lib/python2.7/site-packages/euca2ools/commands/iam/deletegroup.pyR%s   "(R1trequestbuilderRteuca2ools.commands.iamRRRt(euca2ools.commands.iam.deletegrouppolicyRteuca2ools.commands.iam.getgroupRt(euca2ools.commands.iam.listgrouppoliciesRt*euca2ools.commands.iam.removeuserfromgroupRR(((sF/usr/lib/python2.7/site-packages/euca2ools/commands/iam/deletegroup.pyts