[RFC][PATCH] ktl/ubuntu.py: fix series lookup for custom backports

Stefan Bader stefan.bader at canonical.com
Tue Oct 17 09:05:59 UTC 2017


On 13.10.2017 09:59, Juerg Haefliger wrote:
> This fixes the verify-release-ready release check for linux-aws and
> linux-gcp. But the generic checking of all packages against the list of
> backports concerns me a little. Can we have backport packages with the
> same name in different series? Specifically, there is a linux-aws
> derivative in xenial and a linux-aws xenial backport for trusty.

Hm, to me this sounds like you answered your question right after asking it. But
I guess from the code, the question is probably "is it ok". I think in this
case, yes as long as both linux-aws packages are backports and if the returned
series would not matter.

I am not sure, does this check iterate over the whole db or "just" over the keys
of one series? Probably all, so returned name would be rather a list. I see that
we soon get the problem with hwe/hwe-edge once there is the next LTS and we
stick to the naming...

-Stefan
> 
> On the other hand, modifying verify-release-ready every time we add
> another of these custom thingies isn't the best thing to do.
> 
> ...Juerg
> 
> 
> On 10/13/2017 09:55 AM, Juerg Haefliger wrote:
>> Currently, only linux-azure is checked against the list of backports.
>> Relax that check and compare all packages against the list of backports,
>> and if found, return its target series.
>>
>> Signed-off-by: Juerg Haefliger <juerg.haefliger at canonical.com>
>> ---
>>  ktl/ubuntu.py | 19 +++++++++----------
>>  1 file changed, 9 insertions(+), 10 deletions(-)
>>
>> diff --git a/ktl/ubuntu.py b/ktl/ubuntu.py
>> index 884ed9765605..0bc2aa182125 100644
>> --- a/ktl/ubuntu.py
>> +++ b/ktl/ubuntu.py
>> @@ -234,16 +234,15 @@ class Ubuntu:
>>                          retval = entry['name']
>>                          series_version = entry['series_version']
>>  
>> -            # linux-azure is a backport that doesn't contain the 'upstream'
>> -            # series number on the package name, so we need to look for it
>> -            # first and then look for the target series.
>> -            if package.startswith('linux-azure'):
>> -                for entry in self.db.values():
>> -                    try:
>> -                        if len(set(['linux', series_version]) & set(entry['backport-packages'][package])) == 2:
>> -                            retval = entry['name']
>> -                    except KeyError:
>> -                        pass
>> +            # Check if the package is a 'custom' backport and if so, return
>> +            # its target series name
>> +            for entry in self.db.values():
>> +                try:
>> +                    if entry['backport-packages'][package] == ['linux', series_version]:
>> +                        retval = entry['name']
>> +                        break
>> +                except KeyError:
>> +                    pass
>>  
>>          return retval
>>  
>>
> 
> 
> 


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20171017/0c460bfe/attachment.sig>


More information about the kernel-team mailing list