|
@@ -1,14 +1,44 @@
|
|
|
#!/usr/bin/env bash
|
|
|
+set -eu
|
|
|
|
|
|
+ANSIBLE_UPSTREAM_FILES=(
|
|
|
+ 'inventory/aws/hosts/ec2.py'
|
|
|
+ 'inventory/gce/hosts/gce.py'
|
|
|
+ 'inventory/libvirt/hosts/libvirt_generic.py'
|
|
|
+ 'inventory/openstack/hosts/nova.py'
|
|
|
+ 'lookup_plugins/sequence.py'
|
|
|
+ )
|
|
|
|
|
|
OLDREV=$1
|
|
|
NEWREV=$2
|
|
|
-TRG_BRANCH=$3
|
|
|
+#TRG_BRANCH=$3
|
|
|
|
|
|
PYTHON=/var/lib/jenkins/python27/bin/python
|
|
|
|
|
|
-/usr/bin/git diff --name-only $OLDREV $NEWREV --diff-filter=ACM | \
|
|
|
- grep ".py$" | \
|
|
|
- xargs -r -I{} ${PYTHON} -m pylint --rcfile ${WORKSPACE}/git/.pylintrc {}
|
|
|
+PY_DIFF=$(/usr/bin/git diff --name-only $OLDREV $NEWREV --diff-filter=ACM | grep ".py$")
|
|
|
|
|
|
-exit $?
|
|
|
+FILES_TO_TEST=""
|
|
|
+
|
|
|
+for PY_FILE in $PY_DIFF; do
|
|
|
+ IGNORE_FILE=false
|
|
|
+ for UPSTREAM_FILE in "${ANSIBLE_UPSTREAM_FILES[@]}"; do
|
|
|
+ if [ "${PY_FILE}" == "${UPSTREAM_FILE}" ]; then
|
|
|
+ IGNORE_FILE=true
|
|
|
+ break
|
|
|
+ fi
|
|
|
+ done
|
|
|
+
|
|
|
+ if [ "${IGNORE_FILE}" == true ]; then
|
|
|
+ echo "Skipping file ${PY_FILE} as an upstream Ansible file..."
|
|
|
+ continue
|
|
|
+ fi
|
|
|
+
|
|
|
+ if [ -e "${PY_FILE}" ]; then
|
|
|
+ FILES_TO_TEST="${FILES_TO_TEST} ${PY_FILE}"
|
|
|
+ fi
|
|
|
+done
|
|
|
+
|
|
|
+if [ "${FILES_TO_TEST}" != "" ]; then
|
|
|
+ echo "Testing files: ${FILES_TO_TEST}"
|
|
|
+ ${PYTHON} -m pylint --rcfile ${WORKSPACE}/git/.pylintrc ${FILES_TO_TEST}
|
|
|
+fi
|