diff --git a/jobs/pipelines/deploy-cicd-and-run-tests.groovy b/jobs/pipelines/deploy-cicd-and-run-tests.groovy
index f9273e1..de92a25 100644
--- a/jobs/pipelines/deploy-cicd-and-run-tests.groovy
+++ b/jobs/pipelines/deploy-cicd-and-run-tests.groovy
@@ -13,7 +13,7 @@
     make_snapshot_stages = false
 }
 
-currentBuild.description = "${NODE_NAME}:${ENV_NAME}"
+currentBuild.description = "${NODE_NAME}:${ENV_NAME}<br>"
 
 def deploy(shared, common, steps, env_manager) {
     def report_text = ''
@@ -131,6 +131,21 @@
             }
         }
 
+        if (fileExists("jenkins_agent_description.txt")) {
+            def String jenkins_agent_description = readFile("jenkins_agent_description.txt")
+            currentBuild.description += "${jenkins_agent_description}"
+
+            // if there is a separated foundation node on $jenkins_slave_node_name,
+            // then archive artifacts also on that node
+            if (jenkins_slave_node_name != env.NODE_NAME) {
+                node ("${jenkins_slave_node_name}") {
+                    stage("Archive all xml reports from node ${}") {
+                        archiveArtifacts artifacts: "**/*.xml,**/*.ini,**/*.log,**/*.tar.gz"
+                    }
+                }
+            }
+        }
+
         stage("Archive all xml reports") {
             archiveArtifacts artifacts: "**/*.xml,**/*.ini,**/*.log,**/*.tar.gz"
         }
@@ -140,9 +155,11 @@
             }
             stage("Store TestRail reports to job description") {
                 def String description = readFile("description.txt")
-                currentBuild.description += "\n${description}"
+                currentBuild.description += "${description}"
             }
         }
-    }
-  }
+    } // try
+  } // node
+
+
 //}
\ No newline at end of file
diff --git a/jobs/pipelines/swarm-bootstrap-salt-cluster-devops.groovy b/jobs/pipelines/swarm-bootstrap-salt-cluster-devops.groovy
index 392be7c..802a0a5 100644
--- a/jobs/pipelines/swarm-bootstrap-salt-cluster-devops.groovy
+++ b/jobs/pipelines/swarm-bootstrap-salt-cluster-devops.groovy
@@ -70,6 +70,7 @@
                 export PYTHONIOENCODING=UTF-8
                 export REPOSITORY_SUITE=${MCP_VERSION}
                 export TEST_GROUP=test_create_environment
+                export LOG_NAME=swarm_test_create_environment.log
                 py.test -vvv -s -p no:django -p no:ipdb --junit-xml=deploy_hardware.xml -k \${TEST_GROUP}
             """)
         }
@@ -122,6 +123,7 @@
                     export PYTHONIOENCODING=UTF-8
                     export REPOSITORY_SUITE=${MCP_VERSION}
                     export TEST_GROUP=test_bootstrap_salt
+                    export LOG_NAME=swarm_test_bootstrap_salt.log
                     py.test -vvv -s -p no:django -p no:ipdb --junit-xml=${xml_report_name} -k \${TEST_GROUP}
                 """)
                 // Wait for jenkins to start and IO calm down
diff --git a/jobs/pipelines/swarm-bootstrap-salt-cluster-heat.groovy b/jobs/pipelines/swarm-bootstrap-salt-cluster-heat.groovy
index cfb080f..8c10291 100644
--- a/jobs/pipelines/swarm-bootstrap-salt-cluster-heat.groovy
+++ b/jobs/pipelines/swarm-bootstrap-salt-cluster-heat.groovy
@@ -97,7 +97,7 @@
             }
 
             stage("Generate config drive ISO") {
-                def SALT_MASTER_IP=shared.run_cmd_stdout("./tcp_tests/utils/get_param_heat_template.py management_subnet_cfg01_ip").trim().split().last()
+                SALT_MASTER_IP=shared.run_cmd_stdout("./tcp_tests/utils/get_param_heat_template.py management_subnet_cfg01_ip").trim().split().last()
                 def ADMIN_NETWORK_GW=shared.run_cmd_stdout("./tcp_tests/utils/get_param_heat_template.py management_subnet_gateway_ip").trim().split().last()
                 shared.generate_configdrive_iso(SALT_MASTER_IP, ADMIN_NETWORK_GW)
             }
