
    cf
                     ~    d dl Z d dlZd dlZd dlZd dlZ	 d dlZe j                  d        Z	d Z
y# e$ r d dlZY !w xY w)    Nc              #     K   t         j                  dk\  rt        j                         }nt        j                         }|j                  |        | t        | d      5 }|j                  |       d d d        y # 1 sw Y   y xY ww)N)      w)sysversion_infoconfigparserConfigParserSafeConfigParserreadopenwrite)filenamecfgfps      0/usr/lib/python3/dist-packages/pbr/tests/util.pyopen_configr   5   sl     
6!'')++-HHX
I	h	 		"  s   AB A;2	B;B Bc                 6    d }t        j                  | |      S )zkshutil.rmtree() with error handler.

    Handle 'access denied' from trying to delete read-only files.
    c                     t        j                  |t         j                        s-t        j                  |t        j
                          | |       y  )N)osaccessW_OKchmodstatS_IWUSR)funcpathexc_infos      r   onerrorzrmtree.<locals>.onerrorG   s0    yyrww'HHT4<<(J    )r   )shutilrmtree)r   r   s     r   r"   r"   A   s     ==w//r    )
contextlibr   r!   r   r   r
   r	   ImportErrorcontextmanagerr   r"    r    r   <module>r'      sR   R  	   
'
  0!  s   0 	<<