<?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>216705</bug_id>
          
          <creation_ts>2020-09-18 10:34:22 -0700</creation_ts>
          <short_desc>Make ews-app robust against config.json issues</short_desc>
          <delta_ts>2020-09-21 12:19:39 -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>Other</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="Aakash Jain">aakash_jain</reporter>
          <assigned_to name="Aakash Jain">aakash_jain</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>ap</cc>
    
    <cc>jbedard</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1689851</commentid>
    <comment_count>0</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2020-09-18 10:34:22 -0700</bug_when>
    <thetext>If config.json is invalid temporarily (e.g.: merge conflict while updating checkout on the buildbot server), then the ews-app might encounter a crash and stop polling for new patches. I noticed this on UAT instance. Noticed this exception in logs:

2020-09-17 20:51:17,020 - 22 r? patches, 0 patches need to be sent to Buildbot: []
2020-09-17 20:51:47,050 - Fetching: https://ews-build.webkit-uat.org/config.json
Exception in thread Thread-1:
Traceback (most recent call last):
  File &quot;/usr/lib64/python2.7/threading.py&quot;, line 812, in __bootstrap_inner
    self.run()
  File &quot;/usr/lib64/python2.7/threading.py&quot;, line 765, in run
    self.__target(*self.__args, **self.__kwargs)
  File &quot;/var/ews/OpenSource/Tools/BuildSlaveSupport/ews-app/ews/fetcher.py&quot;, line 50, in run
    Buildbot.update_icons_for_queues_mapping()
  File &quot;/var/ews/OpenSource/Tools/BuildSlaveSupport/ews-app/ews/common/buildbot.py&quot;, line 99, in update_icons_for_queues_mapping
    config = cls.fetch_config()
  File &quot;/var/ews/OpenSource/Tools/BuildSlaveSupport/ews-app/ews/common/buildbot.py&quot;, line 95, in fetch_config
    return config_data.json()
  File &quot;/usr/lib/python2.7/site-packages/requests/models.py&quot;, line 795, in json 
    return json.loads(self.content.decode(encoding), **kwargs)
  File &quot;/usr/lib64/python2.7/json/__init__.py&quot;, line 338, in loads
    return _default_decoder.decode(s)
  File &quot;/usr/lib64/python2.7/json/decoder.py&quot;, line 366, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File &quot;/usr/lib64/python2.7/json/decoder.py&quot;, line 382, in raw_decode
    obj, end = self.scan_once(s, idx)
ValueError: Expecting property name enclosed in double quotes: line 358 column 1 (char 6271)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1689857</commentid>
    <comment_count>1</comment_count>
      <attachid>409145</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2020-09-18 10:37:43 -0700</bug_when>
    <thetext>Created attachment 409145
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1689879</commentid>
    <comment_count>2</comment_count>
      <attachid>409145</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2020-09-18 11:14:55 -0700</bug_when>
    <thetext>Comment on attachment 409145
Patch

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

&gt; Tools/BuildSlaveSupport/ews-app/ews/common/buildbot.py:97
&gt; +        except Exception as e:

Nit: Don&apos;t need the &quot;as e&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1689899</commentid>
    <comment_count>3</comment_count>
      <attachid>409145</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2020-09-18 12:06:27 -0700</bug_when>
    <thetext>Comment on attachment 409145
Patch

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

&gt;&gt; Tools/BuildSlaveSupport/ews-app/ews/common/buildbot.py:97
&gt;&gt; +        except Exception as e:
&gt; 
&gt; Nit: Don&apos;t need the &quot;as e&quot;

Updated the patch to add a log which includes the error as well. This log might help in debugging.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1689900</commentid>
    <comment_count>4</comment_count>
      <attachid>409159</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2020-09-18 12:06:39 -0700</bug_when>
    <thetext>Created attachment 409159
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1689922</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-09-18 12:46:39 -0700</bug_when>
    <thetext>Committed r267277: &lt;https://trac.webkit.org/changeset/267277&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 409159.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1689924</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-09-18 12:47:23 -0700</bug_when>
    <thetext>&lt;rdar://problem/69169472&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690097</commentid>
    <comment_count>7</comment_count>
      <attachid>409159</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2020-09-19 11:22:04 -0700</bug_when>
    <thetext>Comment on attachment 409159
Patch

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

&gt; Tools/BuildSlaveSupport/ews-app/ews/common/buildbot.py:105
&gt;              _log.warn(&apos;Unable to fetch buildbot config.json&apos;)

Looks like we now call both _log.error and _log.warn.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690423</commentid>
    <comment_count>8</comment_count>
      <attachid>409159</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2020-09-21 12:19:39 -0700</bug_when>
    <thetext>Comment on attachment 409159
