mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2024-12-29 10:21:18 -06:00
91341f4035
When a non-lint job fails, all the relevant logs from the test runner will be gzipped and uploaded to https://transfer.sh file sharing service. The download link will then be displayed at the very end of the Travis build log. Reviewed-By: Jan Cholasta <jcholast@redhat.com>
55 lines
1.7 KiB
YAML
55 lines
1.7 KiB
YAML
language: python
|
|
services:
|
|
- docker
|
|
|
|
python:
|
|
- "2.7"
|
|
cache: pip
|
|
env:
|
|
global:
|
|
- TEST_RUNNER_IMAGE="martbab/freeipa-fedora-test-runner:master-latest"
|
|
TEST_RUNNER_CONFIG=".test_runner_config.yaml"
|
|
PEP8_ERROR_LOG="pep8_errors.log"
|
|
CI_RESULTS_LOG="ci_results_${TRAVIS_BRANCH}.log"
|
|
CI_BACKLOG_SIZE=5000
|
|
CI_RUNNER_LOGS_DIR="/tmp/test-runner-logs"
|
|
CI_RUNNER_LOG_ARCHIVE="freeipa-ci-pr-${TRAVIS_PULL_REQUEST}-job-${TRAVIS_JOB_NUMBER}.tar.gz"
|
|
matrix:
|
|
- TASK_TO_RUN="lint"
|
|
- TASK_TO_RUN="run-tests"
|
|
TESTS_TO_RUN="test_xmlrpc/test_[a-k]*.py"
|
|
- TASK_TO_RUN="run-tests"
|
|
TESTS_TO_RUN="test_cmdline
|
|
test_install
|
|
test_ipalib
|
|
test_ipapython
|
|
test_ipaserver
|
|
test_pkcs10
|
|
test_xmlrpc/test_[l-z]*.py"
|
|
install:
|
|
- pip install pep8
|
|
- >
|
|
pip3 install
|
|
git+https://github.com/freeipa/ipa-docker-test-runner@release-0-2-1
|
|
|
|
script:
|
|
- mkdir -p $CI_RUNNER_LOGS_DIR
|
|
- travis_wait 50 ./.travis_run_task.sh
|
|
after_failure:
|
|
- echo "Test runner output:"; tail -n $CI_BACKLOG_SIZE $CI_RESULTS_LOG
|
|
- echo "PEP-8 errors:"; cat $PEP8_ERROR_LOG
|
|
- >
|
|
echo "Archiving CI logs";
|
|
if [[ "$TASK_TO_RUN" != "lint" ]]; then
|
|
tar --ignore-failed-read -uvf var_log.tar $CI_RESULTS_LOG $PEP8_ERROR_LOG;
|
|
gzip var_log.tar;
|
|
mv var_log.tar.gz $CI_RUNNER_LOG_ARCHIVE;
|
|
|
|
transfer_url=$(
|
|
curl --upload-file \
|
|
./$CI_RUNNER_LOG_ARCHIVE \
|
|
https://transfer.sh/${CI_RUNNER_LOG_ARCHIVE}) &&
|
|
echo "Download log archive from ${transfer_url}" ||
|
|
echo "Failed to upload log archive!";
|
|
fi
|