question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Documentation for Auto Update and Publishing Artifacts need clarification

See original GitHub issue
  • Version: 10.6.1
  • Target: Mac OS/X

Numerous aspects of the documentation on auto update and publishing artifacts omit many essential details. I’m sure it’s the case that many of these details are “implicit mental context” that is obvious to the developers of electron-builder and those who have already used it extensively, but they make it difficult or impossible for a newcomer to understand how the process works and what’s needed.

Auto Update Page

Example Project

To begin with: The Auto Update Page has a link to an Example Project.

I’ve cloned this example project and read the source for AppUpdater.ts and looked through all of the config files. Where is the configuration that determines the location where the app updater will fetch new releases? Nothing seemed obvious. Is it perhaps just pulling release artifacts from github directly as a default, based on the repository of package.json? It would be really helpful if there was a sentence or two on the Auto Update page clarifying this. If it’s configured explicitly and I’ve overlooked it, would be helpful to have a link to the config file; if it’s all done by defaults, it would be helpful to clarify that and mention where to place config settings to override those defaults.

Configuring Alternative Provider in Quick Setup Guide

Step 4 of the Quick Setup Guide mentions that one should not explicitly call setFeedURL, and provides a short snippet showing how one can specify an explicit “provider”:

{
  provider: "bintray",
  owner: "actperepo",
  package: "no-versions"
}

but where, exactly, does one place this configuration snippet? In what configuration file, and under what key? It’s not clear.

Publishing Artifacts Page

This page mentions that Travis and AppVeyor are both supported. In the text that follows, are the configuration details and “CLI flags” referring to configuration and flags for these CI tools, or for electron-builder itself?

GH_TOKEN

This sentence:

electron-builder allows you to just add GH_TOKEN environment variable and that’s all.

could use some clarification. What is GH_TOKEN, what is its format, and what is the effect of setting this? In a typical build setup (or the example project), where would it be set?

CLI Flags

Are these flags command line flags that should be passed to electron-builder (rather than to some other utility related to the build process or use of CI server)? I assume so, but it would be helpful to clarify.

Are these CLI Flags only relevant when using a CI server, or are they also relevant when building and publishing a release manually? I suspect they are useful in both cases, but it would be good to clarify.

Worked Example

It would be tremendously helpful to have a worked example of the exact sequence of shell commands to be run after making a change to the source code to build and publish a new release.

Contribution and Thanks

I know I’m asking a lot with the above.

I am happy to contribute text or editing to help clarify any of the above if someone will answer the above questions and walk me through the process. I will also certainly make a donation to this great project to increase priority of this issue. Thanks for the great work developing electron-builder and thanks in advance for any help answering these questions.

Issue Analytics

  • State:closed
  • Created 7 years ago
  • Reactions:12
  • Comments:26 (19 by maintainers)

github_iconTop GitHub Comments

4reactions
akashnimarecommented, Feb 9, 2017

@antonycourtney I have successfully implemented auto-updates using electron-updater. You can check it out here - Auto update function - https://github.com/zulip/zulip-electron/blob/master/app/main/autoupdater.js Package.json - https://github.com/zulip/zulip-electron/blob/master/package.json

Another example - https://github.com/iffy/electron-updater-example

GH Token

https://help.github.com/articles/creating-an-access-token-for-command-line-use/

How to generate it:

You can generate a GitHub access token by going to https://github.com/settings/tokens/new. The access token should have the repo scope/permission. Once you have the token, assign it to an environment variable (on macOS/Linux). Type this in your terminal or add it to your ~/.bashrc

    export GH_TOKEN="<YOUR_TOKEN_HERE>"

Hope it helps 😄

1reaction
develarcommented, Feb 17, 2017

CLI flags:

added:

Excerpt from CLI Usage of build command:

so, should be clear now.

Read more comments on GitHub >

github_iconTop Results From Across the Web

PublishBuildArtifacts@1 - Publish build artifacts v1 task
Publish build artifacts to Azure Pipelines or a Windows file share. ... Use this task in a build pipeline to publish build artifacts...
Read more >
Maven – Guide to uploading artifacts to the Central Repository
Guide to uploading artifacts to the Central Repository. In order for users of Maven to utilize artifacts produced by your project, you must...
Read more >
Publish Reports and Artifacts | GoCD User Documentation
To publish artifacts we add an < artifact > to the job configuration. More information can be found on the Managing artifacts and...
Read more >
Understanding Build and Pipeline Artifacts in Azure DevOps
Azure Exams, Coupons, Quizzes: https://www.linkedin.com/company/azurea2zWatch FREE video ...
Read more >
Publish or perish, but do not forget your software artifacts
Properly publishing an artifact requires a lot of initial (e.g., documentation, packaging) and maintenance effort (e.g., updating ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found