From 7114e79485166e23d4d57eab25fee7dedd2b6f6c Mon Sep 17 00:00:00 2001 From: Andreas Jaeger Date: Fri, 31 May 2019 20:14:47 +0200 Subject: [PATCH] Check ACLs for all namespaces Remove hardcoded list of namespaces with iterating over all directories in the check of valid ACLs. Remove parameter, we don't need to pass it in. Be more verbose and report directories scanned and number of ACL files read. Change-Id: I4193ac59b431d31f3ce835c93950745e5b742418 --- tools/check_valid_gerrit_config.sh | 15 ++++++++++----- tox.ini | 2 +- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/tools/check_valid_gerrit_config.sh b/tools/check_valid_gerrit_config.sh index 134cb7e92d..ac12074e41 100755 --- a/tools/check_valid_gerrit_config.sh +++ b/tools/check_valid_gerrit_config.sh @@ -6,16 +6,18 @@ export TMPDIR=$(/bin/mktemp -d) trap "rm -rf $TMPDIR" EXIT pushd $TMPDIR -CONFIGS_LIST_BASE=$OLDPWD/$1 +CONFIGS_LIST_BASE=$OLDPWD/gerrit/acls + +declare -i NUM_TESTS=0 function check_team_acl { local configs_dir="$1" local configs_list - local failure=0 + echo "Checking" $(basename $configs_dir) configs_list=$(find $configs_dir -name "*.config") for config in $configs_list; do - + let "NUM_TESTS+=1" $OLDPWD/tools/normalize_acl.py $config all > $TMPDIR/normalized if ! diff -u $config $TMPDIR/normalized >>config_failures; then @@ -25,8 +27,10 @@ function check_team_acl { } # Add more namespaces here, if necessary -for namespace in openstack openstack-infra stackforge; do - check_team_acl "${CONFIGS_LIST_BASE}${namespace}" +for namespace in $CONFIGS_LIST_BASE/*; do + if [ -d $namespace ] ; then + check_team_acl "${namespace}" + fi done num_errors=$(cat config_failures | grep "is not normalized" | wc -l) @@ -37,5 +41,6 @@ if [ $num_errors -ne 0 ]; then fi echo "Gerrit ACL configs are valid!" +echo "Checked $NUM_TESTS ACL files" popd diff --git a/tox.ini b/tox.ini index 33921c25ac..6b05f31d13 100644 --- a/tox.ini +++ b/tox.ini @@ -62,7 +62,7 @@ deps = commands = {toxinidir}/tools/check_valid_gerrit_projects.py gerrit/projects.yaml gerrit/acls zuul/main.yaml {toxinidir}/tools/check_projects_yaml_alphabetized.sh gerrit/projects.yaml - {toxinidir}/tools/check_valid_gerrit_config.sh gerrit/acls/ + {toxinidir}/tools/check_valid_gerrit_config.sh {toxinidir}/tools/check_gerrit_projects_changed.sh [testenv:venv]