diff --git a/previous_guidelines/2015.03.json b/2015.03.json similarity index 100% rename from previous_guidelines/2015.03.json rename to 2015.03.json diff --git a/previous_guidelines/2015.04.json b/2015.04.json similarity index 100% rename from previous_guidelines/2015.04.json rename to 2015.04.json diff --git a/previous_guidelines/2015.04/procedure.rst b/2015.04/procedure.rst similarity index 100% rename from previous_guidelines/2015.04/procedure.rst rename to 2015.04/procedure.rst diff --git a/previous_guidelines/2015.05.json b/2015.05.json similarity index 100% rename from previous_guidelines/2015.05.json rename to 2015.05.json diff --git a/previous_guidelines/2015.05/procedure.rst b/2015.05/procedure.rst similarity index 100% rename from previous_guidelines/2015.05/procedure.rst rename to 2015.05/procedure.rst diff --git a/previous_guidelines/2015.07.json b/2015.07.json similarity index 100% rename from previous_guidelines/2015.07.json rename to 2015.07.json diff --git a/previous_guidelines/2015.07/procedure.rst b/2015.07/procedure.rst similarity index 100% rename from previous_guidelines/2015.07/procedure.rst rename to 2015.07/procedure.rst diff --git a/previous_guidelines/2016.01.json b/2016.01.json similarity index 100% rename from previous_guidelines/2016.01.json rename to 2016.01.json diff --git a/previous_guidelines/2016.01/procedure.rst b/2016.01/procedure.rst similarity index 100% rename from previous_guidelines/2016.01/procedure.rst rename to 2016.01/procedure.rst diff --git a/previous_guidelines/2016.08.json b/2016.08.json similarity index 100% rename from previous_guidelines/2016.08.json rename to 2016.08.json diff --git a/previous_guidelines/2016.08/procedure.rst b/2016.08/procedure.rst similarity index 100% rename from previous_guidelines/2016.08/procedure.rst rename to 2016.08/procedure.rst diff --git a/previous_guidelines/2017.01.json b/2017.01.json similarity index 100% rename from previous_guidelines/2017.01.json rename to 2017.01.json diff --git a/previous_guidelines/2017.09.json b/2017.09.json similarity index 100% rename from previous_guidelines/2017.09.json rename to 2017.09.json diff --git a/previous_guidelines/2018.02.json b/2018.02.json similarity index 100% rename from previous_guidelines/2018.02.json rename to 2018.02.json diff --git a/previous_guidelines/2018.11.json b/2018.11.json similarity index 100% rename from previous_guidelines/2018.11.json rename to 2018.11.json diff --git a/previous_guidelines/2019.06.json b/2019.06.json similarity index 100% rename from previous_guidelines/2019.06.json rename to 2019.06.json diff --git a/previous_guidelines/2019.11.json b/2019.11.json similarity index 100% rename from previous_guidelines/2019.11.json rename to 2019.11.json diff --git a/previous_guidelines/2020.06.json b/2020.06.json similarity index 100% rename from previous_guidelines/2020.06.json rename to 2020.06.json diff --git a/previous_guidelines/2020.11.json b/2020.11.json similarity index 100% rename from previous_guidelines/2020.11.json rename to 2020.11.json diff --git a/add-ons/previous_guidelines/dns.2018.02.json b/add-ons/dns.2018.02.json similarity index 100% rename from add-ons/previous_guidelines/dns.2018.02.json rename to add-ons/dns.2018.02.json diff --git a/add-ons/previous_guidelines/dns.2018.11.json b/add-ons/dns.2018.11.json similarity index 100% rename from add-ons/previous_guidelines/dns.2018.11.json rename to add-ons/dns.2018.11.json diff --git a/add-ons/previous_guidelines/dns.2019.06.json b/add-ons/dns.2019.06.json similarity index 100% rename from add-ons/previous_guidelines/dns.2019.06.json rename to add-ons/dns.2019.06.json diff --git a/add-ons/previous_guidelines/dns.2019.11.json b/add-ons/dns.2019.11.json similarity index 100% rename from add-ons/previous_guidelines/dns.2019.11.json rename to add-ons/dns.2019.11.json diff --git a/add-ons/previous_guidelines/dns.2020.06.json b/add-ons/dns.2020.06.json similarity index 100% rename from add-ons/previous_guidelines/dns.2020.06.json rename to add-ons/dns.2020.06.json diff --git a/add-ons/previous_guidelines/dns.2020.11.json b/add-ons/dns.2020.11.json similarity index 100% rename from add-ons/previous_guidelines/dns.2020.11.json rename to add-ons/dns.2020.11.json diff --git a/add-ons/dns_current_guideline b/add-ons/dns_current_guideline deleted file mode 120000 index d62ba18d..00000000 --- a/add-ons/dns_current_guideline +++ /dev/null @@ -1 +0,0 @@ -previous_guidelines/dns.2020.11.json \ No newline at end of file diff --git a/add-ons/previous_guidelines/orchestration.2018.02.json b/add-ons/orchestration.2018.02.json similarity index 100% rename from add-ons/previous_guidelines/orchestration.2018.02.json rename to add-ons/orchestration.2018.02.json diff --git a/add-ons/previous_guidelines/orchestration.2018.11.json b/add-ons/orchestration.2018.11.json similarity index 100% rename from add-ons/previous_guidelines/orchestration.2018.11.json rename to add-ons/orchestration.2018.11.json diff --git a/add-ons/previous_guidelines/orchestration.2019.06.json b/add-ons/orchestration.2019.06.json similarity index 100% rename from add-ons/previous_guidelines/orchestration.2019.06.json rename to add-ons/orchestration.2019.06.json diff --git a/add-ons/previous_guidelines/orchestration.2019.11.json b/add-ons/orchestration.2019.11.json similarity index 100% rename from add-ons/previous_guidelines/orchestration.2019.11.json rename to add-ons/orchestration.2019.11.json diff --git a/add-ons/previous_guidelines/orchestration.2020.06.json b/add-ons/orchestration.2020.06.json similarity index 100% rename from add-ons/previous_guidelines/orchestration.2020.06.json rename to add-ons/orchestration.2020.06.json diff --git a/add-ons/previous_guidelines/orchestration.2020.11.json b/add-ons/orchestration.2020.11.json similarity index 100% rename from add-ons/previous_guidelines/orchestration.2020.11.json rename to add-ons/orchestration.2020.11.json diff --git a/add-ons/orchestration_current_guideline b/add-ons/orchestration_current_guideline deleted file mode 120000 index 080b9703..00000000 --- a/add-ons/orchestration_current_guideline +++ /dev/null @@ -1 +0,0 @@ -previous_guidelines/orchestration.2020.11.json \ No newline at end of file diff --git a/add-ons/previous_guidelines/shared_file_system.2020.11.json b/add-ons/shared_file_system.2020.11.json similarity index 100% rename from add-ons/previous_guidelines/shared_file_system.2020.11.json rename to add-ons/shared_file_system.2020.11.json diff --git a/add-ons/shared_file_system_current_guideline b/add-ons/shared_file_system_current_guideline deleted file mode 120000 index b76a92b7..00000000 --- a/add-ons/shared_file_system_current_guideline +++ /dev/null @@ -1 +0,0 @@ -previous_guidelines/shared_file_system.2020.11.json \ No newline at end of file diff --git a/current_guideline b/current_guideline deleted file mode 120000 index 1574ce9e..00000000 --- a/current_guideline +++ /dev/null @@ -1 +0,0 @@ -previous_guidelines/2020.11.json \ No newline at end of file diff --git a/tools/consistency.sh b/tools/consistency.sh index bdd71924..05b46b59 100755 --- a/tools/consistency.sh +++ b/tools/consistency.sh @@ -1,113 +1,40 @@ #!/bin/bash # This script will run consistency checks for Tempest tests against -# the current and next interoperability guidelines. It can run in two +# the three latest interoperability guidelines. It can run in two # modes. # -# * If no arguments are specified, the script will check out Tempest and -# tempest plugins into a temporary directory, run the consistency checks, -# then delete temporary checkout. +# * If no arguments are specified, the script will check out Tempest +# into a temporary directory, run the consistency checks, then delete +# temporary checkout. # # * If an argument is given, this script will assume that it is a # user checked-out repository and run the consistency checks against # that, and leave the directory unchanged on exit. This mode is useful -# for gate jobs and Tempest/tempest plugin development. +# for gate jobs and Tempest development. set -x -# Prints help -function usage { - SCRIPT_NAME="basename ${BASH_SOURCE[0]}" - echo "Usage: ${SCRIPT_NAME} [OPTION]..." - echo "Consistency check" - echo "" - echo " -h Print this usage message" - echo " -t Local Tempest directory" - echo " -d Local designate-tempest-plugin directory" - echo " -o Local heat-tempest-plugin directory" - echo " -s Local manila-tempest-plugin directory" - echo " -c Set if tempest and plugins directory should be removed after" - echo " the consistency check" - exit 1 -} - -while getopts t:d:o:s:ch FLAG; do - case ${FLAG} in - t) - TEMPESTDIR=${OPTARG} - ;; - d) - DNSDIR=${OPTARG} - ;; - o) - ORCHESTRATIONDIR=${OPTARG} - ;; - s) - SFSDIR=${OPTARG} - ;; - c) - CLEANTEMPEST=true - ;; - h) #show help - usage - ;; - \?) #unrecognized option - show help - echo -e \\n"Option -$OPTARG not allowed." - usage - ;; - esac -done - -# check if a local directory was given (for Tempest or one of the plugins), -# if not, create a temp dir and clone the project there -if [[ -z $TEMPESTDIR ]]; then - TEMPESTDIR=$(mktemp -d) - git clone https://opendev.org/openstack/tempest $TEMPESTDIR -fi -if [[ -z $DNSDIR ]]; then - DNSDIR=$(mktemp -d) - git clone https://opendev.org/openstack/designate-tempest-plugin $DNSDIR -fi -if [[ -z $ORCHESTRATIONDIR ]]; then - ORCHESTRATIONDIR=$(mktemp -d) - git clone https://opendev.org/openstack/heat-tempest-plugin $ORCHESTRATIONDIR -fi -if [[ -z $SFSDIR ]]; then - SFSDIR=$(mktemp -d) - git clone https://opendev.org/openstack/manila-tempest-plugin $SFSDIR +if [ ! $@ ]; then + TEMPESTDIR=$(mktemp -d) + git clone https://opendev.org/openstack/tempest $TEMPESTDIR + CLEANTEMPEST=cleantempest +else + TEMPESTDIR=${1} fi - -export PYTHONPATH=$TEMPESTDIR:$DNSDIR:$ORCHESTRATIONDIR:$SFSDIR - -python3 ./tools/checktests.py --guideline next.json +PYTHONPATH=$TEMPESTDIR python ./tools/checktests.py --guideline next.json exit_1=$? -# TODO(kopecmartin) consistency check is commented out temporarily while we fix -# inconsistency issues in the follow-up patches -# python3 ./tools/checktests.py --guideline add-ons/dns.next.json --testlib designate_tempest_plugin -# exit_2=$? -# python3 ./tools/checktests.py --guideline add-ons/orchestration.next.json --testlib heat_tempest_plugin -# exit_3=$? -# python3 ./tools/checktests.py --guideline add-ons/shared_file_system.next.json --testlib manila_tempest_tests -# exit_4=$? -python3 ./tools/checktests.py --guideline current_guideline -exit_5=$? -# python3 ./tools/checktests.py --guideline add-ons/dns_current_guideline --testlib designate_tempest_plugin -# exit_6=$? -# python3 ./tools/checktests.py --guideline add-ons/orchestration_current_guideline --testlib heat_tempest_plugin -# exit_7=$? -# python3 ./tools/checktests.py --guideline add-ons/shared_file_system_current_guideline --testlib manila_tempest_tests -# exit_8=$? +PYTHONPATH=$TEMPESTDIR python ./tools/checktests.py --guideline 2018.02.json +exit_2=$? +PYTHONPATH=$TEMPESTDIR python ./tools/checktests.py --guideline 2018.11.json +exit_3=$? -if [[ "${CLEANTEMPEST}" ]]; then +if [[ ! -z "${CLEANTEMPEST}" ]]; then rm -rf $TEMPESTDIR - rm -rf $DNSDIR - rm -rf $ORCHESTRATIONDIR - rm -rf $SFSDIR fi -# ! (( $exit_1 || $exit_2 || $exit_3 || $exit_4 || $exit_5 || $exit_6 || $exit_7 || $exit_8 )) -! (( $exit_1 || $exit_5 )) +! (( $exit_1 || $exit_2 || $exit_3 )) diff --git a/tox.ini b/tox.ini index e7f31b03..4f6f1964 100644 --- a/tox.ini +++ b/tox.ini @@ -45,73 +45,63 @@ exclude = .venv,.git,.tox,doc,conf.py [testenv:jsonlint] commands= jsonlint -s next.json - jsonlint -s previous_guidelines/2015.07.json - jsonlint -s previous_guidelines/2016.01.json - jsonlint -s previous_guidelines/2016.08.json - jsonlint -s previous_guidelines/2017.01.json - jsonlint -s previous_guidelines/2017.09.json - jsonlint -s previous_guidelines/2018.02.json - jsonlint -s previous_guidelines/2018.11.json - jsonlint -s previous_guidelines/2019.06.json - jsonlint -s previous_guidelines/2019.11.json - jsonlint -s previous_guidelines/2020.06.json - jsonlint -s previous_guidelines/2020.11.json - jsonlint -s current_guideline + jsonlint -s 2015.07.json + jsonlint -s 2016.01.json + jsonlint -s 2016.08.json + jsonlint -s 2017.01.json + jsonlint -s 2017.09.json + jsonlint -s 2018.02.json + jsonlint -s 2018.11.json + jsonlint -s 2019.06.json + jsonlint -s 2019.11.json + jsonlint -s 2020.06.json + jsonlint -s 2020.11.json jsonlint -s doc/source/schema/1.5.json jsonlint -s doc/source/schema/1.6.json jsonlint -s doc/source/schema/2.0.json jsonlint -s doc/source/schema/next.2.0.json jsonlint -s add-ons/dns.next.json jsonlint -s add-ons/orchestration.next.json - jsonlint -s add-ons/previous_guidelines/dns.2018.02.json - jsonlint -s add-ons/previous_guidelines/dns.2019.06.json - jsonlint -s add-ons/previous_guidelines/dns.2019.11.json - jsonlint -s add-ons/previous_guidelines/dns.2020.06.json - jsonlint -s add-ons/previous_guidelines/dns.2020.11.json - jsonlint -s add-ons/previous_guidelines/orchestration.2018.02.json - jsonlint -s add-ons/previous_guidelines/orchestration.2019.06.json - jsonlint -s add-ons/previous_guidelines/orchestration.2019.11.json - jsonlint -s add-ons/previous_guidelines/orchestration.2020.06.json - jsonlint -s add-ons/previous_guidelines/orchestration.2020.11.json - jsonlint -s add-ons/previous_guidelines/shared_file_system.2020.11.json + jsonlint -s add-ons/dns.2018.02.json + jsonlint -s add-ons/dns.2019.06.json + jsonlint -s add-ons/dns.2019.11.json + jsonlint -s add-ons/dns.2020.06.json + jsonlint -s add-ons/dns.2020.11.json + jsonlint -s add-ons/orchestration.2018.02.json + jsonlint -s add-ons/orchestration.2019.06.json + jsonlint -s add-ons/orchestration.2019.11.json + jsonlint -s add-ons/orchestration.2020.06.json + jsonlint -s add-ons/orchestration.2020.11.json jsonlint -s add-ons/shared_file_system.next.json - jsonlint -s add-ons/dns_current_guideline - jsonlint -s add-ons/orchestration_current_guideline - jsonlint -s add-ons/shared_file_system_current_guideline [testenv:jsonschema] commands= jsonschema doc/source/schema/2.0.json -i next.json - jsonschema doc/source/schema/1.5.json -i previous_guidelines/2015.07.json - jsonschema doc/source/schema/1.5.json -i previous_guidelines/2016.01.json - jsonschema doc/source/schema/1.6.json -i previous_guidelines/2016.08.json - jsonschema doc/source/schema/1.6.json -i previous_guidelines/2017.01.json - jsonschema doc/source/schema/1.6.json -i previous_guidelines/2017.09.json - jsonschema doc/source/schema/2.0.json -i previous_guidelines/2018.02.json - jsonschema doc/source/schema/2.0.json -i previous_guidelines/2018.11.json - jsonschema doc/source/schema/2.0.json -i previous_guidelines/2019.06.json - jsonschema doc/source/schema/2.0.json -i previous_guidelines/2019.11.json - jsonschema doc/source/schema/2.0.json -i previous_guidelines/2020.06.json - jsonschema doc/source/schema/2.0.json -i previous_guidelines/2020.11.json - jsonschema doc/source/schema/2.0.json -i current_guideline + jsonschema doc/source/schema/1.5.json -i 2015.07.json + jsonschema doc/source/schema/1.5.json -i 2016.01.json + jsonschema doc/source/schema/1.6.json -i 2016.08.json + jsonschema doc/source/schema/1.6.json -i 2017.01.json + jsonschema doc/source/schema/1.6.json -i 2017.09.json + jsonschema doc/source/schema/2.0.json -i 2018.02.json + jsonschema doc/source/schema/2.0.json -i 2018.11.json + jsonschema doc/source/schema/2.0.json -i 2019.06.json + jsonschema doc/source/schema/2.0.json -i 2019.11.json + jsonschema doc/source/schema/2.0.json -i 2020.06.json + jsonschema doc/source/schema/2.0.json -i 2020.11.json jsonschema doc/source/schema/2.0.json -i doc/source/schema/next.2.0.json jsonschema doc/source/schema/2.0.json -i add-ons/dns.next.json jsonschema doc/source/schema/2.0.json -i add-ons/orchestration.next.json - jsonschema doc/source/schema/2.0.json -i add-ons/previous_guidelines/dns.2018.02.json - jsonschema doc/source/schema/2.0.json -i add-ons/previous_guidelines/dns.2019.06.json - jsonschema doc/source/schema/2.0.json -i add-ons/previous_guidelines/dns.2019.11.json - jsonschema doc/source/schema/2.0.json -i add-ons/previous_guidelines/dns.2020.06.json - jsonschema doc/source/schema/2.0.json -i add-ons/previous_guidelines/dns.2020.11.json - jsonschema doc/source/schema/2.0.json -i add-ons/previous_guidelines/orchestration.2018.02.json - jsonschema doc/source/schema/2.0.json -i add-ons/previous_guidelines/orchestration.2019.06.json - jsonschema doc/source/schema/2.0.json -i add-ons/previous_guidelines/orchestration.2019.11.json - jsonschema doc/source/schema/2.0.json -i add-ons/previous_guidelines/orchestration.2020.06.json - jsonschema doc/source/schema/2.0.json -i add-ons/previous_guidelines/orchestration.2020.11.json - jsonschema doc/source/schema/2.0.json -i add-ons/previous_guidelines/shared_file_system.2020.11.json + jsonschema doc/source/schema/2.0.json -i add-ons/dns.2018.02.json + jsonschema doc/source/schema/2.0.json -i add-ons/dns.2019.06.json + jsonschema doc/source/schema/2.0.json -i add-ons/dns.2019.11.json + jsonschema doc/source/schema/2.0.json -i add-ons/dns.2020.06.json + jsonschema doc/source/schema/2.0.json -i add-ons/dns.2020.11.json + jsonschema doc/source/schema/2.0.json -i add-ons/orchestration.2018.02.json + jsonschema doc/source/schema/2.0.json -i add-ons/orchestration.2019.06.json + jsonschema doc/source/schema/2.0.json -i add-ons/orchestration.2019.11.json + jsonschema doc/source/schema/2.0.json -i add-ons/orchestration.2020.06.json + jsonschema doc/source/schema/2.0.json -i add-ons/orchestration.2020.11.json jsonschema doc/source/schema/2.0.json -i add-ons/shared_file_system.next.json - jsonschema doc/source/schema/2.0.json -i add-ons/dns_current_guideline - jsonschema doc/source/schema/2.0.json -i add-ons/orchestration_current_guideline - jsonschema doc/source/schema/2.0.json -i add-ons/shared_file_system_current_guideline [testenv:consistency] commands=