[OE-core] [poky] RFC: design of network based PR service

Koen Kooi koen at dominion.thruhere.net
Thu Apr 28 07:15:16 UTC 2011


Adding oe-core list to CC:

Op 28 apr 2011, om 09:08 heeft Lu, Lianhao het volgende geschreven:

> Hi Guys,
> 
> Here is the design of network based PR service, please help to review and 
> give you comment. Thanks a lot!
> 
> By changing the BB_SIGNATURE_HANDLER from "basic" to "basichash", the 
> task checksum will be in the stamp file, so this implies the end of PR bumps 
> since whenever a recipe change happens, the checksum of the appropriate 
> tasks will change so everything depends on that tasks will automatically got 
> rebuilt. (The checksum mechanism was introduced here at https://lists.yoctoproject.org/pipermail/yocto/2011-March/001157.html).
> 
> But there is one piece of building block missing there. Because the package 
> feeds needs the PR bumps because some relevant fields in the package file(i.e. 
> Version field in .ipk and .deb file, Release field in .rpm file) need it so the 
> generated package feeds can be used to upgrade/install new packages in the 
> user's linux distribution. So RP proposed this network based PR service at 
> https://lists.yoctoproject.org/pipermail/poky/2011-January/002123.html. 
> 
> Each embedded linux distribution entity using Yocto to build their distributions 
> should have a single network based PR service. Multiple build sources could send 
> the tuple (PN, task checksum) to this network based PR service. If the PR service 
> finds the corresponding (PN, task checksum) in its database, it will return the PR 
> values to the client. If not, it will bump the PR for that PN and return the new value 
> to the client. The returned value will only goes into the generated package files.
> 
> The PR network service will be a separate process other than bitbake, using the 
> XMLPRC to communicate with the client(i.e. bitbake process) and sqlite3 as the 
> backend database. The table definition would be something like
> (
>  PN TEXT,
>  CheckSum TEXT PRIMARY KEY,
>  PR INT
> )
> 
> Because different type of package files are generated in different tasks, (e.g.
> do_package_write_ipk, do_package_write_rpm), we will use the task checksum 
> of do_package to ask for PR value, so all the package files will have the same PR value.
> 
> To be backward compatible, if the PR value is already set in the recipe, the final PR value 
> that goes into the package files will be "PR in recipe.PR returned by the service".
> 
> ========================
> Lianhao Lu
> OTC SSG, Intel APAC R&D Ltd.
> 86-21-61167139
> 
> 
> 
> 
> 
> _______________________________________________
> poky mailing list
> poky at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/poky





More information about the Openembedded-core mailing list