Folks,

>>> Correct me if I am wrong, but isn't it what we have containers on master 
>>> node for?
>>> On the master node itself conflicts won’t happen because the components are 
>>> run in their containers.

Do you propose to use _separate_ package repository for each docker
container? (It means separate gerrit project for each package of each
container, including openstack projects)

On Thu, Mar 19, 2015 at 1:16 PM, Roman Prykhodchenko <m...@romcheg.me> wrote:
> Folks,
>
>> I assume you meant: "If a requirement that previously was only in Fuel
>> Requirements is merged to Global Requirements, it should be removed
>> from *Fuel* Requirements».
>
> Exactly.
>
>> I'm not sure it's good idea.
>> We should stay so close to upstream distro as we can. It should be
>> very important reason to update package against it's upstream distro
>
>
> The issue is the following: OpenStack’s components are tested against those 
> versions of dependencies, that are specified in their requirements. IIRC 
> those requirements are set up by pip so CI nodes contain latest versions of 
> python packages that match their specs.
>
> The question is whether it’s required to ship OpenStack services with 
> packages from a distro or with packages, that are used for testing.
>
>> Splitting of repositories doesn't help to solve python packages
>> conflicts because master node uses a number of openstack components.
>
> On the master node itself conflicts won’t happen because the components are 
> run in their containers.
>
>
> - romcheg
>
>
>> 19 бер. 2015 о 10:47 Dmitry Burmistrov <dburmist...@mirantis.com> 
>> написав(ла):
>>
>> Roman, all
>>
>>>>>        - OSCI mirror should contain the maximum version of a requirement 
>>>>> that matches its version specification.
>> I'm not sure it's good idea.
>> We should stay so close to upstream distro as we can. It should be
>> very important reason to update package against it's upstream distro
>> version.
>> If we update some package, we should maintain it too. Tracking bugs,
>> CVEs and so on. The more packages, the more efforts to support it.
>>
>>>>>  - Set up CI jobs to notify OSCI team if either Global Requirements or
>>>>> Fuel Requirements are changed.
>>>>>  - Set up requirements proposal jobs that will automatically propose
>>>>> changes to all fuel projects once either of requirements lists was changed
>> Need to be discussed and investigated.
>>
>> Sebastian, Dmitry,
>>
>>
>>>>> There are some plans (unfortunately I do not know details, so maybe 
>>>>> someone from OSCI could tell more) to split those repositories
>> Splitting of repositories doesn't help to solve python packages
>> conflicts because master node uses a number of openstack components.
>> Anyway it should be done for 7.0 milestone in order to separatre
>> master-node distro from environment one. (e.g. if we going to move
>> master-node to debian)
>>
>>
>>
>> On Thu, Mar 19, 2015 at 12:01 AM, Dmitry Borodaenko
>> <dborodae...@mirantis.com> wrote:
>>> Roman,
>>>
>>> I like this proposal very much, thanks for the idea and for putting
>>> together a straightforward process.
>>>
>>> I assume you meant: "If a requirement that previously was only in Fuel
>>> Requirements is merged to Global Requirements, it should be removed
>>> from *Fuel* Requirements".
>>>
>>> Sebastian,
>>>
>>> We have found ways to resolve the conflicts between clvm and docker,
>>> and between ruby versions 1.8 and 2.1, without introducing a separate
>>> package repo for Fuel master. I've updated the blueprint to make note
>>> of that:
>>> https://blueprints.launchpad.net/fuel/+spec/separate-repo-for-master-node
>>>
>>>
>>>
>>>
>>> On Wed, Mar 18, 2015 at 9:25 AM, Sebastian Kalinowski
>>> <skalinow...@mirantis.com> wrote:
>>>> I assume that you considered a situation when we have a common repository
>>>> with RPMs for Fuel master and for nodes.
>>>> There are some plans (unfortunately I do not know details, so maybe someone
>>>> from OSCI could tell more) to split those repositories. How this workflow
>>>> will work with those separated repos? Will we still need it?
>>>>
>>>> Thanks!
>>>> Sebastian
>>>>
>>>> 2015-03-18 11:04 GMT+01:00 Roman Prykhodchenko <m...@romcheg.me>:
>>>>>
>>>>> Hi folks,
>>>>>
>>>>> before you say «romcheg, go away and never come back again!», please read
>>>>> the story that caused me to propose this and the proposed solution. 
>>>>> Perhaps
>>>>> it makes you reconsider :)
>>>>>
>>>>> As you know for different reasons, among which are being able to set up
>>>>> everything online and bringing up-to-date packages, we maintain an OSCI
>>>>> repository which is used for building ISOs and deploying OpenStack 
>>>>> services.
>>>>> Managing that repo is a pretty hard job. Thus a dedicated group of people 
>>>>> is
>>>>> devoted to perform that duty, they are always busy because of a lot of
>>>>> responsibilities they have.
>>>>>
>>>>> At the same time Fuel’s developers are pretty energetic and always want to
>>>>> add new features to Fuel. For that they love to use different libraries,
>>>>> many of which aren’t in the OSCI mirror yet. So they ask OSCI guys to add
>>>>> more and more of those and I guess that’s pretty fine except one little
>>>>> thing — sometimes those libraries conflict with ones, required by 
>>>>> OpenStack
>>>>> services.
>>>>>
>>>>> To prevent that from happening someone has to check every patch against
>>>>> the OSCI repo and OpenStack’s global requirements, to detect whether a
>>>>> version bump or adding a new library is required an whether it can be
>>>>> performed. As you can guess, there’s too much of a human factor so
>>>>> statistically no one does that until problems appear. Moreover, theres’
>>>>> nothing but a «it’s not compatible with OpenStack» yelling from OSCI team
>>>>> that stops developers to change dependencies in Fuel.
>>>>>
>>>>> All the stuff described above causes sometimes tremendous time losses and
>>>>> is very problem-prone.
>>>>>
>>>>> I’d like to propose to make everyone’s life easier by following these
>>>>> steps:
>>>>>
>>>>> - Create a new project called Fuel Requirements, all changes to it should
>>>>> go through a standard review procedure
>>>>> - We strict ourselves to use only packages from both Fuel Requirements
>>>>> and Global Requirements for the version of OpenStack, Fuel is installing 
>>>>> in
>>>>> the following manner:
>>>>>    - If a requirement is in Global Requirements, the version spec in all
>>>>> Fuel’s components should be exactly like that.
>>>>>        - OSCI mirror should contain the maximum version of a requirement
>>>>> that matches its version specification.
>>>>>    - If a requirement is not in the global requirements list, then Fuel
>>>>> Requirements list should be used to check whether all Fuel’s components
>>>>> require the same version of a library/package.
>>>>>        - OSCI mirror should contain the maximum version of a requirement
>>>>> that matches its version specification.
>>>>>    - If a requirement that previously was only in Fuel Requirements is
>>>>> merged to Global Requirements, it should be removed from Global 
>>>>> Requirements
>>>>>  - Set up CI jobs in both OpenStack CI and FuelCI to check all patches
>>>>> against both Global Requirements and Fuel Requirements and block, if 
>>>>> either
>>>>> of checks doesn’t pass
>>>>>  - Set up CI jobs to notify OSCI team if either Global Requirements or
>>>>> Fuel Requirements are changed.
>>>>>  - Set up requirements proposal jobs that will automatically propose
>>>>> changes to all fuel projects once either of requirements lists was 
>>>>> changed,
>>>>> just like it’s done for OpenStack projects.
>>>>>
>>>>>
>>>>> These steps may look terribly hard, but most of the job is already done in
>>>>> OpenStack projects and therefore it can be reused for Fuel.
>>>>> Looking forward for your feedback folks!
>>>>>
>>>>>
>>>>> - romcheg
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> __________________________________________________________________________
>>>>> 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
>>>>
>>>
>>>
>>>
>>> --
>>> Dmitry Borodaenko
>>>
>>> __________________________________________________________________________
>>> 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 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

Reply via email to