[openstack-dev] [requirements] Managing project requirements
Andreas Scheuring
scheuran at linux.vnet.ibm.com
Mon Feb 27 10:42:22 UTC 2017
Thanks all for your feedback. Seeing things much clearer now.
One last thing: How is the requirements bot being triggered?
- For OpenStack libraries by the jenkins job that handles the tag (if
the metadata is provided)?
- for external libraries? Is the a cronjob every 2 weeks or so? Or is it
even daily except during the requirements freeze?
Thanks!
--
-----
Andreas
IRC: andreas_s
On Fr, 2017-02-24 at 11:22 -0500, Tony Breeds wrote:
> On Fri, Feb 24, 2017 at 02:09:33PM +0100, Andreas Scheuring wrote:
> > Hi, I have a couple of questions in regards of how updates of
> > requirements are handled and what happens if I release a new version of
> > a library. I read along the README [1], but a few points are still
> > unclear to me.
> >
> > I have the following projects:
> >
> > * os-dpm [4]
> > * is a openstack library that gets release when required
> > * release is done manually (creating a tag and pushing it to gerrit)
> > * listed in global requirements & upper constraints
> > * zhmcclient [6]
> > * An "external" library that gets released to pypi
> > * listed in global requirements & upper constraints
> > * nova-dpm [2] & networking-dpm [3]
> > * are the main projects and therefore not listed in the openstack
> > requirements
> > * both specify the os-dpm and zhmcclient in their requirements.txt
> > * both are accepted in the projects.txt to allow the automated sync of
> > global requirements
> >
> >
> > Now the scenarios are
> >
> > A new version of the external library 'zhmcclient' gets released
> > ----------------------------------------------------------------
> >
> > What to do in order to get this reflected in upper constraints? At first
> > I was pushing manual updates to requirements txt, but the latest version
> > was pushed in by the OpenStack proposal bot around 10 days after the
> > release [4]. What's the right approach here?
> >
> > How can I ensure that I have to approve a new version for my projects,
> > before it gets applied there? (Once it is in upper constraints, it is
> > used in my project as well automatically). If I specify an upper
> > constraint in my requirements.txt file, then the requirements job
> > complains as the requirement does not exactly match the requirementused
> > in global requirements...
>
> So if you find that a new version of zhmcclient doesn't work for you the 2
> options available to you are:
> 1) Fix you project to tolerate the new (and old) version
> 2) Ban (via !=) in openstack/requirements:global-requirements.txt, and revert
> the relevant parts of the upper-constraints.txt change, which will then
> propagate to your project once it merges (via the proposal-bot)
>
> but fundamentally it boils down to we'll accept new versions into
> upper-constraints.txt and if it breaks we'll back out/correct it.
>
> If this proves to be overly problematic for you we can discuss ways for you to
> more actively engage with requirements management to ensure you can approve
> things before that land but that's atypical
>
> > A new version of the openstack library 'os-dpm' gets released
> > -------------------------------------------------------------
> >
> > As this is an OpenStack project - I think the flow is slightly
> > different: If a new release gets tagged with the corresponding metadata,
> > a patch to upper constraints is submitted automatically. (I still need
> > to figure out how that metdata should look like...)
>
> Doug's already answer this better than I could.
>
> > But the same question like above, can I control the upper constraints in
> > my project?
>
> You've opted into having your requirements managed by the requirements team.
> So the way to set bans or (if really needed) caps is as I outlined above via
> changes to global-requirements.txt.
>
> The management of *constraints* is global and not per-project.
>
> Yours Tony.
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
More information about the OpenStack-dev
mailing list