Pipe through --updater/--no-updater flag for flipper.exe (#4277)

Summary:
In our organization, Flipper is distributed in a version controlled way. As a result, we do not want users to manually update or receive prompts to update when a new version is available. There is already a `--updater` flag in the command line arguments for flipper.exe, but it isn't piped through. This change pipes it through and disables all update related UI when `--no-updater` is passed in.
## Changelog

Support --updater and --no-updater options for flipper.exe

Pull Request resolved: https://github.com/facebook/flipper/pull/4277

Test Plan: Ran `yarn build --win` in flipper/desktop, and launched flipper.exe from flipper/dist/win-unpacked with the `--updater`, `--no-updater` and no flags and ensured the proper behavior was observed (update UI shows by default or when `--updater` is specified, and doesn't show when `--no-updater` is specified).

Reviewed By: passy

Differential Revision: D41298321

Pulled By: mweststrate

fbshipit-source-id: 5ddfede2700954f0fdd6a111b20d0836fab25565
This commit is contained in:
Ranesh Saha
2022-11-15 03:23:55 -08:00
committed by Facebook GitHub Bot
parent f70b2a2d1e
commit 7a28ed1fe5
6 changed files with 15 additions and 2 deletions

View File

@@ -18,6 +18,7 @@ test('config is decoded from env', () => {
screenCapturePath: '/my/screenshot/path',
launcherEnabled: false,
suppressPluginUpdateNotifications: true,
updaterEnabled: true,
}),
});
@@ -28,6 +29,7 @@ test('config is decoded from env', () => {
screenCapturePath: '/my/screenshot/path',
launcherEnabled: false,
suppressPluginUpdateNotifications: true,
updaterEnabled: true,
});
});
@@ -39,5 +41,6 @@ test('config is decoded from env with defaults', () => {
screenCapturePath: undefined,
launcherEnabled: true,
suppressPluginUpdateNotifications: false,
updaterEnabled: true,
});
});

View File

@@ -18,6 +18,8 @@ export function loadProcessConfig(env: NodeJS.ProcessEnv): ProcessConfig {
screenCapturePath: json.screenCapturePath,
launcherEnabled:
typeof json.launcherEnabled === 'boolean' ? json.launcherEnabled : true,
updaterEnabled:
typeof json.updaterEnabled === 'boolean' ? json.updaterEnabled : true,
suppressPluginUpdateNotifications:
typeof json.suppressPluginUpdateNotifications === 'boolean'
? json.suppressPluginUpdateNotifications