Need to backport this to be able to match tag names that contain dashes:
http://bazaar.launchpad.net/~simplestreams-dev/simplestreams/trunk/revision/445
commit 2df782018dda0b58f2296b981e6eef2cc08b9ab0 Author: Lee Trager <email address hidden> Date: Mon Oct 17 13:26:06 2016 -0700
Allow filtered fields to contain a '-'
diff --git a/simplestreams/filters.py b/simplestreams/filters.py index 5e93ce4..3818949 100644 --- a/simplestreams/filters.py +++ b/simplestreams/filters.py @@ -22,7 +22,7 @@ import re
class ItemFilter(object): def __init__(self, content, noneval=""): - rparsefmt = r"(\w+)[ ]*([!]{0,1}[=~])[ ]*(.*)[ ]*$" + rparsefmt = r"([\w|\-]+)[ ]*([!]{0,1}[=~])[ ]*(.*)[ ]*$" parsed = re.match(rparsefmt, content)
if not parsed:
I was trying to match by bootloader-type:
sstream-mirror --progress --max=1 --keyring=/usr/share/keyrings/ubuntu-cloudimage-keyring.gpg http://images.maas.io/ephemeral-v3/daily/ ~/mirror/images.maas.io/ephemeral-v3/daily/ 'bootloader-type=~(pxe|(^$))' 'arch=amd64' 'subarch~((ga-16.04)|(^$))' 'kflavor~((generic)|(^$))' 'content_id~((com.ubuntu.maas:daily:1:bootloader-download)|com.ubuntu.maas.daily:v3)' Traceback (most recent call last): File "/usr/bin/sstream-mirror", line 157, in <module> main() File "/usr/bin/sstream-mirror", line 112, in main filter_list = filters.get_filters(args.filters) File "/usr/lib/python3/dist-packages/simplestreams/filters.py", line 62, in get_filters flist.append(ItemFilter(f, noneval=noneval)) File "/usr/lib/python3/dist-packages/simplestreams/filters.py", line 29, in __init__ raise ValueError("Unable to parse expression %s" % content) ValueError: Unable to parse expression bootloader-type=~(pxe|(^$))
Need to backport this to be able to match tag names that contain dashes:
http:// bazaar. launchpad. net/~simplestre ams-dev/ simplestreams/ trunk/revision/ 445
commit 2df782018dda0b5 8f2296b981e6eef 2cc08b9ab0
Author: Lee Trager <email address hidden>
Date: Mon Oct 17 13:26:06 2016 -0700
Allow filtered fields to contain a '-'
diff --git a/simplestreams /filters. py b/simplestreams /filters. py /filters. py /filters. py
index 5e93ce4..3818949 100644
--- a/simplestreams
+++ b/simplestreams
@@ -22,7 +22,7 @@ import re
class ItemFilter(object):
def __init__(self, content, noneval=""):
- rparsefmt = r"(\w+)[ ]*([!]{0,1}[=~])[ ]*(.*)[ ]*$"
+ rparsefmt = r"([\w|\-]+)[ ]*([!]{0,1}[=~])[ ]*(.*)[ ]*$"
parsed = re.match(rparsefmt, content)
if not parsed:
I was trying to match by bootloader-type:
sstream-mirror --progress --max=1 --keyring= /usr/share/ keyrings/ ubuntu- cloudimage- keyring. gpg http:// images. maas.io/ ephemeral- v3/daily/ ~/mirror/ images. maas.io/ ephemeral- v3/daily/ 'bootloader- type=~( pxe|(^$ ))' 'arch=amd64' 'subarch~ ((ga-16. 04)|(^$ ))' 'kflavor~ ((generic) |(^$))' 'content_ id~((com. ubuntu. maas:daily: 1:bootloader- download) |com.ubuntu. maas.daily: v3)' sstream- mirror" , line 157, in <module> sstream- mirror" , line 112, in main get_filters( args.filters) python3/ dist-packages/ simplestreams/ filters. py", line 62, in get_filters append( ItemFilter( f, noneval=noneval)) python3/ dist-packages/ simplestreams/ filters. py", line 29, in __init__ type=~( pxe|(^$ ))
Traceback (most recent call last):
File "/usr/bin/
main()
File "/usr/bin/
filter_list = filters.
File "/usr/lib/
flist.
File "/usr/lib/
raise ValueError("Unable to parse expression %s" % content)
ValueError: Unable to parse expression bootloader-