I personally disagree with saying that if we wanted it make it usable by projects other than ones in the Ironic umbrella it should go into oslo. I think that non-ironic projects directly related to Ironic such as out of tree drivers etc, should be able to utilise the code placed into ironic-lib.
Neutron are doing a very similar thing for all their drivers/extensions they have broken out over the last 2 cycles, http://specs.openstack.org/openstack/neutron-specs/specs/liberty/neutron-li b.html. Making ironic-lib available to out of tree drivers etc also puts us into a good position to begin the work to stabilise things like the driver API. Neutron is making the rule that out of tree drivers shouldn¹t inherit/import anything from the neutron core code base, only neutron-lib, they are doing this to provide a stable interface that shouldn¹t be broken by changes to neutron core. I think we could do the same, with in-tree drivers dog-fooding the driver api we provide in ironic-lib. Sam On 16/05/2016 15:14, "Lucas Alvares Gomes" <[email protected]> wrote: >Hi, > >Thanks for starting this discussion Ruby. > >On Mon, May 16, 2016 at 2:57 PM, Loo, Ruby <[email protected]> wrote: >> Hi, >> >> A patch to ironic-lib made me wonder about what is our supported usage >>of >> ironic-lib. Or even the intent/scope of it. This patch changes a method, >> Œbootable¹ parameter is removed and Œboot_flag¹ parameter is added [1]. >> >> If this library/method is used by some out-of-tree thing (or even some >> in-tree but outside of ironic), this will be a breaking change. If this >> library is meant to be internal to ironic program itself, and to e.g. >>only >> be used by ironic and IPA, then that is different. I was under the >> impression that it was a library and meant to be used by whatever, no >> restrictions on what that whatever was. It would be WAY easier if we >>limited >> this for usage by only a few specified projects. >> >> What do people think? >> > >I still believe that the ironic-lib project was designed to share code >between the Ironic projects _only_. Otherwise, if it the code was >supposed to be shared across multiple projects we should have put it >in oslo instead. > >The governance description is a bit vague [0], it does say: "A python >library of common ironic utilities.". Does it include out-of-tree >ironic-related code? I would like to think that it does not. The fact >that ( IIRC ) we never stated that this is a public library, there's >no documentation of any methods/modules there, no release notes, no >sample usages, etc... Makes it a bit unsuitable for 3rd party >consumption. > >That said, I'm not totally against make this library suitable for a >broader usage but this will require more thoughts on it and effort. > >[0] >https://github.com/openstack-infra/project-config/blob/920441f2fc02df89624 >5b53e6f18b4ea6a0252a0/gerrit/projects.yaml#L2193 > >Cheers, >Lucas > >__________________________________________________________________________ >OpenStack Development Mailing List (not for usage questions) >Unsubscribe: [email protected]?subject:unsubscribe >http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev __________________________________________________________________________ OpenStack Development Mailing List (not for usage questions) Unsubscribe: [email protected]?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
