aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--resources/libraries/bash/entry/bootstrap_verify_perf.sh1
-rwxr-xr-xresources/libraries/bash/entry/bootstrap_vpp_device.sh1
-rw-r--r--resources/libraries/bash/entry/per_patch_device.sh1
-rw-r--r--resources/libraries/bash/entry/per_patch_perf.sh4
-rw-r--r--resources/libraries/bash/function/common.sh25
5 files changed, 31 insertions, 1 deletions
diff --git a/resources/libraries/bash/entry/bootstrap_verify_perf.sh b/resources/libraries/bash/entry/bootstrap_verify_perf.sh
index 1e742c546e..b9299b1422 100644
--- a/resources/libraries/bash/entry/bootstrap_verify_perf.sh
+++ b/resources/libraries/bash/entry/bootstrap_verify_perf.sh
@@ -48,4 +48,5 @@ select_tags || die
compose_pybot_arguments || die
run_pybot || die
untrap_and_unreserve_testbed || die
+copy_archives || die
die_on_pybot_error || die
diff --git a/resources/libraries/bash/entry/bootstrap_vpp_device.sh b/resources/libraries/bash/entry/bootstrap_vpp_device.sh
index 32c77c99d5..209943fb89 100755
--- a/resources/libraries/bash/entry/bootstrap_vpp_device.sh
+++ b/resources/libraries/bash/entry/bootstrap_vpp_device.sh
@@ -45,4 +45,5 @@ activate_docker_topology || die
select_vpp_device_tags || die
compose_pybot_arguments || die
run_pybot || die
+copy_archives || die
die_on_pybot_error || die
diff --git a/resources/libraries/bash/entry/per_patch_device.sh b/resources/libraries/bash/entry/per_patch_device.sh
index 4c9399a729..ac2c4a4ac5 100644
--- a/resources/libraries/bash/entry/per_patch_device.sh
+++ b/resources/libraries/bash/entry/per_patch_device.sh
@@ -55,5 +55,6 @@ activate_docker_topology || die
select_vpp_device_tags || die
compose_pybot_arguments || die
run_pybot || die
+copy_archives || die
archive_test_results "csit_current" || die
die_on_pybot_error || die
diff --git a/resources/libraries/bash/entry/per_patch_perf.sh b/resources/libraries/bash/entry/per_patch_perf.sh
index fd2d789d94..195d1a70e0 100644
--- a/resources/libraries/bash/entry/per_patch_perf.sh
+++ b/resources/libraries/bash/entry/per_patch_perf.sh
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
-# Copyright (c) 2019 Cisco and/or its affiliates.
+# Copyright (c) 2018 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
@@ -70,6 +70,7 @@ for ((iter=0; iter<iterations; iter++)); do
select_build "build_parent" || die
check_download_dir || die
run_pybot || die
+ copy_archives || die
archive_parse_test_results "csit_parent/${iter}" || die
die_on_pybot_error || die
# TODO: Use less heavy way to avoid apt remove failures.
@@ -77,6 +78,7 @@ for ((iter=0; iter<iterations; iter++)); do
select_build "build_current" || die
check_download_dir || die
run_pybot || die
+ copy_archives || die
archive_parse_test_results "csit_current/${iter}" || die
die_on_pybot_error || die
done
diff --git a/resources/libraries/bash/function/common.sh b/resources/libraries/bash/function/common.sh
index 549688f7bd..a7f79e0de9 100644
--- a/resources/libraries/bash/function/common.sh
+++ b/resources/libraries/bash/function/common.sh
@@ -286,6 +286,31 @@ function compose_pybot_arguments () {
}
+function copy_archives () {
+
+ # Create additional archive if workspace variable is set.
+ # This way if script is running in jenkins all will be
+ # automatically archived to logs.fd.io.
+ #
+ # Variables read:
+ # - WORKSPACE - Jenkins workspace, copy only if the value is not empty.
+ # Can be unset, then it speeds up manual testing.
+ # - ARCHIVE_DIR - Path to directory with content to be copied.
+ # Directories updated:
+ # - ${WORKSPACE}/archives/ - Created if does not exist.
+ # Content of ${ARCHIVE_DIR}/ is copied here.
+ # Functions called:
+ # - die - Print to stderr and exit.
+
+ set -exuo pipefail
+
+ if [[ -n "${WORKSPACE-}" ]]; then
+ mkdir -p "${WORKSPACE}/archives/" || die "Archives dir create failed."
+ cp -rf "${ARCHIVE_DIR}"/* "${WORKSPACE}/archives" || die "Copy failed."
+ fi
+}
+
+
function deactivate_docker_topology () {
# Deactivate virtual vpp-device topology by removing containers.