GDExporter cannot find GDevelop Core

Is GDExporter still a supported component of the GDevelop experience?

Quite some time ago I added gd-exporter into my ci-cd pipeline. Recently the pipeline fails with this output, and I guess the fix is to change permissions on the published GDevelop installation.

+ /usr/local/lib/node_modules/gdexporter/bin/cli -p /project/game.json -o /output
πŸ““ No config file found!
βŒ› Loading plugins...
βŒ› Loading GDCore...
πŸ•— Getting latest release tag...
❌ The GDevelop version was not found, downloading it!
πŸ•— Starting download of GDevelop Runtime 'v5.0.132'...
πŸ•— Starting download of GDevelop Core...
/usr/local/lib/node_modules/gdexporter/node_modules/gdcore-tools/src/downloadGD.js:12
          throw new Error(
          ^

Error: ❌ Cannot download https://s3.amazonaws.com/gdevelop-gdevelop.js/master/commit/bb3abdb1fa85a2d9e89e5053ae47deef1008299a/libGD.js! Error 403: Forbidden
    at RedirectableRequest.<anonymous> (/usr/local/lib/node_modules/gdexporter/node_modules/gdcore-tools/src/downloadGD.js:12:17)
    at RedirectableRequest.emit (node:events:527:28)
    at RedirectableRequest._processResponse (/usr/local/lib/node_modules/gdexporter/node_modules/follow-redirects/index.js:346:10)
    at ClientRequest.RedirectableRequest._onNativeResponse (/usr/local/lib/node_modules/gdexporter/node_modules/follow-redirects/index.js:57:10)
    at Object.onceWrapper (node:events:642:26)
    at ClientRequest.emit (node:events:527:28)
    at HTTPParser.parserOnIncomingClient [as onIncoming] (node:_http_client:631:27)
    at HTTPParser.parserOnHeadersComplete (node:_http_common:128:17)
    at TLSSocket.socketOnData (node:_http_client:494:22)
    at TLSSocket.emit (node:events:527:28)
    at addChunk (node:internal/streams/readable:324:12)
    at readableAddChunk (node:internal/streams/readable:297:9)
    at TLSSocket.Readable.push (node:internal/streams/readable:234:10)
    at TLSWrap.onStreamRead (node:internal/stream_base_commons:190:23)

Node.js v17.9.0
+ exit 1

Well, I’m not sure if it has ever really been a component of GDevelop, but let’s ask the author.
@arthuro555, are you maintaining GDExporter? Is it possible that something got… outdated? See OP.

GDexporter is and always was a community project, not a part of the GDevelop Company’s official ecosystem.

This error is quite odd and I’ll investigate it later. That URL is part of the GDevelop infrastructure where I fetch prebuilt binaries from. As far as I am aware, this should still be existing as it is as far as I recall also in use in the GDevelop repository

Yes, I still maintain and use GDexporter, and will update it if it has to be.

2 Likes

I was not aware there is a company behind GDevelop.
But yes, if that URL is part of GDevelop infrastructure it may need a fix anyway.

The GDExporter is doing a marvellous job - I am really happy about it. :slight_smile:

That’s understandable, it has been founded not too long ago for the maintainer and a few other people to get to work full-time on GDevelop.

I’m glad it can be useful to you :+1:

So, I just took a look and think I pinpointed the issue. The commit linked to this release is the following one:

As you can see, it contains a [skip ci] tag, which prevented the CI responsible for building and uploading this library from running for this commit.
I’ve fixed this on version 3.2.7, by making it use the nearest parent commit without the skip-ci tag.

Good match. My last successful run was on APR22, the first failure on APR30.
For the root cause I am not sure I can follow. But I can let you know once it works again. :slight_smile:

Just now it still failed. BTW, version number 3.2.7 refers to GDExporter, doesn’t it? Does GDExporter also output that version? So far I am sure to run the latest available version but cannot tell exactly which one it is…

+ /usr/local/lib/node_modules/gdexporter/bin/cli -p /project/game.json -o /output
πŸ““ No config file found!
βŒ› Loading plugins...
βŒ› Loading GDCore...
πŸ•— Getting latest release tag...
❌ The GDevelop version was not found, downloading it!
πŸ•— Starting download of GDevelop Runtime 'v5.0.132'...
πŸ•— Starting download of GDevelop Core...
/usr/local/lib/node_modules/gdexporter/node_modules/gdcore-tools/src/downloadGD.js:12
          throw new Error(
          ^

Error: ❌ Cannot download https://s3.amazonaws.com/gdevelop-gdevelop.js/master/commit/bb3abdb1fa85a2d9e89e5053ae47deef1008299a/libGD.js! Error 403: Forbidden
    at RedirectableRequest.<anonymous> (/usr/local/lib/node_modules/gdexporter/node_modules/gdcore-tools/src/downloadGD.js:12:17)
    at RedirectableRequest.emit (node:events:527:28)
    at RedirectableRequest._processResponse (/usr/local/lib/node_modules/gdexporter/node_modules/follow-redirects/index.js:346:10)
    at ClientRequest.RedirectableRequest._onNativeResponse (/usr/local/lib/node_modules/gdexporter/node_modules/follow-redirects/index.js:57:10)
    at Object.onceWrapper (node:events:642:26)
    at ClientRequest.emit (node:events:527:28)
    at HTTPParser.parserOnIncomingClient [as onIncoming] (node:_http_client:631:27)
    at HTTPParser.parserOnHeadersComplete (node:_http_common:128:17)
    at TLSSocket.socketOnData (node:_http_client:494:22)
    at TLSSocket.emit (node:events:527:28)
    at addChunk (node:internal/streams/readable:324:12)
    at readableAddChunk (node:internal/streams/readable:297:9)
    at TLSSocket.Readable.push (node:internal/streams/readable:234:10)
    at TLSWrap.onStreamRead (node:internal/stream_base_commons:190:23)

Node.js v17.9.0
+ exit 1