Re: [openstack-dev] [openstack-ansible] Limiting pip wheel builds for OpenStack clients
I added my comment/opinion on the bug. Thanks for reporting this, Major! __ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
Re: [openstack-dev] [openstack-ansible] Limiting pip wheel builds for OpenStack clients
Excerpts from Mooney, Sean K's message of 2018-01-24 20:30:19 +: > > > -Original Message- > > From: Major Hayden [mailto:ma...@mhtx.net] > > Sent: Wednesday, January 24, 2018 8:03 PM > > To: OpenStack Development Mailing List (not for usage questions) > > <openstack-dev@lists.openstack.org> > > Subject: [openstack-dev] [openstack-ansible] Limiting pip wheel builds > > for OpenStack clients > > > > Hey there, > > > > I was spelunking into the slow wheel build problems we've been seeing > > in CentOS and I found that our wheel build process was spending 4-6 > > minutes building cassandra-driver. The wheel build process usually > > takes 8-12 minutes, so half the time is being spent there. > > > > More digging revealed that cassandra-driver is a dependency of python- > > monascaclient, which is a dependency of heat. The requirements.txt for > > heat drags in all of the clients: > > > > https://github.com/openstack/heat/blob/master/requirements.txt > [Mooney, Sean K] the python-monascaclient package is presumably an optional > Dependency of heat as are the other client. > E.g. I would hope that if you are using a heat with a cloud that does not have > Monasca it could still run without have python-monascaclient installed so > All of the clients should proably be move form the requirements.txt to the > test-requiremetns.txt and only the minimal required packages for heat to work > should be in requirements.txt. This is what the "extras" section of setup.cfg is for. It should be possible to say something like: [extras] monasca = python-monascaclient>=1.0.0 (or whatever version) Then users of pip would install a heat that uses monasca with: pip install heat[monasca] and distro packagers would know why any extra packages are needed and could take appropriate action in their package specifications, too. > > > > We're already doing selective wheel builds and building only the wheels > > and venvs we need for the OpenStack services which are selected for > > deployment. Would it make sense to reduce the OpenStack client list for > > heat during the wheel/venv build? For example, if we're not deploying > > monasca, should we build/venv the python-monascaclient package (and its > > dependencies)? > > > > I've opened a bug: > > > > https://bugs.launchpad.net/openstack-ansible/+bug/1745215 > > > > -- > > Major Hayden > > > > ___ > > ___ > > OpenStack Development Mailing List (not for usage questions) > > Unsubscribe: OpenStack-dev- > > requ...@lists.openstack.org?subject:unsubscribe > > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev __ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
Re: [openstack-dev] [openstack-ansible] Limiting pip wheel builds for OpenStack clients
> -Original Message- > From: Major Hayden [mailto:ma...@mhtx.net] > Sent: Wednesday, January 24, 2018 8:03 PM > To: OpenStack Development Mailing List (not for usage questions) > <openstack-dev@lists.openstack.org> > Subject: [openstack-dev] [openstack-ansible] Limiting pip wheel builds > for OpenStack clients > > Hey there, > > I was spelunking into the slow wheel build problems we've been seeing > in CentOS and I found that our wheel build process was spending 4-6 > minutes building cassandra-driver. The wheel build process usually > takes 8-12 minutes, so half the time is being spent there. > > More digging revealed that cassandra-driver is a dependency of python- > monascaclient, which is a dependency of heat. The requirements.txt for > heat drags in all of the clients: > > https://github.com/openstack/heat/blob/master/requirements.txt [Mooney, Sean K] the python-monascaclient package is presumably an optional Dependency of heat as are the other client. E.g. I would hope that if you are using a heat with a cloud that does not have Monasca it could still run without have python-monascaclient installed so All of the clients should proably be move form the requirements.txt to the test-requiremetns.txt and only the minimal required packages for heat to work should be in requirements.txt. > > We're already doing selective wheel builds and building only the wheels > and venvs we need for the OpenStack services which are selected for > deployment. Would it make sense to reduce the OpenStack client list for > heat during the wheel/venv build? For example, if we're not deploying > monasca, should we build/venv the python-monascaclient package (and its > dependencies)? > > I've opened a bug: > > https://bugs.launchpad.net/openstack-ansible/+bug/1745215 > > -- > Major Hayden > > ___ > ___ > OpenStack Development Mailing List (not for usage questions) > Unsubscribe: OpenStack-dev- > requ...@lists.openstack.org?subject:unsubscribe > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev __ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
[openstack-dev] [openstack-ansible] Limiting pip wheel builds for OpenStack clients
Hey there, I was spelunking into the slow wheel build problems we've been seeing in CentOS and I found that our wheel build process was spending 4-6 minutes building cassandra-driver. The wheel build process usually takes 8-12 minutes, so half the time is being spent there. More digging revealed that cassandra-driver is a dependency of python-monascaclient, which is a dependency of heat. The requirements.txt for heat drags in all of the clients: https://github.com/openstack/heat/blob/master/requirements.txt We're already doing selective wheel builds and building only the wheels and venvs we need for the OpenStack services which are selected for deployment. Would it make sense to reduce the OpenStack client list for heat during the wheel/venv build? For example, if we're not deploying monasca, should we build/venv the python-monascaclient package (and its dependencies)? I've opened a bug: https://bugs.launchpad.net/openstack-ansible/+bug/1745215 -- Major Hayden __ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev