summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2014-03-24 06:27:02 +0000
committerGerrit Code Review <review@openstack.org>2014-03-24 06:27:02 +0000
commita49e7f1eaa628083af819e4d7c2f396da32fc5dd (patch)
tree52a1f7fad2b25b9aa26aca1b97720503b6d9dcb8
parent40b8bce40be59d090e948ef83bae137f88d8b049 (diff)
parent339f3e4de075d7790286e993b525d81756a763ca (diff)
downloadpython-heatclient-a49e7f1eaa628083af819e4d7c2f396da32fc5dd.tar.gz
Merge "Sort requirement files in alphabetical order"
-rw-r--r--requirements.txt4
-rw-r--r--test-requirements.txt6
-rwxr-xr-xtools/requirements_style_check.sh32
-rw-r--r--tox.ini1
4 files changed, 38 insertions, 5 deletions
diff --git a/requirements.txt b/requirements.txt
index 2f54179..c21ca62 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,8 +1,8 @@
-pbr>=0.6,<1.0
argparse
iso8601>=0.1.8
+pbr>=0.6,<1.0
PrettyTable>=0.7,<0.8
python-keystoneclient>=0.6.0
PyYAML>=3.1.0
-six>=1.4.1
requests>=1.1
+six>=1.4.1
diff --git a/test-requirements.txt b/test-requirements.txt
index 8202de3..d85a7b9 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -1,11 +1,11 @@
-# Hacking already pins down pep8, pyflakes and flake8
-hacking>=0.8.0,<0.9
coverage>=3.6
discover
fixtures>=0.3.14
+# Hacking already pins down pep8, pyflakes and flake8
+hacking>=0.8.0,<0.9
mock>=1.0
mox3>=0.7.0
sphinx>=1.1.2,<1.2
-testscenarios>=0.4
testrepository>=0.0.18
+testscenarios>=0.4
testtools>=0.9.34
diff --git a/tools/requirements_style_check.sh b/tools/requirements_style_check.sh
new file mode 100755
index 0000000..ccbff3b
--- /dev/null
+++ b/tools/requirements_style_check.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+#
+# Enforce the requirement that dependencies are listed in the input
+# files in alphabetical order.
+
+# FIXME(dhellmann): This doesn't deal with URL requirements very
+# well. We should probably sort those on the egg-name, rather than the
+# full line.
+
+function check_file() {
+ typeset f=$1
+
+ # We don't care about comment lines.
+ grep -v '^#' $f > ${f}.unsorted
+ sort -i -f ${f}.unsorted > ${f}.sorted
+ diff -c ${f}.unsorted ${f}.sorted
+ rc=$?
+ rm -f ${f}.sorted ${f}.unsorted
+ return $rc
+}
+
+exit_code=0
+for filename in $@
+do
+ check_file $filename
+ if [ $? -ne 0 ]
+ then
+ echo "Please list requirements in $filename in alphabetical order" 1>&2
+ exit_code=1
+ fi
+done
+exit $exit_code
diff --git a/tox.ini b/tox.ini
index c4d4242..36a8c0d 100644
--- a/tox.ini
+++ b/tox.ini
@@ -16,6 +16,7 @@ commands = python setup.py testr --slowest --testr-args='{posargs}'
[testenv:pep8]
commands = flake8
+ {toxinidir}/tools/requirements_style_check.sh requirements.txt test-requirements.txt
[testenv:venv]
commands = {posargs}