<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>177614</bug_id>
          
          <creation_ts>2017-09-28 12:39:18 -0700</creation_ts>
          <short_desc>check in AWS Lambda code used for WebKitArchiveSupport</short_desc>
          <delta_ts>2017-09-28 14:43:57 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Lucas Forschler">lforschler</reporter>
          <assigned_to name="Lucas Forschler">lforschler</assigned_to>
          <cc>lforschler</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1354239</commentid>
    <comment_count>0</comment_count>
    <who name="Lucas Forschler">lforschler</who>
    <bug_when>2017-09-28 12:39:18 -0700</bug_when>
    <thetext>Keep AWS Lambda code in source control somewhere... 
This is the code used to support the WebKitArchives.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1354240</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-09-28 12:40:23 -0700</bug_when>
    <thetext>&lt;rdar://problem/34721629&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1354241</commentid>
    <comment_count>2</comment_count>
      <attachid>322110</attachid>
    <who name="Lucas Forschler">lforschler</who>
    <bug_when>2017-09-28 12:45:28 -0700</bug_when>
    <thetext>Created attachment 322110
v1 patch for review</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1354242</commentid>
    <comment_count>3</comment_count>
    <who name="Lucas Forschler">lforschler</who>
    <bug_when>2017-09-28 12:46:38 -0700</bug_when>
    <thetext>Note: AWS will not allow a lambda function to be used for multiple triggers. Therefore, these files are pretty similar, only differing in a few variables/constant values.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1354291</commentid>
    <comment_count>4</comment_count>
      <attachid>322110</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2017-09-28 14:29:10 -0700</bug_when>
    <thetext>Comment on attachment 322110
v1 patch for review

View in context: https://bugs.webkit.org/attachment.cgi?id=322110&amp;action=review

rs=me, as this code is in production already.

Would be nice to have regression tests for it.

&gt; Tools/WebKitArchiveSupport/lambda/delete-minified-s3-archive-from-dynamodb.py:32
&gt; +        print(&apos;Error deleting item: {}\nfrom database: {}.&apos;.format(item, table_name))
&gt; +        raise e

Where do these errors go? How will we notice them?

&gt; Tools/WebKitArchiveSupport/lambda/register-minified-s3-archive-in-dynamodb.py:26
&gt; +    split_key = key.split(&apos;/&apos;)
&gt; +    identifier = split_key[0]           # mac-sierra-x86_64-debug
&gt; +    filename = split_key[1]             # 218331.zip
&gt; +    revision = filename.split(&apos;.&apos;)[0]   # 218331

Is there a way to avoid duplicating code?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1354293</commentid>
    <comment_count>5</comment_count>
      <attachid>322110</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2017-09-28 14:30:52 -0700</bug_when>
    <thetext>Comment on attachment 322110
v1 patch for review

It may be useful to have comments explaining what event triggers these lambdas.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1354304</commentid>
    <comment_count>6</comment_count>
      <attachid>322110</attachid>
    <who name="Lucas Forschler">lforschler</who>
    <bug_when>2017-09-28 14:42:32 -0700</bug_when>
    <thetext>Comment on attachment 322110
v1 patch for review

View in context: https://bugs.webkit.org/attachment.cgi?id=322110&amp;action=review

&gt;&gt; Tools/WebKitArchiveSupport/lambda/delete-minified-s3-archive-from-dynamodb.py:32
&gt;&gt; +        raise e
&gt; 
&gt; Where do these errors go? How will we notice them?

These errors are sent to Amazon CloudWatch. We would never see them unless we noticed problems and went back through logs to figure out what is going wrong.
It might be possible to configure events to watch for specific errors, I can investigate.

&gt;&gt; Tools/WebKitArchiveSupport/lambda/register-minified-s3-archive-in-dynamodb.py:26
&gt;&gt; +    revision = filename.split(&apos;.&apos;)[0]   # 218331
&gt; 
&gt; Is there a way to avoid duplicating code?

