-
Notifications
You must be signed in to change notification settings - Fork 154
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
GITBOOK-159: Improve auto update docs
- Loading branch information
1 parent
328dc90
commit 3ac2db0
Showing
4 changed files
with
94 additions
and
15 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,31 @@ | ||
--- | ||
description: Set up automatic updates for your Electron application | ||
--- | ||
|
||
# Auto Update | ||
|
||
Setting up Auto Updates in your app with Electron Forge is mostly the same process [as described in the Electron docs](https://electronjs.org/docs/tutorial/updates). Forge enhances your workflow by publishing your app to the right place for you. There are two main ways you can do auto updates. | ||
Setting up Auto Updates in your app with Electron Forge is mostly the same process [as described in the Electron docs](https://electronjs.org/docs/tutorial/updates). Forge enhances your workflow by publishing your app to the right place for you. There are three main ways you can do auto updates. | ||
|
||
## Open source apps: update.electronjs.org | ||
|
||
Open source apps hosted on GitHub can use a free auto update service from the Electron team, [update.electronjs.org](auto-update.md#update.electronjs.org). To use this module with Forge, set up the [GitHub Publisher](../config/publishers/github.md) and add the [`update-electron-app`](https://github.com/electron/update-electron-app) module to your app. | ||
|
||
## Open Source Apps - update.electronjs.org | ||
This setup is going to be around 2 lines of code and a few lines of configuration. It is by far the easiest way to set up auto updates if you're an open source app. | ||
|
||
Open Source apps hosted on [github.com](https://github.com) can use a free auto update service from the Electron team, `update.electronjs.org`. To use this with Forge, set up the [GitHub](../config/publishers/github.md) publisher and add the [`update-electron-app`](https://github.com/electron/update-electron-app) module to your app. | ||
## Hosting updates on static storage providers | ||
|
||
This setup is going to be around 2 lines of code and a few lines of configuration, by far the easiest way to set up auto updates if you're an open source app. | ||
If you are using any of Forge's built-in Publishers that upload your artifacts to static storage, they each have a documentation section on how to configure your app to auto update using those uploaded artifacts. Check out each of the options: | ||
|
||
## Host your own update server | ||
* [Amazon S3](../config/publishers/s3.md#auto-updating-from-s3) | ||
* Google Cloud Storage _(Coming Soon)_ | ||
|
||
If you're not open source or you want slightly more control over your update service you can host your own update server such as [`nucleus`](https://github.com/atlassian/nucleus) or [`nuts`](https://github.com/GitbookIO/nuts). See the full list of known Electron update servers in the [Electron's Updating Applications docs](https://electronjs.org/docs/tutorial/updates#deploying-an-update-server). | ||
## Hosting your own update server | ||
|
||
If you're not open source or you want slightly more control over your update service (like percentage based rollouts, or more release channels) you can host your own update server such as [`nucleus`](https://github.com/atlassian/nucleus) or [`nuts`](https://github.com/GitbookIO/nuts). See the full list of known Electron update servers in the [Electron's Updating Applications docs](https://electronjs.org/docs/tutorial/updates#deploying-an-update-server). | ||
|
||
Each update server will have their own configuration for your actual app, but publishing should be done from Forge for most of them: | ||
|
||
* `nucleus` - Use the [Nucleus](../config/publishers/nucleus.md) publish target | ||
* `nuts` - Use the [GitHub](../config/publishers/github.md) publish target | ||
* `electron-release-server` - Use the [Electron Release Server](../config/publishers/electron-release-server.md) publish target | ||
* `hazel` - Use the [GitHub](../config/publishers/github.md) publish target | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters