opentelemetry-java-instrume.../.circleci/collect_artifacts.sh

55 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
# Save all important reports and artifacts into (project-root)/build
# This folder will be saved by circleci and available after test runs.
set -e
REPORTS_DIR=./reports
mkdir -p $REPORTS_DIR >/dev/null 2>&1
ARTIFACT_DIR=./artifacts/
mkdir -p $ARTIFACT_DIR >/dev/null 2>&1
function save_reports () {
project_to_save=$1
echo "saving reports for $project_to_save"
report_path=$REPORTS_DIR/$project_to_save/reports
mkdir -p $report_path
cp -r workspace/$project_to_save/build/reports/* $report_path/
}
function save_libs () {
project_to_save=$1
echo "saving libs for $project_to_save"
libs_path=$ARTIFACT_DIR/$project_to_save/libs
mkdir -p $libs_path
cp -r workspace/$project_to_save/build/libs/* $libs_path/
}
function save_results () {
echo "saving test results"
mkdir -p $REPORTS_DIR/results
find workspace/**/build/test-results -name \*.xml -exec cp {} $REPORTS_DIR/results \;
}
save_reports dd-java-agent/agent-tooling
save_reports dd-java-agent/testing
# Save reports for all instrumentation projects
for integration_path in dd-java-agent/instrumentation/*; do
if [ -d "workspace/$integration_path/build/reports" ]; then
save_reports $integration_path
fi
done
save_reports dd-java-agent-ittests
save_reports dd-trace-ot
save_libs dd-java-agent
save_libs dd-trace-api
save_libs dd-trace-ot
save_results