From 899e316361a78b12e4fd22bb9c544f73d0056a4a Mon Sep 17 00:00:00 2001
From: Christian Heimes <cheimes@redhat.com>
Date: Tue, 6 Oct 2020 10:48:36 +0200
Subject: [PATCH] Use separate install logs for AD and DNS instance

ipa-dns-install and ipa-adtrust-install no longer overwrite
ipaserver-install.log. Instead they use a separate log file.

Add AD-Trust, DNS, KRA, and replica log files to backups.

Fixes: https://pagure.io/freeipa/issue/8528
Signed-off-by: Christian Heimes <cheimes@redhat.com>
---
 install/tools/ipa-adtrust-install.in        | 2 +-
 install/tools/ipa-dns-install.in            | 2 +-
 ipaplatform/base/paths.py                   | 2 ++
 ipaserver/install/ipa_backup.py             | 6 ++++++
 ipatests/pytest_ipa/integration/__init__.py | 4 +++-
 5 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/install/tools/ipa-adtrust-install.in b/install/tools/ipa-adtrust-install.in
index 7d94b718e2..93365cc23d 100644
--- a/install/tools/ipa-adtrust-install.in
+++ b/install/tools/ipa-adtrust-install.in
@@ -50,7 +50,7 @@ if six.PY3:
 
 logger = logging.getLogger(os.path.basename(__file__))
 
-log_file_name = paths.IPASERVER_INSTALL_LOG
+log_file_name = paths.IPASERVER_ADTRUST_INSTALL_LOG
 
 
 def parse_options():
diff --git a/install/tools/ipa-dns-install.in b/install/tools/ipa-dns-install.in
index 43e2be88a5..693e70442b 100644
--- a/install/tools/ipa-dns-install.in
+++ b/install/tools/ipa-dns-install.in
@@ -38,7 +38,7 @@ from ipaserver.install import dns as dns_installer
 
 logger = logging.getLogger(os.path.basename(__file__))
 
-log_file_name = paths.IPASERVER_INSTALL_LOG
+log_file_name = paths.IPASERVER_DNS_INSTALL_LOG
 
 def parse_options():
     parser = IPAOptionParser(version=version.VERSION)
diff --git a/ipaplatform/base/paths.py b/ipaplatform/base/paths.py
index f7055fabc1..234f66a356 100644
--- a/ipaplatform/base/paths.py
+++ b/ipaplatform/base/paths.py
@@ -351,6 +351,8 @@ class BasePathNamespace:
     IPAREPLICA_INSTALL_LOG = "/var/log/ipareplica-install.log"
     IPARESTORE_LOG = "/var/log/iparestore.log"
     IPASERVER_INSTALL_LOG = "/var/log/ipaserver-install.log"
+    IPASERVER_ADTRUST_INSTALL_LOG = "/var/log/ipaserver-adtrust-install.log"
+    IPASERVER_DNS_INSTALL_LOG = "/var/log/ipaserver-dns-install.log"
     IPASERVER_KRA_INSTALL_LOG = "/var/log/ipaserver-kra-install.log"
     IPASERVER_UNINSTALL_LOG = "/var/log/ipaserver-uninstall.log"
     IPAUPGRADE_LOG = "/var/log/ipaupgrade.log"
diff --git a/ipaserver/install/ipa_backup.py b/ipaserver/install/ipa_backup.py
index b2280f3be7..e32a40d309 100644
--- a/ipaserver/install/ipa_backup.py
+++ b/ipaserver/install/ipa_backup.py
@@ -205,6 +205,12 @@ class Backup(admintool.AdminTool):
       paths.VAR_LOG_PKI_DIR,
       paths.VAR_LOG_HTTPD_DIR,
       paths.IPASERVER_INSTALL_LOG,
+      paths.IPASERVER_ADTRUST_INSTALL_LOG,
+      paths.IPASERVER_DNS_INSTALL_LOG,
+      paths.IPASERVER_KRA_INSTALL_LOG,
+      paths.IPAREPLICA_INSTALL_LOG,
+      paths.IPAREPLICA_CONNCHECK_LOG,
+      paths.IPAREPLICA_CA_INSTALL_LOG,
       paths.KADMIND_LOG,
       paths.MESSAGES,
       paths.IPACLIENT_INSTALL_LOG,
diff --git a/ipatests/pytest_ipa/integration/__init__.py b/ipatests/pytest_ipa/integration/__init__.py
index 5b0a22ff06..1e5400152c 100644
--- a/ipatests/pytest_ipa/integration/__init__.py
+++ b/ipatests/pytest_ipa/integration/__init__.py
@@ -45,11 +45,13 @@
     paths.VAR_LOG_DIRSRV,
     # IPA install logs
     paths.IPASERVER_INSTALL_LOG,
+    paths.IPASERVER_ADTRUST_INSTALL_LOG,
+    paths.IPASERVER_DNS_INSTALL_LOG,
+    paths.IPASERVER_KRA_INSTALL_LOG,
     paths.IPACLIENT_INSTALL_LOG,
     paths.IPAREPLICA_INSTALL_LOG,
     paths.IPAREPLICA_CONNCHECK_LOG,
     paths.IPAREPLICA_CA_INSTALL_LOG,
-    paths.IPASERVER_KRA_INSTALL_LOG,
     paths.IPA_CUSTODIA_AUDIT_LOG,
     paths.IPACLIENTSAMBA_INSTALL_LOG,
     paths.IPACLIENTSAMBA_UNINSTALL_LOG,
