[openstack-dev] All hail the new per-region pypi, wheel and apt mirrors
Tony Breeds
tony at bakeyournoodle.com
Thu Feb 11 03:41:03 UTC 2016
On Wed, Feb 10, 2016 at 07:07:22PM -0800, Clark Boylan wrote:
> On Wed, Feb 10, 2016, at 06:02 PM, Tony Breeds wrote:
> > On Wed, Feb 10, 2016 at 06:45:25PM -0600, Monty Taylor wrote:
> > > Hey everybody,
> > >
> > > tl;dr - We have new AFS-based consistent per-region mirrors of PyPI and APT
> > > repos with additional wheel repos containing pre-built wheels for all the
> > > modules in global-requirements
> >
> > Woot!
> >
> > I do have a couple of questions about the pre-built wheels:
> >
> > 1) You say global-requirements, I assume this includes upper-constraints
> > as
> > well. Do you check that the version of each library as listed in
> > upper-constraints does exist on the mirror? How many versions of
> > each
> > library do you build wheels for?
>
> It explicitly builds the wheels using upper constraints.
Ahh okay.
> > 2) How doe this work on stable branches? I'm guessing you look at the
> > g-r for
> > each branch, build the wheels and then upload snapshot the whole
> > bunch. Verify
> > that and release it for consumption.
> It iterates through the stable branches and builds wheels for the upper
> constraints that it can find. Looks like it should noop if no
> constraints are present.
Okay We'll need to think about that one as the contrainst in stable/kilo can
be bogus, sometime we have a version in contraints that isn't valid compared
to g-r
We don't enforce constrains on kilo so that causes different pain :D
> > 3) Do you mirror all matches for a requirements spec or just the highest
> > one
> > that matches?
> We mirror all of the wheels that we have built over time. As upper
> constraints move new wheels will be added. There isn't currently a
> delete step but we may add one in the future if necessary.
Ok.
> > 4) Will we see version selection vary between the gate and tests run
> > outside the
> > gate?
> Not if you use constraints. Pip's selection of deps are constraints win,
> if no constraints then take the highest version available and if that
> version is available as a wheel use the wheel.
Right I was thinking of $library adds a release I rin tox (uncontstrained) at
home and get that new release I then run the same (unconstrained) test in the
gate and get the wheel frmo the cache. Just somethign to keep in mind not a
problem as such.
> Code is at
> https://git.openstack.org/cgit/openstack-infra/project-config/tree/jenkins/scripts/wheel-build.sh.
Wow okay that is remarkably simple :)
Thanks Clark
Yours Tony.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: not available
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20160211/0d8fe354/attachment.pgp>
More information about the OpenStack-dev
mailing list