
    }f                         d dl Z d dlZd dlZd dlmZmZmZ  G d dej                        Zeej                  ej                  ffgZd Zy)    N)sources
url_helperutilc                   B     e Zd ZdZ fdZddefdZdefdZd Z	 xZ
S )DataSourceBigstepBigstepc                 R    t         |   |||       i | _        d| _        d| _        y )N )super__init__metadatavendordata_rawuserdata_raw)selfsys_cfgdistropaths	__class__s       E/usr/lib/python3/dist-packages/cloudinit/sources/DataSourceBigstep.pyr   zDataSourceBigstep.__init__   s+    &%0     returnc                     | j                         }|yt        j                  |      }t        j                  |j
                  j                               }|d   | _        |d   | _        |d   | _	        y)NFr   r   r   T)
_get_url_from_filer   readurljsonloadscontentsdecoder   r   r   )r   apply_filterurlresponsedecodeds        r   	_get_datazDataSourceBigstep._get_data   so    %%';%%c***X..5578
+%&67#N3r   c                 *    d| j                          dS )z/Return the subplatform metadata source details.z
metadata ())r   )r   s    r   _get_subplatformz"DataSourceBigstep._get_subplatform#   s    D3356a88r   c                    t         j                  j                  | j                  j                  dddd      }	 t        j                  |      }|S # t        $ r(}|j                  t        j                  k(  rY d }~y  d }~ww xY w)Ndataseedbigstepr    )
ospathjoinr   	cloud_dirr   load_text_fileIOErrorerrnoENOENT)r   url_filecontentes       r   r   z$DataSourceBigstep._get_url_from_file'   so    77<<JJ  &&)U
		))(3G   	 ww%,,&	s   A 	BA<;A<<B)F)__name__
__module____qualname__dsnamer   boolr#   strr&   r   __classcell__)r   s   @r   r   r      s*    F	t 	9# 9r   r   c                 6    t        j                  | t              S )N)r   list_from_dependsdatasources)dependss    r   get_datasource_listrA   ?   s    $$Wk::r   )r1   r   r+   	cloudinitr   r   r   
DataSourcer   DEP_FILESYSTEMDEP_NETWORKr?   rA    r   r   <module>rG      sP      	 / /'** 'X //1D1DEF;r   