I&apos;ve read several articles on this, and haven&apos;t found any solutions that look reasonable. It&apos;s something I will watch out for as we grow our infrastructure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1354306</commentid>
    <comment_count>7</comment_count>
    <who name="Lucas Forschler">lforschler</who>
    <bug_when>2017-09-28 14:43:57 -0700</bug_when>
    <thetext>Committed revision 222634.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>322110</attachid>
            <date>2017-09-28 12:45:28 -0700</date>
            <delta_ts>2017-09-28 14:29:10 -0700</delta_ts>
            <desc>v1 patch for review</desc>
            <filename>177614.patch</filename>
            <type>text/plain</type>
            <size>7957</size>
            <attacher name="Lucas Forschler">lforschler</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIyMjYyNCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDIwIEBACisyMDE3LTA5LTI4ICBMdWNhcyBGb3JzY2hsZXIgIDxsZm9yc2NobGVyQGFwcGxl
LmNvbT4KKworICAgICAgICBjaGVjayBpbiBBV1MgTGFtYmRhIGNvZGUgdXNlZCBmb3IgV2ViS2l0
QXJjaGl2ZVN1cHBvcnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE3NzYxNAorICAgICAgICAKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBXZWJLaXRBcmNoaXZlU3VwcG9ydC9sYW1iZGE6IEFkZGVkLgorICAg
ICAgICAqIFdlYktpdEFyY2hpdmVTdXBwb3J0L2xhbWJkYS9kZWxldGUtbWluaWZpZWQtczMtYXJj
aGl2ZS1mcm9tLWR5bmFtb2RiLnB5OiBBZGRlZC4KKyAgICAgICAgKGxhbWJkYV9oYW5kbGVyKToK
KyAgICAgICAgKiBXZWJLaXRBcmNoaXZlU3VwcG9ydC9sYW1iZGEvZGVsZXRlLXMzLWFyY2hpdmUt
ZnJvbS1keW5hbW9kYi5weTogQWRkZWQuCisgICAgICAgIChsYW1iZGFfaGFuZGxlcik6CisgICAg
ICAgICogV2ViS2l0QXJjaGl2ZVN1cHBvcnQvbGFtYmRhL3JlZ2lzdGVyLWFyY2hpdmUtaW4tZHlu
YW1vZGIucHk6IEFkZGVkLgorICAgICAgICAobGFtYmRhX2hhbmRsZXIpOgorICAgICAgICAqIFdl
YktpdEFyY2hpdmVTdXBwb3J0L2xhbWJkYS9yZWdpc3Rlci1taW5pZmllZC1zMy1hcmNoaXZlLWlu
LWR5bmFtb2RiLnB5OiBBZGRlZC4KKyAgICAgICAgKGxhbWJkYV9oYW5kbGVyKToKKwogMjAxNy0w
OS0yOCAgTWFyayBMYW0gIDxtYXJrLmxhbUBhcHBsZS5jb20+CiAKICAgICAgICAgW1JlLWxhbmRp
bmddIFR1cm4gb24gZXhjZXB0aW9uIHNjb3BlIHZlcmlmaWNhdGlvbiBmb3IgSlNDIHRlc3RzLgpJ
bmRleDogVG9vbHMvV2ViS2l0QXJjaGl2ZVN1cHBvcnQvbGFtYmRhL2RlbGV0ZS1taW5pZmllZC1z
My1hcmNoaXZlLWZyb20tZHluYW1vZGIucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvV2ViS2l0QXJj
aGl2ZVN1cHBvcnQvbGFtYmRhL2RlbGV0ZS1taW5pZmllZC1zMy1hcmNoaXZlLWZyb20tZHluYW1v
ZGIucHkJKG5vbmV4aXN0ZW50KQorKysgVG9vbHMvV2ViS2l0QXJjaGl2ZVN1cHBvcnQvbGFtYmRh
L2RlbGV0ZS1taW5pZmllZC1zMy1hcmNoaXZlLWZyb20tZHluYW1vZGIucHkJKHdvcmtpbmcgY29w
eSkKQEAgLTAsMCArMSwzMiBAQAoraW1wb3J0IGJvdG8zCitpbXBvcnQganNvbgoraW1wb3J0IHVy
bGxpYi5wYXJzZSAgIyBweWxpbnQ6IGRpc2FibGU9RTA2MTEKKworcHJpbnQoJ0xvYWRpbmcgZnVu
Y3Rpb24nKQorZHluYW1vZGJfY2xpZW50ID0gYm90bzMuY2xpZW50KCdkeW5hbW9kYicpCit0YWJs
ZV9uYW1lID0gJ21pbmlmaWVkLWFyY2hpdmVzLndlYmtpdC5vcmcnCitzMyA9IGJvdG8zLmNsaWVu
dCgnczMnKQorCisKK2RlZiBsYW1iZGFfaGFuZGxlcihldmVudCwgY29udGV4dCk6CisgICAgcHJp
bnQoIlJlY2VpdmVkIGV2ZW50OiAiICsganNvbi5kdW1wcyhldmVudCwgaW5kZW50PTIpKQorCisg
ICAga2V5ID0gdXJsbGliLnBhcnNlLnVucXVvdGVfcGx1cyhldmVudFsnUmVjb3JkcyddWzBdWydz
MyddWydvYmplY3QnXVsna2V5J10sIGVuY29kaW5nPSd1dGYtOCcpICAjIHB5bGludDogZGlzYWJs
ZT1FMTEwMQorICAgICMgZXg6IG1hYy1zaWVycmEteDg2XzY0LWRlYnVnLzIxODMzMS56aXAKKwor
ICAgIHNwbGl0X2tleSA9IGtleS5zcGxpdCgnLycpCisgICAgaWRlbnRpZmllciA9IHNwbGl0X2tl
eVswXSAgICAgICAgICAgIyBtYWMtc2llcnJhLXg4Nl82NC1kZWJ1ZworICAgIGZpbGVuYW1lID0g
c3BsaXRfa2V5WzFdICAgICAgICAgICAgICMgMjE4MzMxLnppcAorICAgIHJldmlzaW9uID0gZmls
ZW5hbWUuc3BsaXQoJy4nKVswXSAgICMgMjE4MzMxCisKKyAgICBwcmludCAoImlkZW50aWZpZXI6
ICIgKyBpZGVudGlmaWVyKQorICAgIHByaW50ICgicmV2aXNpb246ICIgKyByZXZpc2lvbikKKwor
ICAgIHRyeToKKyAgICAgICAgaXRlbSA9IHsnaWRlbnRpZmllcic6IHsnUyc6IGlkZW50aWZpZXJ9
LCAncmV2aXNpb24nOiB7J04nOiByZXZpc2lvbn19CisgICAgICAgIHJlc3BvbnNlID0gZHluYW1v
ZGJfY2xpZW50LmRlbGV0ZV9pdGVtKFRhYmxlTmFtZT10YWJsZV9uYW1lLCBLZXk9aXRlbSkKKyAg
ICAgICAgcmV0dXJuIHJlc3BvbnNlCisgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgorICAgICAg
ICBwcmludChlKQorICAgICAgICBwcmludCgnRXJyb3IgZGVsZXRpbmcgaXRlbToge31cbmZyb20g
ZGF0YWJhc2U6IHt9LicuZm9ybWF0KGl0ZW0sIHRhYmxlX25hbWUpKQorICAgICAgICByYWlzZSBl
CkluZGV4OiBUb29scy9XZWJLaXRBcmNoaXZlU3VwcG9ydC9sYW1iZGEvZGVsZXRlLXMzLWFyY2hp
dmUtZnJvbS1keW5hbW9kYi5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9XZWJLaXRBcmNoaXZlU3Vw
cG9ydC9sYW1iZGEvZGVsZXRlLXMzLWFyY2hpdmUtZnJvbS1keW5hbW9kYi5weQkobm9uZXhpc3Rl
bnQpCisrKyBUb29scy9XZWJLaXRBcmNoaXZlU3VwcG9ydC9sYW1iZGEvZGVsZXRlLXMzLWFyY2hp
dmUtZnJvbS1keW5hbW9kYi5weQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDMyIEBACitpbXBv
cnQgYm90bzMKK2ltcG9ydCBqc29uCitpbXBvcnQgdXJsbGliLnBhcnNlICAjIHB5bGludDogZGlz
YWJsZT1FMDYxMQorCitwcmludCgnTG9hZGluZyBmdW5jdGlvbicpCitkeW5hbW9kYl9jbGllbnQg
PSBib3RvMy5jbGllbnQoJ2R5bmFtb2RiJykKK3RhYmxlX25hbWUgPSAnYXJjaGl2ZXMud2Via2l0
Lm9yZycKK3MzID0gYm90bzMuY2xpZW50KCdzMycpCisKKworZGVmIGxhbWJkYV9oYW5kbGVyKGV2
ZW50LCBjb250ZXh0KToKKyAgICBwcmludCgiUmVjZWl2ZWQgZXZlbnQ6ICIgKyBqc29uLmR1bXBz
KGV2ZW50LCBpbmRlbnQ9MikpCisKKyAgICBrZXkgPSB1cmxsaWIucGFyc2UudW5xdW90ZV9wbHVz
KGV2ZW50WydSZWNvcmRzJ11bMF1bJ3MzJ11bJ29iamVjdCddWydrZXknXSwgZW5jb2Rpbmc9J3V0
Zi04JykgICMgcHlsaW50OiBkaXNhYmxlPUUxMTAxCisgICAgIyBleDogbWFjLXNpZXJyYS14ODZf
NjQtZGVidWcvMjE4MzMxLnppcAorCisgICAgc3BsaXRfa2V5ID0ga2V5LnNwbGl0KCcvJykKKyAg
ICBpZGVudGlmaWVyID0gc3BsaXRfa2V5WzBdICAgICAgICAgICAjIG1hYy1zaWVycmEteDg2XzY0
LWRlYnVnCisgICAgZmlsZW5hbWUgPSBzcGxpdF9rZXlbMV0gICAgICAgICAgICAgIyAyMTgzMzEu
emlwCisgICAgcmV2aXNpb24gPSBmaWxlbmFtZS5zcGxpdCgnLicpWzBdICAgIyAyMTgzMzEKKwor
ICAgIHByaW50ICgiaWRlbnRpZmllcjogIiArIGlkZW50aWZpZXIpCisgICAgcHJpbnQgKCJyZXZp
c2lvbjogIiArIHJldmlzaW9uKQorCisgICAgdHJ5OgorICAgICAgICBpdGVtID0geydpZGVudGlm
aWVyJzogeydTJzogaWRlbnRpZmllcn0sICdyZXZpc2lvbic6IHsnTic6IHJldmlzaW9ufX0KKyAg
ICAgICAgcmVzcG9uc2UgPSBkeW5hbW9kYl9jbGllbnQuZGVsZXRlX2l0ZW0oVGFibGVOYW1lPXRh
YmxlX25hbWUsIEtleT1pdGVtKQorICAgICAgICByZXR1cm4gcmVzcG9uc2UKKyAgICBleGNlcHQg
RXhjZXB0aW9uIGFzIGU6CisgICAgICAgIHByaW50KGUpCisgICAgICAgIHByaW50KCdFcnJvciBk
ZWxldGluZyBpdGVtOiB7fVxuZnJvbSBkYXRhYmFzZToge30uJy5mb3JtYXQoaXRlbSwgdGFibGVf
bmFtZSkpCisgICAgICAgIHJhaXNlIGUKSW5kZXg6IFRvb2xzL1dlYktpdEFyY2hpdmVTdXBwb3J0
L2xhbWJkYS9yZWdpc3Rlci1hcmNoaXZlLWluLWR5bmFtb2RiLnB5Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRv
b2xzL1dlYktpdEFyY2hpdmVTdXBwb3J0L2xhbWJkYS9yZWdpc3Rlci1hcmNoaXZlLWluLWR5bmFt
b2RiLnB5CShub25leGlzdGVudCkKKysrIFRvb2xzL1dlYktpdEFyY2hpdmVTdXBwb3J0L2xhbWJk
YS9yZWdpc3Rlci1hcmNoaXZlLWluLWR5bmFtb2RiLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAg
KzEsNDggQEAKK2ltcG9ydCBib3RvMworaW1wb3J0IGpzb24KK2ltcG9ydCB0aW1lCitpbXBvcnQg
dXJsbGliLnBhcnNlICAjIHB5bGludDogZGlzYWJsZT1FMDYxMQorCitEQVlTX1RPX0tFRVAgPSAx
NAorRVBPQ0hfREFZID0gODY0MDAKK1RBQkxFX05BTUUgPSAnYXJjaGl2ZXMud2Via2l0Lm9yZycK
K1VSTF9QUkVGSVggPSAnaHR0cHM6Ly9zMy11cy13ZXN0LTIuYW1hem9uYXdzLmNvbScKKworZHlu
YW1vZGJfY2xpZW50ID0gYm90bzMuY2xpZW50KCdkeW5hbW9kYicpCitzMyA9IGJvdG8zLmNsaWVu
dCgnczMnKQorCisKK2RlZiBsYW1iZGFfaGFuZGxlcihldmVudCwgY29udGV4dCk6CisgICAgcHJp
bnQoIlJlY2VpdmVkIGV2ZW50OiAiICsganNvbi5kdW1wcyhldmVudCwgaW5kZW50PTIpKQorCisg
ICAgIyBHZXQgdGhlIGJ1Y2tldCBuYW1lIGZyb20gdGhlIGV2ZW50CisgICAgYnVja2V0ID0gZXZl
bnRbJ1JlY29yZHMnXVswXVsnczMnXVsnYnVja2V0J11bJ25hbWUnXQorICAgIGtleSA9IHVybGxp
Yi5wYXJzZS51bnF1b3RlX3BsdXMoZXZlbnRbJ1JlY29yZHMnXVswXVsnczMnXVsnb2JqZWN0J11b
J2tleSddLCBlbmNvZGluZz0ndXRmLTgnKSAgIyBweWxpbnQ6IGRpc2FibGU9RTExMDEKKyAgICAj
IGV4OiBtYWMtc2llcnJhLXg4Nl82NC1kZWJ1Zy8yMTgzMzEuemlwCisKKyAgICBzcGxpdF9rZXkg
PSBrZXkuc3BsaXQoJy8nKQorICAgIGlkZW50aWZpZXIgPSBzcGxpdF9rZXlbMF0gICAgICAgICAg
ICMgbWFjLXNpZXJyYS14ODZfNjQtZGVidWcKKyAgICBmaWxlbmFtZSA9IHNwbGl0X2tleVsxXSAg
ICAgICAgICAgICAjIDIxODMzMS56aXAKKyAgICByZXZpc2lvbiA9IGZpbGVuYW1lLnNwbGl0KCcu
JylbMF0gICAjIDIxODMzMQorICAgIGNyZWF0aW9uX3RpbWUgPSBpbnQodGltZS50aW1lKCkpCisg
ICAgZXhwaXJhdGlvbl90aW1lID0gY3JlYXRpb25fdGltZSArIERBWVNfVE9fS0VFUCAqIEVQT0NI
X0RBWQorCisgICAgY3JlYXRpb25fdGltZSA9IHN0cihjcmVhdGlvbl90aW1lKQorICAgIGV4cGly
YXRpb25fdGltZSA9IHN0cihleHBpcmF0aW9uX3RpbWUpCisgICAgczNfdXJsID0gJy8nLmpvaW4o
W1VSTF9QUkVGSVgsIGJ1Y2tldCwga2V5XSkKKworICAgIHRyeToKKyAgICAgICAgaXRlbSA9IHsK
KyAgICAgICAgICAgICdpZGVudGlmaWVyJzogeydTJzogaWRlbnRpZmllcn0sCisgICAgICAgICAg
ICAncmV2aXNpb24nOiB7J04nOiByZXZpc2lvbn0sCisgICAgICAgICAgICAnczNfdXJsJzogeydT
JzogczNfdXJsfSwKKyAgICAgICAgICAgICdjcmVhdGlvblRpbWUnOiB7J04nOiBjcmVhdGlvbl90
aW1lfSwKKyAgICAgICAgICAgICdleHBpcmF0aW9uVGltZSc6IHsnTic6IGV4cGlyYXRpb25fdGlt
ZX0sCisgICAgICAgIH0KKyAgICAgICAgcHJpbnQoJ0l0ZW06IHt9Jy5mb3JtYXQoaXRlbSkpCisg
ICAgICAgIGR5bmFtb2RiX2NsaWVudC5wdXRfaXRlbShUYWJsZU5hbWU9VEFCTEVfTkFNRSwgSXRl
bT1pdGVtKQorICAgICAgICByZXR1cm4gczNfdXJsCisgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBl
OgorICAgICAgICBwcmludChlKQorICAgICAgICBwcmludCgnRXJyb3IgcmVnaXN0ZXJpbmcgaXRl
bToge31cbmZyb20gYnVja2V0IHt9LicuZm9ybWF0KGl0ZW0sIGJ1Y2tldCkpCisgICAgICAgIHJh
aXNlIGUKSW5kZXg6IFRvb2xzL1dlYktpdEFyY2hpdmVTdXBwb3J0L2xhbWJkYS9yZWdpc3Rlci1t
aW5pZmllZC1zMy1hcmNoaXZlLWluLWR5bmFtb2RiLnB5Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1dl
YktpdEFyY2hpdmVTdXBwb3J0L2xhbWJkYS9yZWdpc3Rlci1taW5pZmllZC1zMy1hcmNoaXZlLWlu
LWR5bmFtb2RiLnB5CShub25leGlzdGVudCkKKysrIFRvb2xzL1dlYktpdEFyY2hpdmVTdXBwb3J0
L2xhbWJkYS9yZWdpc3Rlci1taW5pZmllZC1zMy1hcmNoaXZlLWluLWR5bmFtb2RiLnB5CSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsNDggQEAKK2ltcG9ydCBib3RvMworaW1wb3J0IGpzb24KK2lt
cG9ydCB0aW1lCitpbXBvcnQgdXJsbGliLnBhcnNlICAjIHB5bGludDogZGlzYWJsZT1FMDYxMQor
CitEQVlTX1RPX0tFRVAgPSA5MTAKK0VQT0NIX0RBWSA9IDg2NDAwCitUQUJMRV9OQU1FID0gJ21p
bmlmaWVkLWFyY2hpdmVzLndlYmtpdC5vcmcnCitVUkxfUFJFRklYID0gJ2h0dHBzOi8vczMtdXMt
d2VzdC0yLmFtYXpvbmF3cy5jb20nCisKK2R5bmFtb2RiX2NsaWVudCA9IGJvdG8zLmNsaWVudCgn
ZHluYW1vZGInKQorczMgPSBib3RvMy5jbGllbnQoJ3MzJykKKworCitkZWYgbGFtYmRhX2hhbmRs
ZXIoZXZlbnQsIGNvbnRleHQpOgorICAgIHByaW50KCJSZWNlaXZlZCBldmVudDogIiArIGpzb24u
ZHVtcHMoZXZlbnQsIGluZGVudD0yKSkKKworICAgICMgR2V0IHRoZSBidWNrZXQgbmFtZSBmcm9t
IHRoZSBldmVudAorICAgIGJ1Y2tldCA9IGV2ZW50WydSZWNvcmRzJ11bMF1bJ3MzJ11bJ2J1Y2tl
dCddWyduYW1lJ10KKyAgICBrZXkgPSB1cmxsaWIucGFyc2UudW5xdW90ZV9wbHVzKGV2ZW50WydS
ZWNvcmRzJ11bMF1bJ3MzJ11bJ29iamVjdCddWydrZXknXSwgZW5jb2Rpbmc9J3V0Zi04JykgICMg
cHlsaW50OiBkaXNhYmxlPUUxMTAxCisgICAgIyBleDogbWFjLXNpZXJyYS14ODZfNjQtZGVidWcv
MjE4MzMxLnppcAorCisgICAgc3BsaXRfa2V5ID0ga2V5LnNwbGl0KCcvJykKKyAgICBpZGVudGlm
aWVyID0gc3BsaXRfa2V5WzBdICAgICAgICAgICAjIG1hYy1zaWVycmEteDg2XzY0LWRlYnVnCisg
ICAgZmlsZW5hbWUgPSBzcGxpdF9rZXlbMV0gICAgICAgICAgICAgIyAyMTgzMzEuemlwCisgICAg
cmV2aXNpb24gPSBmaWxlbmFtZS5zcGxpdCgnLicpWzBdICAgIyAyMTgzMzEKKyAgICBjcmVhdGlv
bl90aW1lID0gaW50KHRpbWUudGltZSgpKQorICAgIGV4cGlyYXRpb25fdGltZSA9IGNyZWF0aW9u
X3RpbWUgKyBEQVlTX1RPX0tFRVAgKiBFUE9DSF9EQVkKKworICAgIGNyZWF0aW9uX3RpbWUgPSBz
dHIoY3JlYXRpb25fdGltZSkKKyAgICBleHBpcmF0aW9uX3RpbWUgPSBzdHIoZXhwaXJhdGlvbl90
aW1lKQorICAgIHMzX3VybCA9ICcvJy5qb2luKFtVUkxfUFJFRklYLCBidWNrZXQsIGtleV0pCisK
KyAgICB0cnk6CisgICAgICAgIGl0ZW0gPSB7CisgICAgICAgICAgICAnaWRlbnRpZmllcic6IHsn
Uyc6IGlkZW50aWZpZXJ9LAorICAgICAgICAgICAgJ3JldmlzaW9uJzogeydOJzogcmV2aXNpb259
LAorICAgICAgICAgICAgJ3MzX3VybCc6IHsnUyc6IHMzX3VybH0sCisgICAgICAgICAgICAnY3Jl
YXRpb25UaW1lJzogeydOJzogY3JlYXRpb25fdGltZX0sCisgICAgICAgICAgICAnZXhwaXJhdGlv
blRpbWUnOiB7J04nOiBleHBpcmF0aW9uX3RpbWV9LAorICAgICAgICB9CisgICAgICAgIHByaW50
KCdJdGVtOiB7fScuZm9ybWF0KGl0ZW0pKQorICAgICAgICBkeW5hbW9kYl9jbGllbnQucHV0X2l0
ZW0oVGFibGVOYW1lPVRBQkxFX05BTUUsIEl0ZW09aXRlbSkKKyAgICAgICAgcmV0dXJuIHMzX3Vy
bAorICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKKyAgICAgICAgcHJpbnQoZSkKKyAgICAgICAg
cHJpbnQoJ0Vycm9yIHJlZ2lzdGVyaW5nIGl0ZW06IHt9XG5mcm9tIGJ1Y2tldCB7fS4nLmZvcm1h
dChpdGVtLCBidWNrZXQpKQorICAgICAgICByYWlzZSBlCg==
</data>
<flag name="review"
          id="342038"
          type_id="1"
          status="+"
          setter="ap"
    />
    <flag name="commit-queue"
          id="342039"
          type_id="3"
          status="-"
          setter="lforschler"
    />
          </attachment>
      

    </bug>

</bugzilla>