]> review.fuel-infra Code Review - tools/sustaining.git/commitdiff
Update tempest reporter job 94/41894/4
authorVladimir Khlyunev <vkhlyunev@mirantis.com>
Wed, 13 Apr 2022 09:10:50 +0000 (13:10 +0400)
committerVladimir Khlyunev <vkhlyunev@mirantis.com>
Wed, 13 Apr 2022 09:17:55 +0000 (13:17 +0400)
Change-Id: I9e3b04ae24712382741c1329e6664cc9da2d0be5

maintenance-ci/mos/jobs/maintenance-tempest-report.yaml
maintenance-ci/mos/reporter-docker/Dockerfile [new file with mode: 0644]
maintenance-ci/mos/reporter-docker/run_report.sh [new file with mode: 0644]
maintenance-ci/mos/scripts/maintenance-tempest-report.sh

index 1561e25ad2caea2cccc52c3bfe600695263c98c6..ed63c08db05ef1490a04be5fe787c5f7e0cfe14e 100644 (file)
@@ -53,7 +53,7 @@
             password: TESTRAIL_PASSWORD
     scm:
     - git:
-        url: https://github.com/dis-xcom/testrail_reporter.git
+        url: 'https://review.fuel-infra.org/tools/sustaining/'
         branches:
           - origin/master
     builders:
diff --git a/maintenance-ci/mos/reporter-docker/Dockerfile b/maintenance-ci/mos/reporter-docker/Dockerfile
new file mode 100644 (file)
index 0000000..a509958
--- /dev/null
@@ -0,0 +1,34 @@
+FROM ubuntu:16.04
+
+LABEL rebuild="build1"
+
+ENV DEBIAN_FRONTEND=noninteractive \
+    DEBCONF_NONINTERACTIVE_SEEN=true \
+    LANG=C.UTF-8 \
+    LANGUAGE=$LANG
+SHELL ["/bin/bash", "-xec"]
+
+#  Base apt config
+RUN echo 'Acquire::Languages "none";' > /etc/apt/apt.conf.d/docker-no-languages \
+    && echo 'Acquire::GzipIndexes "true"; Acquire::CompressionTypes::Order:: "gz";' > /etc/apt/apt.conf.d/docker-gzip-indexes \
+    && echo 'APT::Get::Install-Recommends "false"; APT::Get::Install-Suggests "false";' > /etc/apt/apt.conf.d/docker-recommends \
+    && apt-get update \
+    && apt-get -yy upgrade \
+    && apt-get install -y git python-dev python-virtualenv \
+    && apt-get -y install python-pip && pip install -U "pip<21"
+
+WORKDIR /root
+
+RUN virtualenv report-venv  \
+    && source report-venv/bin/activate \
+    && pip install -U "pip<21" \
+    && pip install -U "setuptools<45.0.0" six "Jinja2==2.11.3" "prettytable==1.0.1" "pytest-runner==5.2"
+
+RUN source report-venv/bin/activate \
+    && git clone https://github.com/dis-xcom/testrail_reporter.git  \
+    && cd testrail_reporter  \
+    && python setup.py install
+
+COPY run_report.sh /root/run_report.sh
+
+CMD /bin/bash /root/run_report.sh
diff --git a/maintenance-ci/mos/reporter-docker/run_report.sh b/maintenance-ci/mos/reporter-docker/run_report.sh
new file mode 100644 (file)
index 0000000..a862260
--- /dev/null
@@ -0,0 +1,8 @@
+#!/bin/bash -ex
+
+source report-venv/bin/activate
+
+report ${ARG_STR}
+
+deactivate
+
index 7297eb73c8972d0e49134340311209eac38fc42a..fa71d3f01ce54c90b93710d3064d35c177128db4 100644 (file)
@@ -44,29 +44,20 @@ if [ "${SEND_SKIPPED}" == "true" ]; then
     ARGS+=(--send-skipped)
 fi
 
-if [ ! -f report-venv/bin/activate ]; then
-    rm -rf report-venv
-    virtualenv report-venv
-    source report-venv/bin/activate
-    pip install -U pip setuptools six # six need for workaround setup.py below
-    python setup.py install
-else
-    source report-venv/bin/activate
-fi
-
-report -v --testrail-plan-name "${TESTRAIL_PLAN_NAME?}" \
-          --env-description "${SPECIFICATION?}"\
-          --testrail-user "${TESTRAIL_USER?}" \
-          --testrail-password "${TESTRAIL_PASSWORD?}" \
-          --testrail-project "${TESTRAIL_PROJECT?}" \
-          --testrail-milestone "${MILESTONE?}" \
-          --testrail-suite "${TESTRAIL_SUITE?}" \
-          --test-results-link "${TEST_BUILD_URL}" \
-          "${ARGS[@]}" \
-          "${REPORT_FILE?}"
 
-deactivate
+LOCAL_STORAGE="$(pwd)"/shared
+rm -rf "${LOCAL_STORAGE}"
+mkdir -p "${LOCAL_STORAGE}"
+cp "${REPORT_FILE}" "${LOCAL_STORAGE}"
 
-if [ -f "${REPORT_FILE}" ]; then
-    mv -f "${REPORT_FILE}" "${REPORT_FILE}.reported"
+arg_str="-v --testrail-plan-name \"${TESTRAIL_PLAN_NAME?}\" --env-description \"${SPECIFICATION?}\" --testrail-user \"${TESTRAIL_USER?}\" \
+          --testrail-password \"${TESTRAIL_PASSWORD?}\" --testrail-project \"${TESTRAIL_PROJECT?}\" --testrail-milestone \"${MILESTONE?}\" \
+          --testrail-suite \"${TESTRAIL_SUITE?}\" --test-results-link \"${TEST_BUILD_URL}\" "
+if [ ! ${#ARGS[@]} -eq 0 ] ; then
+  arg_str="${arg_str} \"${ARGS[*]}\" "
 fi
+arg_str="${arg_str} \"/root/shared/${REPORT_FILE?}\" "
+
+IMAGE_ID=$(docker build -q maintenance-ci/mos/rally-docker)
+docker run -e ARG_STR="${arg_str}" --rm -v "${LOCAL_STORAGE}":/root/shared "${IMAGE_ID}"
+docker rmi "${IMAGE_ID}"