Add missing helper
This commit is contained in:
17
hooks/charmhelpers/contrib/openstack/alternatives.py
Normal file
17
hooks/charmhelpers/contrib/openstack/alternatives.py
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
''' Helper for managing alternatives for file conflict resolution '''
|
||||||
|
|
||||||
|
import subprocess
|
||||||
|
import shutil
|
||||||
|
import os
|
||||||
|
|
||||||
|
|
||||||
|
def install_alternative(name, target, source, priority=50):
|
||||||
|
''' Install alternative configuration '''
|
||||||
|
if (os.path.exists(target) and not os.path.islink(target)):
|
||||||
|
# Move existing file/directory away before installing
|
||||||
|
shutil.move(target, '{}.bak'.format(target))
|
||||||
|
cmd = [
|
||||||
|
'update-alternatives', '--force', '--install',
|
||||||
|
target, name, source, str(priority)
|
||||||
|
]
|
||||||
|
subprocess.check_call(cmd)
|
Reference in New Issue
Block a user