Patch

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

&gt;&gt; Tools/BuildSlaveSupport/ews-app/ews/common/buildbot.py:105
&gt;&gt;              _log.warn(&apos;Unable to fetch buildbot config.json&apos;)
&gt; 
&gt; Looks like we now call both _log.error and _log.warn.

Changed this one to _log.error as well in https://trac.webkit.org/changeset/267353/webkit</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409145</attachid>
            <date>2020-09-18 10:37:43 -0700</date>
            <delta_ts>2020-09-18 12:06:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216705-20200918133742.patch</filename>
            <type>text/plain</type>
            <size>1631</size>
            <attacher name="Aakash Jain">aakash_jain</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI2NzI0OSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE0IEBACisyMDIwLTA5LTE4ICBBYWthc2ggSmFpbiAgPGFha2FzaF9qYWluQGFwcGxlLmNv
bT4KKworICAgICAgICBNYWtlIGV3cy1hcHAgcm9idXN0IGFnYWluc3QgY29uZmlnLmpzb24gaXNz
dWVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTY3
MDUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIEJ1
aWxkU2xhdmVTdXBwb3J0L2V3cy1hcHAvZXdzL2NvbW1vbi9idWlsZGJvdC5weToKKyAgICAgICAg
KEJ1aWxkYm90LmZldGNoX2NvbmZpZyk6CisgICAgICAgIChCdWlsZGJvdC51cGRhdGVfaWNvbnNf
Zm9yX3F1ZXVlc19tYXBwaW5nKToKKwogMjAyMC0wOS0xOCAgRGllZ28gUGlubyBHYXJjaWEgIDxk
cGlub0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtld3NdIFNldCBvbmx5IG9uZSB3b3JrZXIgZm9y
IEpTQyBBUk12NyBidWlsZGVyIGFuZCB0ZXN0ZXIgcXVldWVzCkluZGV4OiBUb29scy9CdWlsZFNs
YXZlU3VwcG9ydC9ld3MtYXBwL2V3cy9jb21tb24vYnVpbGRib3QucHkKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvZXdzLWFwcC9ld3MvY29tbW9uL2J1aWxkYm90LnB5CShy
ZXZpc2lvbiAyNjcyNDkpCisrKyBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9ld3MtYXBwL2V3cy9j
b21tb24vYnVpbGRib3QucHkJKHdvcmtpbmcgY29weSkKQEAgLTkyLDEzICs5MiwxNyBAQCBjbGFz
cyBCdWlsZGJvdCgpOgogICAgICAgICBjb25maWdfZGF0YSA9IHV0aWwuZmV0Y2hfZGF0YV9mcm9t
X3VybChjb25maWdfdXJsKQogICAgICAgICBpZiBub3QgY29uZmlnX2RhdGE6CiAgICAgICAgICAg
ICByZXR1cm4ge30KLSAgICAgICAgcmV0dXJuIGNvbmZpZ19kYXRhLmpzb24oKQorICAgICAgICB0
cnk6CisgICAgICAgICAgICByZXR1cm4gY29uZmlnX2RhdGEuanNvbigpCisgICAgICAgIGV4Y2Vw
dCBFeGNlcHRpb24gYXMgZToKKyAgICAgICAgICAgIHJldHVybiB7fQogCiAgICAgQGNsYXNzbWV0
aG9kCiAgICAgZGVmIHVwZGF0ZV9pY29uc19mb3JfcXVldWVzX21hcHBpbmcoY2xzKToKICAgICAg
ICAgY29uZmlnID0gY2xzLmZldGNoX2NvbmZpZygpCiAgICAgICAgIGlmIG5vdCBjb25maWc6CiAg
ICAgICAgICAgICBfbG9nLndhcm4oJ1VuYWJsZSB0byBmZXRjaCBidWlsZGJvdCBjb25maWcuanNv
bicpCisgICAgICAgICAgICByZXR1cm4KICAgICAgICAgZm9yIGJ1aWxkZXIgaW4gY29uZmlnLmdl
dCgnYnVpbGRlcnMnLCBbXSk6CiAgICAgICAgICAgICBzaG9ydG5hbWUgPSBidWlsZGVyLmdldCgn
c2hvcnRuYW1lJykKICAgICAgICAgICAgIEJ1aWxkYm90Lmljb25zX2Zvcl9xdWV1ZXNfbWFwcGlu
Z1tzaG9ydG5hbWVdID0gYnVpbGRlci5nZXQoJ2ljb24nKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409159</attachid>
            <date>2020-09-18 12:06:39 -0700</date>
            <delta_ts>2020-09-18 12:46:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216705-20200918150638.patch</filename>
            <type>text/plain</type>
            <size>1713</size>
            <attacher name="Aakash Jain">aakash_jain</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI2NzI0OSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE0IEBACisyMDIwLTA5LTE4ICBBYWthc2ggSmFpbiAgPGFha2FzaF9qYWluQGFwcGxlLmNv
