• Michael Hanselmann's avatar
    cfgupgrade: Fix critical bug overwriting RAPI users file · 87c80992
    Michael Hanselmann authored
    
    
    The cfgupgrade tool was designed to be idempotent, that means it could
    be run several times and still give produce the correct result. Ganeti
    2.4 moved the file containing the RAPI users to a separate directory
    (…/lib/ganeti/rapi/users). If it exists, cfgupgrade would automatically
    move an existing file from …/lib/ganeti/rapi_users and replace it with a
    symlink.
    
    Unfortunately one of the checks for this was incorrect and, when run
    multiple times, replaces the users file at the new location with a
    symlink created during a previous run.
    
    In addition the “--dry-run” parameter to cfgupgrade was not respected.
    Unittests are updated for all these cases.
    Signed-off-by: default avatarMichael Hanselmann <hansmi@google.com>
    Reviewed-by: default avatarIustin Pop <iustin@google.com>
    87c80992
cfgupgrade_unittest.py 11.4 KB