diff options
author | Christian Heimes <cheimes@redhat.com> | 2017-03-17 10:35:48 +0100 |
---|---|---|
committer | Tomas Krizek <tkrizek@redhat.com> | 2017-03-22 15:16:25 +0100 |
commit | fe17d187f9f2cbac28fe369cbcdd697d85105481 (patch) | |
tree | 2edd7ef1a5df1ad56bb7ea38da5575aa32c44eb6 | |
parent | e263cb46cba604421d5ed2e1dbf5dd1d66ce0221 (diff) | |
download | freeipa-fe17d187f9f2cbac28fe369cbcdd697d85105481.tar.gz freeipa-fe17d187f9f2cbac28fe369cbcdd697d85105481.tar.xz freeipa-fe17d187f9f2cbac28fe369cbcdd697d85105481.zip |
Constrain wheel package versions
The presence of IPA packages on PyPI revealed an interesting issue with
make wheel_bundle. pip gives final releases a higher precedence than our
development packages. make wheel_bundle downloads ipa 4.5.0 from PyPI
instead of using our own wheels.
Use a constraint file to enforce correct versions.
https://pagure.io/freeipa/issue/6468
Signed-off-by: Christian Heimes <cheimes@redhat.com>
Reviewed-By: Martin Basti <mbasti@redhat.com>
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | .wheelconstraints.in | 11 | ||||
-rw-r--r-- | Makefile.am | 19 |
3 files changed, 28 insertions, 3 deletions
diff --git a/.gitignore b/.gitignore index 7e78a9308..90d7d233a 100644 --- a/.gitignore +++ b/.gitignore @@ -66,6 +66,7 @@ freeipa2-dev-doc /rpmbuild/ # Build /ipasetup.py +/.wheelconstraints *.egg-info # Subdirectories diff --git a/.wheelconstraints.in b/.wheelconstraints.in new file mode 100644 index 000000000..eba4ec99a --- /dev/null +++ b/.wheelconstraints.in @@ -0,0 +1,11 @@ +# placeholder +freeipa == @VERSION@ +ipa == @VERSION@ +# actual packages +ipaclient == @VERSION@ +ipalib == @VERSION@ +ipaplatform == @VERSION@ +ipapython == @VERSION@ +ipaserver == @VERSION@ +ipatests == @VERSION@ + diff --git a/Makefile.am b/Makefile.am index df4e05a65..af2231529 100644 --- a/Makefile.am +++ b/Makefile.am @@ -34,6 +34,11 @@ ipasetup.py: ipasetup.py.in $(CONFIG_STATUS) -e 's|@VERSION[@]|$(VERSION)|g' \ $< > $@ +.wheelconstraints: .wheelconstraints.in $(CONFIG_STATUS) + $(AM_V_GEN)sed \ + -e 's|@VERSION[@]|$(VERSION)|g' \ + $< > $@ + EXTRA_DIST = .mailmap \ ACI.txt \ API.txt \ @@ -46,7 +51,8 @@ EXTRA_DIST = .mailmap \ doc \ freeipa.spec.in \ ipasetup.py.in \ - pylintrc + pylintrc \ + .wheelconstraints.in clean-local: rm -rf "$(RPMBUILD)" @@ -232,8 +238,15 @@ bdist_wheel: $(WHEELDISTDIR) $(MAKE) $(AM_MAKEFLAGS) -C $${dir} $@ || exit 1; \ done -wheel_bundle: $(WHEELBUNDLEDIR) bdist_wheel - $(PYTHON) -m pip wheel --wheel-dir $(WHEELBUNDLEDIR) $(WHEELDISTDIR)/*.whl +wheel_bundle: $(WHEELBUNDLEDIR) bdist_wheel .wheelconstraints + rm -f $(foreach item,$(IPACLIENT_SUBDIRS),$(WHEELBUNDLEDIR)/$(item)-*.whl) + $(PYTHON) -m pip wheel \ + --disable-pip-version-check \ + --constraint .wheelconstraints \ + --find-links $(WHEELDISTDIR) \ + --find-links $(WHEELBUNDLEDIR) \ + --wheel-dir $(WHEELBUNDLEDIR) \ + $(IPACLIENT_SUBDIRS) wheel_placeholder: $(WHEELDISTDIR) for dir in $(IPA_PLACEHOLDERS); do \ |