bT4KKworICAgICAgICBNYWtlIGV3cy1hcHAgcm9idXN0IGFnYWluc3QgY29uZmlnLmpzb24gaXNz
dWVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTY3
MDUKKworICAgICAgICBSZXZpZXdlZCBieSBKb25hdGhhbiBCZWRhcmQuCisKKyAgICAgICAgKiBC
dWlsZFNsYXZlU3VwcG9ydC9ld3MtYXBwL2V3cy9jb21tb24vYnVpbGRib3QucHk6CisgICAgICAg
IChCdWlsZGJvdC5mZXRjaF9jb25maWcpOgorICAgICAgICAoQnVpbGRib3QudXBkYXRlX2ljb25z
X2Zvcl9xdWV1ZXNfbWFwcGluZyk6CisKIDIwMjAtMDktMTggIERpZWdvIFBpbm8gR2FyY2lhICA8
ZHBpbm9AaWdhbGlhLmNvbT4KIAogICAgICAgICBbZXdzXSBTZXQgb25seSBvbmUgd29ya2VyIGZv
ciBKU0MgQVJNdjcgYnVpbGRlciBhbmQgdGVzdGVyIHF1ZXVlcwpJbmRleDogVG9vbHMvQnVpbGRT
bGF2ZVN1cHBvcnQvZXdzLWFwcC9ld3MvY29tbW9uL2J1aWxkYm90LnB5Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2V3cy1hcHAvZXdzL2NvbW1vbi9idWlsZGJvdC5weQko
cmV2aXNpb24gMjY3MjQ5KQorKysgVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvZXdzLWFwcC9ld3Mv
Y29tbW9uL2J1aWxkYm90LnB5CSh3b3JraW5nIGNvcHkpCkBAIC05MiwxMyArOTIsMTggQEAgY2xh
c3MgQnVpbGRib3QoKToKICAgICAgICAgY29uZmlnX2RhdGEgPSB1dGlsLmZldGNoX2RhdGFfZnJv
bV91cmwoY29uZmlnX3VybCkKICAgICAgICAgaWYgbm90IGNvbmZpZ19kYXRhOgogICAgICAgICAg
ICAgcmV0dXJuIHt9Ci0gICAgICAgIHJldHVybiBjb25maWdfZGF0YS5qc29uKCkKKyAgICAgICAg
dHJ5OgorICAgICAgICAgICAgcmV0dXJuIGNvbmZpZ19kYXRhLmpzb24oKQorICAgICAgICBleGNl
cHQgRXhjZXB0aW9uIGFzIGU6CisgICAgICAgICAgICBfbG9nLmVycm9yKCdFcnJvciBpbiBmZXRj
aGluZyB7fS4gRXJyb3I6IHt9Jy5mb3JtYXQoY29uZmlnX3VybCwgZSkpCisgICAgICAgICAgICBy
ZXR1cm4ge30KIAogICAgIEBjbGFzc21ldGhvZAogICAgIGRlZiB1cGRhdGVfaWNvbnNfZm9yX3F1
ZXVlc19tYXBwaW5nKGNscyk6CiAgICAgICAgIGNvbmZpZyA9IGNscy5mZXRjaF9jb25maWcoKQog
ICAgICAgICBpZiBub3QgY29uZmlnOgogICAgICAgICAgICAgX2xvZy53YXJuKCdVbmFibGUgdG8g
ZmV0Y2ggYnVpbGRib3QgY29uZmlnLmpzb24nKQorICAgICAgICAgICAgcmV0dXJuCiAgICAgICAg
IGZvciBidWlsZGVyIGluIGNvbmZpZy5nZXQoJ2J1aWxkZXJzJywgW10pOgogICAgICAgICAgICAg
c2hvcnRuYW1lID0gYnVpbGRlci5nZXQoJ3Nob3J0bmFtZScpCiAgICAgICAgICAgICBCdWlsZGJv
dC5pY29uc19mb3JfcXVldWVzX21hcHBpbmdbc2hvcnRuYW1lXSA9IGJ1aWxkZXIuZ2V0KCdpY29u
JykK
</data>

          </attachment>
      

    </bug>

</bugzilla>