Copy over test reports before running "report results" for linux test jobs (#56725)
Summary:
This way, if report results fail, the test reports are still saved as artifacts so we could use them to help us debug.
Pull Request resolved: https://github.com/pytorch/pytorch/pull/56725
Test Plan: CI linux test to pass + see that the test reports are copied in the Run tests step
Reviewed By: samestep
Differential Revision: D27948434
Pulled By: janeyx99
fbshipit-source-id: 597a2ba4fe1dca16c7b75a1399600b27f380f5cd
diff --git a/.circleci/config.yml b/.circleci/config.yml
index ffc1937..7cbf680 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -618,6 +618,20 @@
fi
echo "(cat docker_commands.sh | docker exec -u jenkins -i "$id" bash) 2>&1" > command.sh
unbuffer bash command.sh | ts
+
+ echo "Retrieving test reports"
+ docker cp $id:/var/lib/jenkins/workspace/test/test-reports ./ || echo 'No test reports found!'
+ if [[ ${BUILD_ENVIRONMENT} == *"coverage"* ]]; then
+ echo "Retrieving C++ coverage report"
+ docker cp $id:/var/lib/jenkins/workspace/build/coverage.info ./test
+ fi
+ if [[ ${BUILD_ENVIRONMENT} == *"coverage"* || ${BUILD_ENVIRONMENT} == *"onnx"* ]]; then
+ echo "Retrieving Python coverage report"
+ docker cp $id:/var/lib/jenkins/workspace/test/.coverage ./test
+ docker cp $id:/var/lib/jenkins/workspace/test/coverage.xml ./test
+ python3 -mpip install codecov
+ python3 -mcodecov
+ fi
- run:
name: Report results
no_output_timeout: "5m"
@@ -642,20 +656,6 @@
EOL
echo "(cat docker_commands.sh | docker exec -u jenkins -e LANG=C.UTF-8 -i "$id" bash) 2>&1" > command.sh
unbuffer bash command.sh | ts
-
- echo "Retrieving test reports"
- docker cp $id:/var/lib/jenkins/workspace/test/test-reports ./ || echo 'No test reports found!'
- if [[ ${BUILD_ENVIRONMENT} == *"coverage"* ]]; then
- echo "Retrieving C++ coverage report"
- docker cp $id:/var/lib/jenkins/workspace/build/coverage.info ./test
- fi
- if [[ ${BUILD_ENVIRONMENT} == *"coverage"* || ${BUILD_ENVIRONMENT} == *"onnx"* ]]; then
- echo "Retrieving Python coverage report"
- docker cp $id:/var/lib/jenkins/workspace/test/.coverage ./test
- docker cp $id:/var/lib/jenkins/workspace/test/coverage.xml ./test
- python3 -mpip install codecov
- python3 -mcodecov
- fi
when: always
- store_test_results:
path: test-reports
diff --git a/.circleci/verbatim-sources/job-specs/pytorch-job-specs.yml b/.circleci/verbatim-sources/job-specs/pytorch-job-specs.yml
index 27f563c..74b16e1 100644
--- a/.circleci/verbatim-sources/job-specs/pytorch-job-specs.yml
+++ b/.circleci/verbatim-sources/job-specs/pytorch-job-specs.yml
@@ -180,6 +180,20 @@
fi
echo "(cat docker_commands.sh | docker exec -u jenkins -i "$id" bash) 2>&1" > command.sh
unbuffer bash command.sh | ts
+
+ echo "Retrieving test reports"
+ docker cp $id:/var/lib/jenkins/workspace/test/test-reports ./ || echo 'No test reports found!'
+ if [[ ${BUILD_ENVIRONMENT} == *"coverage"* ]]; then
+ echo "Retrieving C++ coverage report"
+ docker cp $id:/var/lib/jenkins/workspace/build/coverage.info ./test
+ fi
+ if [[ ${BUILD_ENVIRONMENT} == *"coverage"* || ${BUILD_ENVIRONMENT} == *"onnx"* ]]; then
+ echo "Retrieving Python coverage report"
+ docker cp $id:/var/lib/jenkins/workspace/test/.coverage ./test
+ docker cp $id:/var/lib/jenkins/workspace/test/coverage.xml ./test
+ python3 -mpip install codecov
+ python3 -mcodecov
+ fi
- run:
name: Report results
no_output_timeout: "5m"
@@ -204,20 +218,6 @@
EOL
echo "(cat docker_commands.sh | docker exec -u jenkins -e LANG=C.UTF-8 -i "$id" bash) 2>&1" > command.sh
unbuffer bash command.sh | ts
-
- echo "Retrieving test reports"
- docker cp $id:/var/lib/jenkins/workspace/test/test-reports ./ || echo 'No test reports found!'
- if [[ ${BUILD_ENVIRONMENT} == *"coverage"* ]]; then
- echo "Retrieving C++ coverage report"
- docker cp $id:/var/lib/jenkins/workspace/build/coverage.info ./test
- fi
- if [[ ${BUILD_ENVIRONMENT} == *"coverage"* || ${BUILD_ENVIRONMENT} == *"onnx"* ]]; then
- echo "Retrieving Python coverage report"
- docker cp $id:/var/lib/jenkins/workspace/test/.coverage ./test
- docker cp $id:/var/lib/jenkins/workspace/test/coverage.xml ./test
- python3 -mpip install codecov
- python3 -mcodecov
- fi
when: always
- store_test_results:
path: test-reports