From 4fd88140b181b5f69c9312070840a4020593eb90 Mon Sep 17 00:00:00 2001 From: Tomas Babej Date: Wed, 30 Oct 2013 12:22:56 +0100 Subject: ipatests: Restore SELinux context after restoring files from backup Part of: https://fedorahosted.org/freeipa/ticket/3833 --- ipatests/test_integration/tasks.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'ipatests/test_integration/tasks.py') diff --git a/ipatests/test_integration/tasks.py b/ipatests/test_integration/tasks.py index bb7688bc3..3fa328799 100644 --- a/ipatests/test_integration/tasks.py +++ b/ipatests/test_integration/tasks.py @@ -116,8 +116,20 @@ def unapply_fixes(host): def restore_files(host): backupname = os.path.join(host.config.test_dir, 'file_backup') rmname = os.path.join(host.config.test_dir, 'file_remove') + + # Restore the backed up files host.run_command('cp -arvf %s/* /' % ipautil.shell_quote(backupname), raiseonerr=False) + + # Restore context of the backed-up files + sed_remove_backupdir = 's/%s//g' % backupname.replace('/', '\/') + host.run_command("find %s | " + "sed '%s' | " + "sed '/^$/d' | " + "xargs -d '\n' " + "/sbin/restorecon -v" % (backupname, sed_remove_backupdir)) + + # Remove all the files that did not exist and were 'backed up' host.run_command(['xargs', '-d', r'\n', '-a', rmname, 'rm', '-vf'], raiseonerr=False) host.run_command(['rm', '-rvf', backupname, rmname], raiseonerr=False) -- cgit