Re: [oe-core][RFC PATCH 0/3] Add packagefeed recipe class

2023-07-20 Thread Alexander Kanavin
On Wed, 19 Jul 2023 at 23:14, Charlie Johnston  wrote:
> I could see reusing the logic from the package_manager, but it would require
> changes to allow indices to be created for arbitrary directories (instead of 
> being
> hardcoded based on package type), and adding some mechanism to 
> create_packages_dir
> in the package_manager/__init__.py to handle feed creation tasks/feeds being
> dependent on other feeds.
>
> Are there limitations on changing the API of those classes and methods to add
> inputs? Alternatively, I could split the overlapping code into a helper method
> instead?

Thanks for the explanation!

The classes were written for the purpose of generating root
filesystems for images by constructing filtered package feeds in
images' ${WORKDIR}, but I think they should indeed be extended and
tweaked to allow generic feeds that can be then exported to
deploydirs. In particular create_packages_dir already does what is
needed for a filtered feed, and there really shouldn't be a second
implementation of that logic elsewhere.

Alex

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184651): 
https://lists.openembedded.org/g/openembedded-core/message/184651
Mute This Topic: https://lists.openembedded.org/mt/100243054/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [oe-core][RFC PATCH 0/3] Add packagefeed recipe class

2023-07-19 Thread Charlie Johnston
Sure! 

Currently to create a feed, users build the packages they want in the feed
and then bitbake package-index. That workflow unfortunately has a number of
limitations, the mains ones being:
- The index creation methods ONLY work on the package deploy directory. If
there are packages that are not meant to be in the feed in the deploy
directory, they will be included in the package index. Additionally, multiple
feeds cannot be built in one command due to this limitation.
- If a package feed depends on another package feed being side-by-side to it
(that is, if packages in Feed A depend on packages in Feed B and users of Feed B
are required to use Feed A) a user would have to manually remove duplicate 
packages
from the deploy directory before making Feed B's index.

These changes instead create a packagefeed class that can be inherited and will
create a feed in the tmp/deploy/feeds/ directory. This allows control 
over
the packages to be included in the feed, as the packages are hardlinked or 
copied
from the deploy directory similar to how feeds are constructed for rootfs 
creation.

I could see reusing the logic from the package_manager, but it would require
changes to allow indices to be created for arbitrary directories (instead of 
being
hardcoded based on package type), and adding some mechanism to 
create_packages_dir
in the package_manager/__init__.py to handle feed creation tasks/feeds being
dependent on other feeds. 

Are there limitations on changing the API of those classes and methods to add
inputs? Alternatively, I could split the overlapping code into a helper method
instead?

Thanks,
Charlie Johnston


On 7/19/23 15:59, Alexander Kanavin wrote:
> Specifically please take a look at,
> ./recipes-core/meta/package-index.bb
> and
> generate_index_files() in lib/oe/package_manager/__init__.py
> 
> I think we should rather extend these instead of adding overlapping
> code which works differently.
> 
> Alex
> 
> On Wed, 19 Jul 2023 at 22:39, Alexander Kanavin via
> lists.openembedded.org 
> wrote:
>>
>> You need to start by describing the use case. What problem does the
>> code solve that existing packagefeed code does not? Can we rather
>> extend the already existing code, its tests, and its documentation, to
>> support that use case?
>>
>> Alex
>>
>>
>> On Wed, 19 Jul 2023 at 22:03, Charlie Johnston  
>> wrote:
>>>
>>> Hello,
>>>
>>> I've been working on a packagefeed.bbclass to allow recipes that define a 
>>> feed. I have a working prototype which has been tested against poky using 
>>> all 3 package types.
>>> This is my first time submitting this type of change, so I'm looking for 
>>> some feedback to cover the gaps in my knowledge.
>>> Are there tests that need to be added for this type of change?
>>> Should this type of recipe class be SSTATE cache enabled?
>>> What documentation changes are necessary for this type of change?
>>>
>>> Thanks,
>>> Charlie Johnston
>>> charlie.johns...@ni.com
>>>
>>>
>>>
>>>
>>>
>>
>> 
>>


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184615): 
https://lists.openembedded.org/g/openembedded-core/message/184615
Mute This Topic: https://lists.openembedded.org/mt/100243054/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [oe-core][RFC PATCH 0/3] Add packagefeed recipe class

2023-07-19 Thread Alexander Kanavin
Specifically please take a look at,
./recipes-core/meta/package-index.bb
and
generate_index_files() in lib/oe/package_manager/__init__.py

I think we should rather extend these instead of adding overlapping
code which works differently.

Alex

On Wed, 19 Jul 2023 at 22:39, Alexander Kanavin via
lists.openembedded.org 
wrote:
>
> You need to start by describing the use case. What problem does the
> code solve that existing packagefeed code does not? Can we rather
> extend the already existing code, its tests, and its documentation, to
> support that use case?
>
> Alex
>
>
> On Wed, 19 Jul 2023 at 22:03, Charlie Johnston  
> wrote:
> >
> > Hello,
> >
> > I've been working on a packagefeed.bbclass to allow recipes that define a 
> > feed. I have a working prototype which has been tested against poky using 
> > all 3 package types.
> > This is my first time submitting this type of change, so I'm looking for 
> > some feedback to cover the gaps in my knowledge.
> > Are there tests that need to be added for this type of change?
> > Should this type of recipe class be SSTATE cache enabled?
> > What documentation changes are necessary for this type of change?
> >
> > Thanks,
> > Charlie Johnston
> > charlie.johns...@ni.com
> >
> >
> >
> >
> >
>
> 
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184614): 
https://lists.openembedded.org/g/openembedded-core/message/184614
Mute This Topic: https://lists.openembedded.org/mt/100243054/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [oe-core][RFC PATCH 0/3] Add packagefeed recipe class

2023-07-19 Thread Alexander Kanavin
You need to start by describing the use case. What problem does the
code solve that existing packagefeed code does not? Can we rather
extend the already existing code, its tests, and its documentation, to
support that use case?

Alex


On Wed, 19 Jul 2023 at 22:03, Charlie Johnston  wrote:
>
> Hello,
>
> I've been working on a packagefeed.bbclass to allow recipes that define a 
> feed. I have a working prototype which has been tested against poky using all 
> 3 package types.
> This is my first time submitting this type of change, so I'm looking for some 
> feedback to cover the gaps in my knowledge.
> Are there tests that need to be added for this type of change?
> Should this type of recipe class be SSTATE cache enabled?
> What documentation changes are necessary for this type of change?
>
> Thanks,
> Charlie Johnston
> charlie.johns...@ni.com
>
>
>
> 
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184611): 
https://lists.openembedded.org/g/openembedded-core/message/184611
Mute This Topic: https://lists.openembedded.org/mt/100243054/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[oe-core][RFC PATCH 0/3] Add packagefeed recipe class

2023-07-19 Thread Charlie Johnston
Hello,

I've been working on a packagefeed.bbclass to allow recipes that define a feed. 
I have a working prototype which has been tested against poky using all 3 
package types.
This is my first time submitting this type of change, so I'm looking for some 
feedback to cover the gaps in my knowledge.
Are there tests that need to be added for this type of change?
Should this type of recipe class be SSTATE cache enabled?
What documentation changes are necessary for this type of change?

Thanks,
Charlie Johnston
charlie.johns...@ni.com



-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184601): 
https://lists.openembedded.org/g/openembedded-core/message/184601
Mute This Topic: https://lists.openembedded.org/mt/100243054/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-