~brad-marshall/charms/trusty/apache2-wsgi/fix-haproxy-relations

« back to all changes in this revision

Viewing changes to hooks/lib/charmhelpers/contrib/openstack/alternatives.py

  • Committer: Robin Winslow
  • Date: 2014-05-27 14:00:44 UTC
  • Revision ID: robin.winslow@canonical.com-20140527140044-8rpmb3wx4djzwa83
Add all files

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
''' Helper for managing alternatives for file conflict resolution '''
 
2
 
 
3
import subprocess
 
4
import shutil
 
5
import os
 
6
 
 
7
 
 
8
def install_alternative(name, target, source, priority=50):
 
9
    ''' Install alternative configuration '''
 
10
    if (os.path.exists(target) and not os.path.islink(target)):
 
11
        # Move existing file/directory away before installing
 
12
        shutil.move(target, '{}.bak'.format(target))
 
13
    cmd = [
 
14
        'update-alternatives', '--force', '--install',
 
15
        target, name, source, str(priority)
 
16
    ]
 
17
    subprocess.check_call(cmd)