[ovirt-devel] oVirt packages for JavaScript development have been updated

Greg Sheremeta gshereme at redhat.com
Fri Feb 10 16:52:10 UTC 2017


I didn't realize Ryan was already doing this, so here was my take
(attached). Maybe it helps.



On Fri, Feb 10, 2017 at 11:33 AM, Vojtech Szocs <vszocs at redhat.com> wrote:

>
>
> On Fri, Feb 10, 2017 at 5:30 PM, Ryan Barry <rbarry at redhat.com> wrote:
>
>> Nothing, but thanks.
>>
>> It is/was a question of time. I didn't expect the changes to
>> ovirt-engine-modules to make it into master as quickly as they did (to be
>> fair, it's been nearly a month since the initial meeting, but that month
>> passed very quickly prepping for the beta release).
>>
>> I'm pushing patches to cockpit-ovirt and ovirt-engine-nodejs-modules to
>> get cockpit-ovirt working on master again now.
>>
>
> Please add Greg & me as reviewers :-)​ also, if there are any open issues
> or questions, let us know.
>
>
>>
>> On Fri, Feb 10, 2017 at 6:56 AM, Greg Sheremeta <gshereme at redhat.com>
>> wrote:
>>
>>> I can assist too. What do you need? If it's easier, I'm available on IRC.
>>>
>>> On Fri, Feb 10, 2017 at 8:00 AM, Sandro Bonazzola <sbonazzo at redhat.com>
>>> wrote:
>>>
>>>> Vojtech, can you please help Ryan and Marek with cockpit-ovirt?
>>>>
>>>>
>>>> On Wed, Feb 8, 2017 at 3:29 PM, Vojtech Szocs <vszocs at redhat.com>
>>>> wrote:
>>>>
>>>>> Hello devs,
>>>>>
>>>>> following packages, intended as build-time dependencies of oVirt
>>>>> JavaScript projects, have been updated:
>>>>>
>>>>> * ovirt-engine-nodejs
>>>>> * ovirt-engine-nodejs-modules
>>>>> * ovirt-engine-yarn
>>>>>
>>>>> If you use those packages, please read on to learn how to adapt your
>>>>> project. oVirt Dashboard (master) is already adapted and you can use
>>>>> it as your reference.
>>>>>
>>>>> ==
>>>>>
>>>>> 1, move your project from npm to Yarn:
>>>>>
>>>>> - using nodejs-modules implies that your project moves from npm to
>>>>> Yarn, please do this as your first step
>>>>> - make sure to add yarn.lock file to source control: rm -rf
>>>>> node_modules && yarn install # generates yarn.lock
>>>>> - your automation/*.packages should contain something like this:
>>>>>
>>>>>   ovirt-engine-nodejs-6.9.4
>>>>>   ovirt-engine-nodejs-modules-1.0.3
>>>>>   ovirt-engine-yarn-0.19.1
>>>>>
>>>>> - since oVirt CI uses yum cache, always specify exact version of
>>>>> nodejs-modules in your automation/*.packages
>>>>> - in your RPM build script, make sure to set up Node.js env.: source
>>>>> /usr/share/ovirt-engine-nodejs-modules/setup-env.sh
>>>>>
>>>>> ==
>>>>>
>>>>> 2a, dependency handling - 1st time:
>>>>>
>>>>> - clone nodejs-modules repo & update the projects.list file - add
>>>>> URL(s) to your project's files (package.json + yarn.lock)
>>>>> - bump .z in RPM Version and reset the RPM Release number, submit
>>>>> patch to Gerrit
>>>>> - in your project, update automation/*.packages to use the right
>>>>> nodejs-modules version
>>>>>
>>>>> 2b, dependency handling - whenever your dependencies change:
>>>>>
>>>>> - clone nodejs-modules repo & bump RPM Release number, submit patch to
>>>>> Gerrit
>>>>> - in your project, update automation/*.packages to use the right
>>>>> nodejs-modules version
>>>>>
>>>>> ==
>>>>>
>>>>> Q: how does the new nodejs-modules work?
>>>>>
>>>>> A: instead of maintaining one big package.json file to specify all
>>>>> dependencies of all projects (effectively forcing all projects to use
>>>>> single dependency tree), it contains the projects.list file with
>>>>> URL(s) to specific project files.
>>>>>
>>>>> When building nodejs-modules RPM, it goes through the list of URL(s),
>>>>> downloading project's files (package.json + yarn.lock), then
>>>>> downloading required dependencies (using Yarn) and collecting their
>>>>> .tar.gz sources. The nodejs-modules RPM therefore contains a flat list
>>>>> of all .tar.gz sources of all dependencies of all projects.
>>>>>
>>>>> When you source the setup-env.sh script, it does, among other things,
>>>>> tell Yarn to use
>>>>> /usr/share/ovirt-engine-nodejs-modules/yarn-offline-cache containing
>>>>> all .tar.gz sources. Then, it runs Yarn in offline mode to populate
>>>>> your project's node_modules directory.
>>>>>
>>>>> ==
>>>>>
>>>>> Hope this helps.
>>>>>
>>>>> Regards,
>>>>> Vojtech
>>>>> _______________________________________________
>>>>> Devel mailing list
>>>>> Devel at ovirt.org
>>>>> http://lists.ovirt.org/mailman/listinfo/devel
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Sandro Bonazzola
>>>> Better technology. Faster innovation. Powered by community
>>>> collaboration.
>>>> See how it works at redhat.com
>>>>
>>>> _______________________________________________
>>>> Devel mailing list
>>>> Devel at ovirt.org
>>>> http://lists.ovirt.org/mailman/listinfo/devel
>>>>
>>>
>>>
>>>
>>> --
>>> Greg Sheremeta, MBA
>>> Red Hat, Inc.
>>> Sr. Software Engineer
>>> gshereme at redhat.com
>>>
>>
>>
>


-- 
Greg Sheremeta, MBA
Red Hat, Inc.
Sr. Software Engineer
gshereme at redhat.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ovirt.org/pipermail/devel/attachments/20170210/0f459766/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-WIP-migrate-to-yarn.patch
Type: text/x-patch
Size: 152121 bytes
Desc: not available
URL: <http://lists.ovirt.org/pipermail/devel/attachments/20170210/0f459766/attachment-0001.bin>


More information about the Devel mailing list