509318396
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
3
\¼me•  ã               @   s\   d dl Z d dlZd dlZd dlmZmZmZ G dd„ dejƒZeej	ej
ffgZdd„ ZdS )é    N)ÚsourcesÚ
url_helperÚutilc                   sF   e Zd ZdZ‡ fdd„Zdedœdd„Zedœdd	„Zd
d„ Z	‡  Z
S )ÚDataSourceBigstepZBigstepc                s&   t ƒ j|||ƒ i | _d| _d| _d S )NÚ )ÚsuperÚ__init__ÚmetadataÚvendordata_rawÚuserdata_raw)ÚselfZsys_cfgZdistroÚpaths)Ú	__class__© ú'/usr/lib/python3.6/DataSourceBigstep.pyr      s    zDataSourceBigstep.__init__F)Úreturnc             C   sP   | j ƒ }|d krdS tj|ƒ}tj|jjƒ ƒ}|d | _|d | _|d | _	dS )NFr	   r
   r   T)
Ú_get_url_from_filer   ZreadurlÚjsonÚloadsÚcontentsÚdecoder	   r
   r   )r   Zapply_filterÚurlZresponseZdecodedr   r   r   Ú	_get_data   s    



zDataSourceBigstep._get_datac             C   s   d| j ƒ › d�S )z/Return the subplatform metadata source details.z
metadata (ú))r   )r   r   r   r   Ú_get_subplatform#   s    z"DataSourceBigstep._get_subplatformc             C   s`   t jj| jjddddƒ}ytj|ƒ}W n4 tk
rZ } z|jtj	krHd S ‚ W Y d d }~X nX |S )NÚdataZseedZbigstepr   )
ÚosÚpathÚjoinr   Z	cloud_dirr   Z	load_fileÚIOErrorÚerrnoÚENOENT)r   Zurl_fileZcontentÚer   r   r   r   '   s    z$DataSourceBigstep._get_url_from_file)F)Ú__name__Ú
__module__Ú__qualname__Zdsnamer   Úboolr   Ústrr   r   Ú__classcell__r   r   )r   r   r      s
   r   c             C   s   t j| tƒS )N)r   Zlist_from_dependsÚdatasources)Zdependsr   r   r   Úget_datasource_list?   s    r*   )r    r   r   Z	cloudinitr   r   r   Z
DataSourcer   ZDEP_FILESYSTEMZDEP_NETWORKr)   r*   r   r   r   r   Ú<module>   s   ,