@@ -157,6 +157,7 @@
                     export ENV_NAME=${ENV_NAME}
                     export LAB_CONFIG_NAME=${LAB_CONFIG_NAME}
                     export LAB_PARAM_DEFAULTS=${LAB_PARAM_DEFAULTS}
+                    export LOG_NAME=swarm_test_create_environment.log
                     py.test --cache-clear -vvv -s -p no:django -p no:ipdb --junit-xml=deploy_hardware.xml -k \${TEST_GROUP}
                 """)
             }
@@ -233,11 +234,16 @@
                 shared.verbose_sh(script_delete_agent, true, false, true)
                 shared.verbose_sh(script_create_agent, true, false, true)
 
+                // Store jenkins agent IP address
+                jenkins_agent_description = "ssh jenkins@${jenkins_slave_ip}  # foundation node with Jenkins agent <a href=${JENKINS_URL}/computer/${JENKINS_SLAVE_NODE_NAME}>${JENKINS_SLAVE_NODE_NAME}</a><br>ssh root@${SALT_MASTER_IP}  # cfg01 node<br>"
+                writeFile(file: "jenkins_agent_description.txt", text: jenkins_agent_description, encoding: "UTF-8")
+
         } // withCredentials
 
             }// stage
 
         } // withCredentials
+
     } // dir
 } // node
 
@@ -278,6 +284,7 @@
                         export PYTHONIOENCODING=UTF-8
                         export REPOSITORY_SUITE=${MCP_VERSION}
                         export TEST_GROUP=test_bootstrap_salt
+                        export LOG_NAME=swarm_test_bootstrap_salt.log
                         py.test -vvv -s -p no:django -p no:ipdb --junit-xml=${xml_report_name} -k \${TEST_GROUP}
                     """)
                     // Wait for jenkins to start and IO calm down
diff --git a/jobs/pipelines/swarm-run-pytest.groovy b/jobs/pipelines/swarm-run-pytest.groovy
index 1e4c849..d403861 100644
--- a/jobs/pipelines/swarm-run-pytest.groovy
+++ b/jobs/pipelines/swarm-run-pytest.groovy
@@ -73,6 +73,7 @@
                     export SALT_USER=\$SALTAPI_USER
                     export SALT_PASSWORD=\$SALTAPI_PASS
 
