Skip to content

Commit 76db789

Browse files
committed
add tooling to freeze upstream requirements
1 parent 9127509 commit 76db789

File tree

2 files changed

+37
-0
lines changed

2 files changed

+37
-0
lines changed

test/freeze-upstream-requirements.sh

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
#!/bin/bash
2+
# Minimal wrapper script for upstream requirements install and freeze.
3+
# We do this here rather than as tox commands because tox does not support output redirection.
4+
if [ -z ${1} ]; then
5+
exit 1
6+
fi
7+
8+
pip install -r requirements.txt
9+
pip install -r test/requirements.txt
10+
pip freeze > ${1}

tox.ini

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,33 @@ sitepackages = False
7070
deps = -rtest/requirements.txt
7171
commands = {[testenv:base-command]commands} -m "local and not slow and not veryslow and not nope"
7272

73+
# Collect requirements for use in upstream tests
74+
[testenv:freeze-upstream-requirements-base]
75+
sitepackages = False
76+
skip_install = True
77+
recreate = True
78+
deps =
79+
commands =
80+
{toxinidir}/test/freeze-upstream-requirements.sh
81+
82+
# Freeze for Python 2.7
83+
[testenv:freeze-upstream-requirements-py27]
84+
basepython = python2.7
85+
sitepackages = {[testenv:freeze-upstream-requirements-base]sitepackages}
86+
skip_install = {[testenv:freeze-upstream-requirements-base]skip_install}
87+
recreate = {[testenv:freeze-upstream-requirements-base]recreate}
88+
deps = {[testenv:freeze-upstream-requirements-base]deps}
89+
commands = {[testenv:freeze-upstream-requirements-base]commands} test/upstream-requirements-py27.txt
90+
91+
# Freeze for Python 3.7
92+
[testenv:freeze-upstream-requirements-py37]
93+
basepython = python3.7
94+
sitepackages = {[testenv:freeze-upstream-requirements-base]sitepackages}
95+
skip_install = {[testenv:freeze-upstream-requirements-base]skip_install}
96+
recreate = {[testenv:freeze-upstream-requirements-base]recreate}
97+
deps = {[testenv:freeze-upstream-requirements-base]deps}
98+
commands = {[testenv:freeze-upstream-requirements-base]commands} test/upstream-requirements-py37.txt
99+
73100
# Verify that tests can be successfully run from the source build.
74101
[testenv:sourcebuildcheck]
75102
basepython = python3

0 commit comments

Comments
 (0)