Improve stage-test script: Split charms list according to tox envlist. 52/13252/3
authorDario Faccin <dario.faccin@canonical.com>
Thu, 20 Apr 2023 14:13:50 +0000 (16:13 +0200)
committerbeierlm <mark.beierl@canonical.com>
Wed, 26 Apr 2023 09:25:32 +0000 (11:25 +0200)
For newer charms the tox envlist includes lint, unit and integration: for these charms execute only lint and unit tests.
For older charms the tox envlist includes black, cover, flake8, pylint, yamllint, safety: for these charms execute all tests.

Change-Id: I6cfbe129440be1665f63572a1879060eccd822fd
Signed-off-by: Dario Faccin <dario.faccin@canonical.com>
devops-stages/stage-test.sh

index ae36ccf..af5953a 100755 (executable)
@@ -20,8 +20,9 @@ CURRENT_DIR=`pwd`
 
 # Execute tests for charms
 CHARM_PATH="./installers/charm"
-CHARM_NAMES="osm-lcm osm-mon osm-nbi osm-ng-ui osm-pol osm-ro keystone prometheus grafana vca-integrator-operator"
-for charm in $CHARM_NAMES; do
+NEW_CHARMS_NAMES="osm-lcm osm-mon osm-nbi osm-ng-ui osm-pol osm-ro vca-integrator-operator"
+OLD_CHARMS_NAMES="keystone prometheus grafana"
+for charm in $NEW_CHARMS_NAMES; do
     if [ $(git diff --name-only "origin/${GERRIT_BRANCH}" -- "installers/charm/${charm}" | wc -l) -ne 0 ]; then
         echo "Running tox for ${charm}"
         cd "${CHARM_PATH}/${charm}"
@@ -29,3 +30,11 @@ for charm in $CHARM_NAMES; do
         cd "${CURRENT_DIR}"
     fi
 done
+for charm in $OLD_CHARMS_NAMES; do
+    if [ $(git diff --name-only "origin/${GERRIT_BRANCH}" -- "installers/charm/${charm}" | wc -l) -ne 0 ]; then
+        echo "Running tox for ${charm}"
+        cd "${CHARM_PATH}/${charm}"
+        TOX_PARALLEL_NO_SPINNER=1 tox --parallel=auto
+        cd "${CURRENT_DIR}"
+    fi
+done