o
    B_j                     @  s   d Z ddlmZ ddlZddlZddlZddlmZ ddlmZ ee	
 jd Zejdee ddlmZ ddlmZ dd	lmZ dddZedkrRee dS )z8Revoke one signed App Pack release in the control plane.    )annotationsN)datetime)Path   )select)get_control_plane_session)WordPressPackageReleasereturnintc                  C  s  t  } | d | d | jddd |  }|j }|r&t|dkr+| d t B}|	t
ttj|jktj|jk }|d u rZttdd	i 	 W d    d
S d|_t |_||_|  W d    n1 ssw   Y  ttd|j|j|d dS )N
package_idversionz--reasonT)requiredi  z2--reason must contain between 1 and 500 charactersstatus	not_foundr   revoked)r   r   r   reasonr   )argparseArgumentParseradd_argument
parse_argsr   striplenerrorr   executer   r   wherer   r   scalar_one_or_noneprintjsondumpsr   r   utcnow
revoked_atrevoked_reasoncommit)parserargsr   sessionrelease r'   (scripts/revoke_wordpress_pack_release.pymain   s:   








r)   __main__)r	   r
   )__doc__
__future__r   r   r   sysr   pathlibr   __file__resolveparentsBASE_DIRpathinsertstr
sqlalchemyr   config.control_planer   platform.tenants.modelsr   r)   __name__
SystemExitr'   r'   r'   r(   <module>   s    

