[MM-18552] Autoupdater (#1714)

* wip

* background download

* various fixes

* wip

* wokring autoupgrade

* fix menu

* fix windows

* cleanup

* add publishername

* fix messages and titles

* Test updates

* Moved module and added functionality to click icon to install (instead of just download)

* Add auto update setting, update on close app if downloaded

* Tests, changes for security fixes, update version number

* Update E2E tests

* Lint fix

* Update to latest electron-updater

* Revert to stable electron-builder (only needed to update electron-updater)

* Fix package-lock

* skip flaky test

* Update package

* Fix E2E test

* Fixes for enabling/disabled autoupdater

* Fixed GPO definitions

* [MM-38300] Set localhost as the test server

* blank

* Switch to s3 bucket for testing

* Update icons to match spec

* Add menu items for download/update actions

* Type and test fixes

* Fix notification circle

* Fix macOS app not restarting on Restart/Update

* Update dialog box titles

* Turn off file system check for Linux

* Changes to support deployments

* Testing autoupdater deployments to s3

* disable tests for now

* asfrehwf

* fine no windows WHATEVER

* remove windows again

* Try universal all in one

* pffftttngggguhhhh

* make sure it's working

* Missed artifacts script

* Modify destination as well

* one more time!

* Update yml files

* Oops

* add yq manually

* oof

* Fix the script to work properly

* Fix release script

* Fix script again so it runs in time

* Build version 2

* Revert build specific changes

* Lint override

* Fix build apps for PR builds

* One more change

* Add file generation for .deb repo

* Deb repo test

* skip tests for now

* Fix artifact push

* Persist after repo creation

* Put tests back

* Fix unit tests

* Enable mac generated builds temp

* Temporarily disable tests

* Fix issue where notification doesn't pop dialog box

* Try version 2 again

* Put the version back

* Attempting to debug mac app path issue

* Fix issue where Mac app will quarantine itself after first update

* Lock versions of yq

* Fix yq for mac

* As usual, Mac is difficult :P

* Add quotes to anti-quarantine command

* Change to spawn to avoid command injection

* Oops

* Nightly deployment changes (#2005)

* Test nightly deploy

* I fixed a some things

* aaaaaaaaa

* Restore old bucket

* Added progress indicator via tooltip

* Ship nightly builds to main S3 bucket

* PR feedback

* Fix a couple security exploits

* Fix opacity on light mode button

* Use large app icon

* Resize icon for Windows

* Resize icon for Mac

* Update to electron-updater final

* Remove Mac support and deb repo

* Typo

* Remove deb script

* Remove checksum function

* Removed autoUpdateSettingsPath

* Update URL

Co-authored-by: = <=>
Co-authored-by: Devin Binnie <devin.binnie@mattermost.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Devin Binnie <52460000+devinbinnie@users.noreply.github.com>
This commit is contained in:
Guillermo Vayá
2022-03-08 17:38:38 +01:00
committed by GitHub
parent 0ab6a1f80f
commit d2435a561c
56 changed files with 2323 additions and 1502 deletions

View File

@@ -1,7 +1,7 @@
{
"name": "mattermost-desktop",
"productName": "Mattermost",
"version": "5.0.0-develop",
"version": "5.1.0-develop.1",
"description": "Mattermost",
"main": "dist/index.js",
"author": "Mattermost, Inc. <feedback@mattermost.com>",
@@ -16,7 +16,7 @@
"url": "git://github.com/mattermost/desktop.git"
},
"config": {
"target": "13.2.0",
"target": "14.1.0",
"arch": "x64",
"target_arch": "x64",
"disturl": "https://electronjs.org/headers",
@@ -49,7 +49,7 @@
"package:all": "cross-env NODE_ENV=production npm-run-all check-build-config package:windows package:mac package:mac-universal package:linux",
"package:windows": "cross-env NODE_ENV=production npm-run-all check-build-config build && electron-builder --win --x64 --ia32 --publish=never",
"package:mac": "cross-env NODE_ENV=production npm-run-all check-build-config build && electron-builder --mac --x64 --arm64 --publish=never",
"package:mac-universal": "cross-env NODE_ENV=production npm-run-all check-build-config build && electron-builder --mac --universal --publish=never",
"package:mac-with-universal": "cross-env NODE_ENV=production npm-run-all check-build-config build && electron-builder --mac --x64 --arm64 --universal --publish=never",
"package:linux": "cross-env NODE_ENV=production npm-run-all check-build-config build && electron-builder --linux --x64 --ia32 --publish=never",
"lint:js": "eslint --ignore-path .gitignore --ignore-pattern node_modules --ext .js --ext .jsx --ext .ts --ext .tsx .",
"lint:js-quiet": "eslint --ignore-path .gitignore --ignore-pattern node_modules --ext .js --ext .jsx --ext .ts --ext .tsx . --quiet",
@@ -81,7 +81,8 @@
"**/src/**/*.test.js"
],
"globals": {
"__HASH_VERSION__": "5.0.0"
"__HASH_VERSION__": "5.0.0",
"__CAN_UPGRADE__": false
},
"setupFiles": [
"./src/jestSetup.js"
@@ -134,7 +135,7 @@
"css-loader": "^1.0.1",
"devtron": "^1.4.0",
"electron": "14.1.0",
"electron-builder": "22.11.7",
"electron-builder": "^22.14.5",
"electron-connect": "^0.6.3",
"electron-mocha": "^10.1.0",
"electron-notarize": "^1.1.0",
@@ -173,6 +174,7 @@
},
"dependencies": {
"@hapi/joi": "^16.1.8",
"@mattermost/compass-icons": "0.1.21",
"auto-launch": "^5.0.5",
"bootstrap": "^4.6.0",
"bootstrap-dark": "^1.0.3",
@@ -182,8 +184,9 @@
"electron-devtools-installer": "^3.2.0",
"electron-is-dev": "^2.0.0",
"electron-log": "^4.4.1",
"electron-updater": "4.3.9",
"electron-updater": "5.0.0",
"font-awesome": "^4.7.0",
"pretty-bytes": "^6.0.0",
"prop-types": "^15.6.2",
"react": "^16.14.0",
"react-beautiful-dnd": "^13.1.0",