WebThingsIO / addon-list

List of installable add-ons for WebThings Gateway
Mozilla Public License 2.0
76 stars 54 forks source link

New requirements for addon manifest.json files with gateway 1.1.0? #1459

Closed createcandle closed 2 years ago

createcandle commented 2 years ago

I just manually installed the gateway on a Pi Zero W 2, which means I now have version 1.1.0 to play with on the very latest version of Raspberry Pi OS.

I tried installing an addon (square theme), and noticed an error in the logs.

Manifest is missing: gateway_specific_settings.webthings.exec

Searching through the gateway code I found a file that mentions this exec attribute.

I then noticed this is a file from 2020, which would imply that this requirement has existed for some time. Yet the addon works OK on gateway 1.0.

Has gateway 1.1.0 perhaps gotten more strict about the manifest.json files?

createcandle commented 2 years ago

I also saw this in the logs, so perhaps they are related somehow:

Failed to parse add-on list: { FetchError: request to https://api.webthings.io:8443/addons?arch=linux-arm&version=1.1.0&node=64&python=2.7%2C3.9 failed, reason: getaddrinfo ENOTFOUND api.webthings.io api.webthings.io:8443
    at ClientRequest.<anonymous> (/home/pi/gateway/node_modules/node-fetch/lib/index.js:1461:11)
    at ClientRequest.emit (events.js:198:13)
    at TLSSocket.socketErrorListener (_http_client.js:401:9)
    at TLSSocket.emit (events.js:198:13)
    at emitErrorNT (internal/streams/destroy.js:91:8)
    at emitErrorAndCloseNT (internal/streams/destroy.js:59:3)
    at process._tickCallback (internal/process/next_tick.js:63:19)
  message:
   'request to https://api.webthings.io:8443/addons?arch=linux-arm&version=1.1.0&node=64&python=2.7%2C3.9 failed, reason: getaddrinfo ENOTFOUND api.webthings.io api.webthings.io:8443',
  type: 'system',
  errno: 'ENOTFOUND',
  code: 'ENOTFOUND' }

If I open that URL manually, it loads ok: https://api.webthings.io:8443/addons?arch=linux-arm&version=1.1.0&node=64&python=2.7%2C3.9

createcandle commented 2 years ago

Perhaps this could have something to with the fact that this addon doesn't have anything to execute? The addon only loads CSS, JS and HTML files. It has no serverside component.