electron-forge-publisher-oss

Electron Forge Publisher that publish your distributable Electron app artifacts to Aliyun Object Storage Service(OSS).


Keywords
electron, electron-forge, electron-forge-pugin, oss, electron-forge-publisher, electron-forge-publisher-oss, electron-app, electron-application, electron-auto-update
License
MIT
Install
npm install electron-forge-publisher-oss@1.0.0

Documentation

Electron Forge Publisher OSS

Electron Forge Publisher OSS that publish your distributable Electron app artifacts to Aliyun Object Storage Service (OSS).

English | 简体中文

Features

  • ⚙️ Electron Forge publish to OSS.
  • ⚙️ Electron auto update.

🖥 Platform

  • macOS and Windows

📦 Install

npm install electron-forge-publisher-oss --save
yarn add electron-forge-publisher-oss

🔨 Usage

publishers config

// forge.config.js

module.exports = {
  // ...
  publishers: [
    {
      name: 'electron-forge-publisher-oss',
      config: {
        basePath: '/desktop',
        region: 'oss-cn-hangzhou',
        bucket: 'my-bucket',
        accessKeyId: 'xxx',
        accessKeySecret: 'xxx',
      }
    }
  ]
}

The basePath is the base path, and other parameters are the same as the OSS parameters.

auto update config

// main.js

import { autoUpdater } from 'electron'
import fetch from 'node-fetch'

const baseUrl = `https://my-bucket.oss-cn-zhangjiakou.aliyuncs.com/desktop/${platform}`

const release = await fetch(`${baseUrl}/release.json`)
const { currentRelease } = release

let url

if (process.platform === 'darwin') {
  url = `${baseUrl}/release.json`
} else {
  url = `${baseUrl}/${currentRelease}`
}

autoUpdater.setFeedURL({
  url,
  serverType: 'json'
})

autoUpdater.checkForUpdates()

See more >>

📋 Change Log

1.0.0

2022-11-07

  • 🆕 Electron Forge publish to OSS.
  • 🆕 Electron auto update.