[openstack-dev] [horizon][neutron] tools/tox_install changes - breakage with constraints

Boden Russell bodenvmw at gmail.com
Thu Mar 22 14:42:07 UTC 2018

On 3/14/18 6:59 PM, Tony Breeds wrote:
> On Thu, Mar 15, 2018 at 07:16:11AM +0900, Akihiro Motoki wrote:
>> (1) it makes difficult to run tests in local environment
>> We have only released version of neutron/horizon on PyPI. It means
>> PyPI version (i.e. queens) is installed when we run tox in our local
>> development. Most neutron stadium projects and horizon plugins depends
>> on the latest master. Test run in local environment will be broken. We
>> need to install the latest neutron/horizon manually. This confuses
>> most developers. We need to ensure that tox can run successfully in a
>> same manner in our CI and local environments.
> This is an issue I agree and one we need to think about but it will be
> somewhat mitigated for local development by pbr siblings[1]
> In the short term, developers can do something like:
> for env in pep8,py35,py27 ; do
>    tox -e $env --notest
>    .tox/$env/bin/pip install -e /path/to/{horizon,neutron}
>    tox -e $env
> done
> Which is far from ideal but gives as a little breathing room to decide
> if we need to revert and try again in a while or persist with the plan
> as it stands.
> pbr siblings wont fix all the issues we have and still makes consumption of
> neutron and horizon (and plugins / stadium projects) difficult outside
> of test.

Unless I'm missing something, devstack is also impacted in these
scenarios and doesn't account for installing master branches of select
dependencies. As a result we are seeing failures in our external CI jobs
(that use devstack) due to invalid package versions.

Is the proper way to address this to specify the _REPO and _BRANCH in
our project's devstack lib sciprt(s) as needed so that devstack will
grab master for them?


More information about the OpenStack-dev mailing list