B
    `                 @   s   d dl mZmZmZ eZd dlZd dlZd dlZd dl	Z	d dl
Z
d dlmZ dd Zdd Zdd	 Zd
d Zedkre	e  dS )    )absolute_importdivisionprint_functionN)open_urlc              C   s    t jdd} | jdddd | S )NzValidate role metadata)descriptionrole+z	role path)nargshelp)argparseArgumentParseradd_argument)parser r   u/home/dcms/DCMS/lib/python3.7/site-packages/ansible_collections/sensu/sensu_go/tests/sanity/validate-role-metadata.py_get_arg_parser   s    r   c          	   C   st   d}g }xf| D ]^}xX|d D ]L}t ||d |}tt| d dkr|dd|d |f qW qW |S )NzAhttps://galaxy.ansible.com/api/v1/platforms/?name={0}&release={1}versionsnameresults   ERRORzInvalid platform '{0} {1}')r   formatlenjsonloadsreadappend)	platformsurlmsgsplatformreleaserespr   r   r   _validate_role_platforms   s    

r#   c          	   C   sL   t j| dd}t|}t|d }W d Q R X g }|t|d  |S )Nmetazmain.ymlgalaxy_infor   )ospathjoinopenyamlZ	safe_loadextendr#   )Z	role_pathZ	meta_filefdr%   r   r   r   r   _validate_role%   s    
r-   c              C   sZ   t   } d}x:| jD ]0}t|}x"|D ]}|d7 }tdj|  q(W qW |dkrVdS dS )Nr   r   z{0}: {1})r   
parse_argsr   r-   printr   )argsZno_msgsr   r   msgr   r   r   main0   s    

r2   __main__)
__future__r   r   r   type__metaclass__r   r   r&   sysr*   Zansible.module_utils.urlsr   r   r#   r-   r2   __name__exitr   r   r   r   <module>   s   