Current File : //lib/python2.7/site-packages/cloudinit/config/cc_migrator.pyo |
�
oB�]c @ ss d Z d d l Z d d l Z d d l m Z d d l m Z d d l m Z e Z d � Z d � Z
d � Z d S( s%
Migrator
--------
**Summary:** migrate old versions of cloud-init data to new
This module handles moving old versions of cloud-init data to newer ones.
Currently, it only handles renaming cloud-init's per-frequency semaphore files
to canonicalized name and renaming legacy semaphore names to newer ones. This
module is enabled by default, but can be disabled by specifying ``migrate:
false`` in config.
**Internal name:** ``cc_migrator``
**Module frequency:** per always
**Supported distros:** all
**Config keys**::
migrate: <true/false>
i����N( t helpers( t util( t
PER_ALWAYSc
C s | j j d � | j j d � f } d } x� | D]� } | s1 t j j | � rW q1 n x� t j | � D]� } t j j | | � } t j j | � rg t j j | � \ } } t
j | � } | | k r t j j | | | � } t j
| | � | d 7} q qg qg Wq1 W| S( Nt semi i ( t pathst get_ipatht get_cpatht ost patht existst listdirt joint isfilet splitextR t canon_sem_namet shutilt move(
t cloudR t am_adjustedt sem_patht pt full_patht namet extt
canon_namet new_path( ( s@ /usr/lib/python2.7/site-packages/cloudinit/config/cc_migrator.pyt _migrate_canon_sems( s $
c
C s� i d d g d 6} | j j d � | j j d � f } xW| D]O} | s>