Page MenuHomePhabricator

D3975.id12498.diff
No OneTemporary

D3975.id12498.diff

diff --git a/keyserver/src/database/migrations.js b/keyserver/src/database/migrations.js
--- a/keyserver/src/database/migrations.js
+++ b/keyserver/src/database/migrations.js
@@ -8,10 +8,18 @@
import { dbQuery, SQL } from './database';
async function makeSureBaseRoutePathExists(filePath: string): Promise<void> {
- const readFile = await fs.promises.open(filePath, 'r');
- const contents = await readFile.readFile('utf8');
- const json = JSON.parse(contents);
- await readFile.close();
+ let readFile, json;
+ try {
+ readFile = await fs.promises.open(filePath, 'r');
+ const contents = await readFile.readFile('utf8');
+ json = JSON.parse(contents);
+ } catch {
+ return;
+ } finally {
+ if (readFile) {
+ await readFile.close();
+ }
+ }
if (json.baseRoutePath) {
return;
}
@@ -31,10 +39,18 @@
}
async function fixBaseRoutePathForLocalhost(filePath: string): Promise<void> {
- const readFile = await fs.promises.open(filePath, 'r');
- const contents = await readFile.readFile('utf8');
- let json = JSON.parse(contents);
- await readFile.close();
+ let readFile, json;
+ try {
+ readFile = await fs.promises.open(filePath, 'r');
+ const contents = await readFile.readFile('utf8');
+ json = JSON.parse(contents);
+ } catch {
+ return;
+ } finally {
+ if (readFile) {
+ await readFile.close();
+ }
+ }
if (json.baseDomain !== 'http://localhost') {
return;
}
diff --git a/keyserver/src/utils/urls.js b/keyserver/src/utils/urls.js
--- a/keyserver/src/utils/urls.js
+++ b/keyserver/src/utils/urls.js
@@ -1,10 +1,8 @@
// @flow
-import { values } from 'lib/utils/objects';
+import invariant from 'invariant';
-import commAppURLFacts from '../../facts/commapp_url';
-import landingURLFacts from '../../facts/landing_url';
-import squadCalURLFacts from '../../facts/squadcal_url';
+import { values } from 'lib/utils/objects';
export type AppURLFacts = {
+baseDomain: string,
@@ -45,22 +43,28 @@
}
function getSquadCalURLFacts(): AppURLFacts {
- return squadCalURLFacts;
+ const urlFacts = cachedURLFacts.get('squadcal');
+ invariant(urlFacts, 'keyserver/facts/squadcal_url.json missing');
+ return urlFacts;
}
function getCommAppURLFacts(): AppURLFacts {
- return commAppURLFacts;
+ const urlFacts = cachedURLFacts.get('commapp');
+ invariant(urlFacts, 'keyserver/facts/commapp_url.json missing');
+ return urlFacts;
}
function getAppURLFactsFromRequestURL(url: string): AppURLFacts {
const commURLFacts = getCommAppURLFacts();
- return url.startsWith(commURLFacts.baseRoutePath)
+ return commURLFacts && url.startsWith(commURLFacts.baseRoutePath)
? commURLFacts
: getSquadCalURLFacts();
}
function getLandingURLFacts(): AppURLFacts {
- return landingURLFacts;
+ const urlFacts = cachedURLFacts.get('landing');
+ invariant(urlFacts, 'keyserver/facts/landing_url.json missing');
+ return urlFacts;
}
function clientPathFromRouterPath(

File Metadata

Mime Type
text/plain
Expires
Sun, Oct 6, 1:36 PM (21 h, 46 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2247180
Default Alt Text
D3975.id12498.diff (2 KB)

Event Timeline