+                    export LOG_NAME=swarm_run_pytest.log
                     py.test --junit-xml=nosetests.xml ${RUN_TEST_OPTS}
 
                     """)
diff --git a/jobs/pipelines/swarm-testrail-report.groovy b/jobs/pipelines/swarm-testrail-report.groovy
index 42be763..2d2f993 100644
--- a/jobs/pipelines/swarm-testrail-report.groovy
+++ b/jobs/pipelines/swarm-testrail-report.groovy
@@ -87,7 +87,7 @@
                     report_url = report_result.split("\n").each {
                         if (it.contains("[TestRun URL]")) {
                             common.printMsg("Found report URL: " + it.trim().split().last(), "blue")
-                            description += "\n<a href=" + it.trim().split().last() + ">${testSuiteName}</a>"
+                            description += "<a href=" + it.trim().split().last() + ">${testSuiteName}</a><br>"
                         }
                     }
                 }
@@ -108,7 +108,7 @@
                     report_url = report_result.split("\n").each {
                         if (it.contains("[TestRun URL]")) {
                             common.printMsg("Found report URL: " + it.trim().split().last(), "blue")
-                            description += "\n<a href=" + it.trim().split().last() + ">${testSuiteName}</a>"
+                            description += "<a href=" + it.trim().split().last() + ">${testSuiteName}</a><br>"
                         }
                     }
                 }
@@ -124,7 +124,7 @@
                     report_url = report_result.split("\n").each {
                         if (it.contains("[TestRun URL]")) {
                             common.printMsg("Found report URL: " + it.trim().split().last(), "blue")
-                            description += "\n<a href=" + it.trim().split().last() + ">${testSuiteName}</a>"
+                            description += "<a href=" + it.trim().split().last() + ">${testSuiteName}</a><br>"
                         }
                     }
                 }
@@ -150,7 +150,7 @@
                     report_url = report_result.split("\n").each {
                         if (it.contains("[TestRun URL]")) {
                             common.printMsg("Found report URL: " + it.trim().split().last(), "blue")
-                            description += "\n<a href=" + it.trim().split().last() + ">${testSuiteName}</a>"
+                            description += "<a href=" + it.trim().split().last() + ">${testSuiteName}</a><br>"
                         }
                     }
                 }
@@ -172,7 +172,7 @@
                     report_url = report_result.split("\n").each {
                         if (it.contains("[TestRun URL]")) {
                             common.printMsg("Found report URL: " + it.trim().split().last(), "blue")
-                            description += "\n<a href=" + it.trim().split().last() + ">${testSuiteName}</a>"
+                            description += "<a href=" + it.trim().split().last() + ">${testSuiteName}</a><br>"
                         }
                     }
                 }
@@ -188,7 +188,7 @@
                     report_url = report_result.split("\n").each {
                         if (it.contains("[TestRun URL]")) {
                             common.printMsg("Found report URL: " + it.trim().split().last(), "blue")
-                            description += "\n<a href=" + it.trim().split().last() + ">${testSuiteName}</a>"
+                            description += "<a href=" + it.trim().split().last() + ">${testSuiteName}</a><br>"
                         }
                     }
                 }
@@ -210,7 +210,7 @@
                     report_url = report_result.split("\n").each {
                         if (it.contains("[TestRun URL]")) {
                             common.printMsg("Found report URL: " + it.trim().split().last(), "blue")
-                            description += "\n<a href=" + it.trim().split().last() + ">${testSuiteName}</a>"
+                            description += "<a href=" + it.trim().split().last() + ">${testSuiteName}</a><br>"
                         }
                     }
                 }
diff --git a/src/com/mirantis/system_qa/SharedPipeline.groovy b/src/com/mirantis/system_qa/SharedPipeline.groovy
index ed667b8..d74b600 100644
--- a/src/com/mirantis/system_qa/SharedPipeline.groovy
+++ b/src/com/mirantis/system_qa/SharedPipeline.groovy
@@ -541,6 +541,7 @@
     // Result will be stored in JUnit XML file deploy_${stack}.xml
     try {
         run_cmd("""\
+            export LOG_NAME=deploy_${stack}_test.log
             py.test --junit-xml=deploy_${stack}.xml -m check_${stack}
         """)
     } catch (e) {
diff --git a/tcp_tests/logger.py b/tcp_tests/logger.py
index 2c73364..1d1c1f1 100644
--- a/tcp_tests/logger.py
+++ b/tcp_tests/logger.py
@@ -24,7 +24,8 @@
 logging.basicConfig(level=logging.DEBUG,
                     format='%(asctime)s - %(levelname)s %(filename)s:'
                     '%(lineno)d -- %(message)s',
-                    filename=os.path.join(settings.LOGS_DIR, 'tests.log'),
+                    filename=os.path.join(settings.LOGS_DIR,
+                                          settings.LOG_NAME),
                     filemode='w')
 
 console = logging.StreamHandler()
diff --git a/tcp_tests/settings.py b/tcp_tests/settings.py
index f98981d..e8968be 100644
--- a/tcp_tests/settings.py
+++ b/tcp_tests/settings.py
@@ -24,6 +24,7 @@
 
 
 LOGS_DIR = os.environ.get('LOGS_DIR', os.getcwd())
+LOG_NAME = os.environ.get('LOG_NAME', 'tests.log')
 TIMESTAT_PATH_YAML = os.environ.get(
     'TIMESTAT_PATH_YAML', os.path.join(
         LOGS_DIR, 'timestat_{}.yaml'.format(time.strftime("%Y%m%d"))))
diff --git a/tcp_tests/templates/heat-cicd-pike-contrail41-sl/underlay--user-data-foundation.yaml b/tcp_tests/templates/heat-cicd-pike-contrail41-sl/underlay--user-data-foundation.yaml
index cb551ef..1677dcd 100644
--- a/tcp_tests/templates/heat-cicd-pike-contrail41-sl/underlay--user-data-foundation.yaml
+++ b/tcp_tests/templates/heat-cicd-pike-contrail41-sl/underlay--user-data-foundation.yaml
@@ -15,6 +15,7 @@
 chpasswd:
   list: |
     root:r00tme
+    jenkins:qalab
   expire: False
 
 packages:
