mh-cbon / go-github-release

Guide to release automation
MIT License
73 stars 5 forks source link

package upgrading #2

Open joeblew99 opened 7 years ago

joeblew99 commented 7 years ago
  1. i saw the msi project you did which is really nice.

once you make a nice package, you will also need to upgrade the packages deployed. I have seen many of them, but i noticed this one is really well done and because its part of syncthing its very well battle tested.

https://github.com/syncthing/syncthing/tree/master/lib/upgrade

This can be used to upgrade Desktop apps as well as servers.

What do you think ?

--

  1. also on another area because i build desktop apps with golang, i have started to use a new alternative to Electron. Its called Gallium.

https://github.com/alexflint/gallium

i think that maybe you might want to integrate this too since your building a golang centric stack.

mh-cbon commented 7 years ago

About upgrade,

I think this should be extracted into its own module.

So that you can bootstrap your app with it, or call an handler following some triggers, to realize the upgrade. Note their upgrade system is based solely on zip-like archives.

Regarding gallium, its an awesome project, thanks for the tip! I only regret it is so fat, 92Mb :x

Would be great to check on gallium-bundle command to understand how the osx bundling works.

https://github.com/alexflint/gallium/blob/master/cmd/gallium-bundle/bundle.go

thanks for sharing, its nice opening for future updates.

joeblew99 commented 7 years ago

thanks for the feedback. nice tips.

About them using zip archives. Yes i think it will get changed soon. We are still getting the basic going.