electron-forge / electron-forge-docs

:electron: Mirror for Electron Forge's GitBook documentation
https://electronforge.io
83 stars 144 forks source link

Issue with Maker zip example when using releases on S3 #162

Closed stewartrutledge closed 2 months ago

stewartrutledge commented 7 months ago

On the page https://www.electronforge.io/config/publishers/s3 the documentation gives an example of a mac configuration:

...
    {
      name: '@electron-forge/maker-zip',
      config: (arch) => ({
        // Note that we must provide this S3 URL here
        // in order to support smooth version transitions
        // especially when using a CDN to front your updates
        macUpdateManifestBaseUrl: `https://my-bucket.s3.amazonaws.com/my-app-updates/darwin/${arch}/RELEASES.json`
      })
    },
...

After a bit of torubleshooting and digging through the code for the zip maker

I found

const parsed = new URL(this.config.macUpdateManifestBaseUrl);
parsed.pathname += '/RELEASES.json';

This results in a URL like: https://my-bucket.s3.amazonaws.com/my-app-updates/darwin/${arch}/RELEASES.json/RELEASES.json

So either:

  1. The documentation should be updated to remove the file name and only provide path
  2. The zip maker should check if the config ends with RELEASES.json and only append if it does.

I'm more than happy to provide a pull request if you can point me in the right direction :)

Ayush9026 commented 5 months ago

/assign i will solve this issue.

erickzhao commented 2 months ago

Closed in https://github.com/electron-forge/electron-forge-docs/pull/160