It's not clear from the repo how we go from git to tarball, or even rpm. We should add a helper to make it easier to automate and to improve accessibility to our projects.
attachment 0001-Ticket-48399-Add-helper-makefile-to-lib389-to-build-.patch
For make test we can use tox instead of calling pytest directly. As a benefit it will also install requirements and run tests in virtualenv.
make test
tox
pytest
Also for rpmbuild part python setup.py bdist --format=rpm will create src and rpm packages.
python setup.py bdist --format=rpm
IMO virtualenv creates more issues than it solves. If we do this, we would be using version of python libraries that may not match EL or fedora. There are enough other non-python dependencies required for these tests, that it's reasonable to expect a developer to yum install them.
Additionally, we do not want to use setup.py bdist. We are using the spec file so we build a like-for-like rpm with what will be built for release. The output of bdist may not match what we are building with our spec file, which defeats the purpose of this.
Replying to [comment:4 firstyear]:
IMO virtualenv creates more issues than it solves. If we do this, we would be using version of python libraries that may not match EL or fedora. There are enough other non-python dependencies required for these tests, that it's reasonable to expect a developer to yum install them. At least on RHEL6 we already have to use virtualenv or install packages using pip, because deps for lib389 and tests in ds tree are too old in repos (pytest as an example). Additionally, we do not want to use setup.py bdist. We are using the spec file so we build a like-for-like rpm with what will be built for release. The output of bdist may not match what we are building with our spec file, which defeats the purpose of this. bdist runs rpmbuild with the provided spec.
At least on RHEL6 we already have to use virtualenv or install packages using pip, because deps for lib389 and tests in ds tree are too old in repos (pytest as an example). Additionally, we do not want to use setup.py bdist. We are using the spec file so we build a like-for-like rpm with what will be built for release. The output of bdist may not match what we are building with our spec file, which defeats the purpose of this. bdist runs rpmbuild with the provided spec.
Replying to [comment:5 vashirov]:
Replying to [comment:4 firstyear]: Additionally, we do not want to use setup.py bdist. We are using the spec file so we build a like-for-like rpm with what will be built for release. The output of bdist may not match what we are building with our spec file, which defeats the purpose of this. bdist runs rpmbuild with the provided spec. Taking that back. bdist runs rpmbuild, but spec is different.
Additionally, we do not want to use setup.py bdist. We are using the spec file so we build a like-for-like rpm with what will be built for release. The output of bdist may not match what we are building with our spec file, which defeats the purpose of this. bdist runs rpmbuild with the provided spec. Taking that back. bdist runs rpmbuild, but spec is different.
OK, let's merge this. Later we can add additional targets for tests with tox and coverage.
commit 01d7c73d68f11537ea148b6f9fd168d3afa72ddf
To ssh://git.fedorahosted.org/git/389/lib389.git cef3392..01d7c73 master -> master
Metadata Update from @vashirov: - Issue assigned to firstyear - Issue set to the milestone: lib389 1.0.2
389-ds-base is moving from Pagure to Github. This means that new issues and pull requests will be accepted only in 389-ds-base's github repository.
This issue has been cloned to Github and is available here: - https://github.com/389ds/389-ds-base/issues/1730
If you want to receive further updates on the issue, please navigate to the github issue and click on subscribe button.
subscribe
Thank you for understanding. We apologize for all inconvenience.
Metadata Update from @spichugi: - Issue close_status updated to: wontfix (was: Fixed)
Login to comment on this ticket.