mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
Add more test tasks
- install_client - connect_replica - disconnect_replica - prepare_host - kinit_admin
This commit is contained in:
parent
db8027407a
commit
ac70c2cc5c
@ -24,7 +24,7 @@ import os
|
||||
import nose
|
||||
|
||||
from ipapython.ipa_log_manager import log_mgr
|
||||
from ipatests.test_integration.config import get_global_config, env_to_script
|
||||
from ipatests.test_integration.config import get_global_config
|
||||
from ipatests.test_integration import tasks
|
||||
from ipatests.order_plugin import ordered
|
||||
|
||||
@ -74,10 +74,7 @@ class IntegrationTest(object):
|
||||
@classmethod
|
||||
def prepare_host(cls, host):
|
||||
cls.log.info('Preparing host %s', host.hostname)
|
||||
env_filename = os.path.join(host.config.test_dir, 'env.sh')
|
||||
cls.collect_log(host, env_filename)
|
||||
host.mkdir_recursive(host.config.test_dir)
|
||||
host.put_file_contents(env_filename, env_to_script(host.to_env()))
|
||||
tasks.prepare_host(host)
|
||||
|
||||
@classmethod
|
||||
def install(cls):
|
||||
|
@ -273,8 +273,6 @@ class Host(object):
|
||||
else:
|
||||
self.log.critical('No SSH credentials configured')
|
||||
raise RuntimeError('No SSH credentials configured')
|
||||
# Clean up the test directory
|
||||
self.run_command(['rm', '-rvf', self.config.test_dir])
|
||||
return transport
|
||||
|
||||
@property
|
||||
|
@ -25,10 +25,18 @@ import re
|
||||
|
||||
from ipapython import ipautil
|
||||
from ipapython.ipa_log_manager import log_mgr
|
||||
from ipatests.test_integration.config import env_to_script
|
||||
|
||||
log = log_mgr.get_logger(__name__)
|
||||
|
||||
|
||||
def prepare_host(host):
|
||||
env_filename = os.path.join(host.config.test_dir, 'env.sh')
|
||||
host.collect_log(env_filename)
|
||||
host.mkdir_recursive(host.config.test_dir)
|
||||
host.put_file_contents(env_filename, env_to_script(host.to_env()))
|
||||
|
||||
|
||||
def apply_common_fixes(host):
|
||||
fix_etc_hosts(host)
|
||||
fix_hostname(host)
|
||||
@ -93,6 +101,9 @@ def unapply_fixes(host):
|
||||
restore_files(host)
|
||||
restore_hostname(host)
|
||||
|
||||
# Clean up the test directory
|
||||
host.run_command(['rm', '-rvf', host.config.test_dir])
|
||||
|
||||
|
||||
def restore_files(host):
|
||||
backupname = os.path.join(host.config.test_dir, 'file_backup')
|
||||
@ -147,8 +158,7 @@ def install_master(host):
|
||||
|
||||
enable_replication_debugging(host)
|
||||
|
||||
host.run_command(['kinit', 'admin'],
|
||||
stdin_text=host.config.admin_password)
|
||||
kinit_admin(host)
|
||||
|
||||
|
||||
def install_replica(master, replica, setup_ca=True):
|
||||
@ -178,16 +188,36 @@ def install_replica(master, replica, setup_ca=True):
|
||||
|
||||
enable_replication_debugging(replica)
|
||||
|
||||
replica.run_command(['kinit', 'admin'],
|
||||
stdin_text=replica.config.admin_password)
|
||||
kinit_admin(replica)
|
||||
|
||||
def install_client(master, client):
|
||||
client.collect_log('/var/log/ipaclient-install.log')
|
||||
|
||||
apply_common_fixes(client)
|
||||
|
||||
client.run_command(['ipa-client-install', '-U',
|
||||
'--domain', client.domain.name,
|
||||
'--realm', client.domain.realm,
|
||||
'-p', client.config.admin_name,
|
||||
'-w', client.config.admin_password,
|
||||
'--server', master.hostname])
|
||||
|
||||
kinit_admin(client)
|
||||
|
||||
|
||||
def connect_replica(master, replica=None):
|
||||
if replica is None:
|
||||
args = [replica.hostname, master.hostname]
|
||||
else:
|
||||
args = [master.hostname]
|
||||
replica.run_command(['ipa-replica-manage', 'connect'] + args)
|
||||
def connect_replica(master, replica):
|
||||
kinit_admin(replica)
|
||||
replica.run_command(['ipa-replica-manage', 'connect', master.hostname])
|
||||
|
||||
|
||||
def disconnect_replica(master, replica):
|
||||
kinit_admin(replica)
|
||||
replica.run_command(['ipa-replica-manage', 'disconnect', master.hostname])
|
||||
|
||||
|
||||
def kinit_admin(host):
|
||||
host.run_command(['kinit', 'admin'],
|
||||
stdin_text=host.config.admin_password)
|
||||
|
||||
|
||||
def uninstall_master(host):
|
||||
|
Loading…
Reference in New Issue
Block a user