X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/c8c5fc13ef57812800fb6ba4553d009ba8c5c7be..29c0944feb7932889a5b6fcaf208eef9f5864a29:/src/common/config.ts diff --git a/src/common/config.ts b/src/common/config.ts index 7363b95d4e..3dc34ce510 100644 --- a/src/common/config.ts +++ b/src/common/config.ts @@ -45,6 +45,9 @@ export interface ClusterConfigJSON { VocabularyURL: string; FileViewersConfigURL: string; }; + Login: { + LoginCluster: string; + }; } export class Config { @@ -60,6 +63,7 @@ export class Config { workbench2Url: string; vocabularyUrl: string; fileViewersConfigUrl: string; + loginCluster: string; } export const fetchConfig = () => { @@ -72,7 +76,7 @@ export const fetchConfig = () => { }) .then(workbenchConfig => { if (workbenchConfig.API_HOST === undefined) { - throw new Error(`Unable to start Workbench. API_HOST is undefined in ${WORKBENCH_CONFIG_URL}.`); + throw new Error(`Unable to start Workbench. API_HOST is undefined in ${WORKBENCH_CONFIG_URL} or the environment.`); } return Axios.get(getClusterConfigURL(workbenchConfig.API_HOST)).then(response => { const config = new Config(); @@ -111,6 +115,7 @@ remove the entire ${varName} entry from ${WORKBENCH_CONFIG_URL}`); config.workbench2Url = clusterConfigJSON.Services.Workbench2.ExternalURL; config.workbenchUrl = clusterConfigJSON.Services.Workbench1.ExternalURL; config.keepWebServiceUrl = clusterConfigJSON.Services.WebDAV.ExternalURL; + config.loginCluster = clusterConfigJSON.Login.LoginCluster; mapRemoteHosts(clusterConfigJSON, config); return { config, apiHost: workbenchConfig.API_HOST }; @@ -135,7 +140,8 @@ export const mockConfig = (config: Partial): Config => ({ workbenchUrl: "", workbench2Url: "", vocabularyUrl: "", - fileViewersConfigUrl: "" + fileViewersConfigUrl: "", + loginCluster: "" }); const getDefaultConfig = (): WorkbenchConfig => { @@ -157,4 +163,4 @@ const getDefaultConfig = (): WorkbenchConfig => { export const ARVADOS_API_PATH = "arvados/v1"; export const CLUSTER_CONFIG_URL = "arvados/v1/config"; -export const getClusterConfigURL = (apiHost: string) => `${window.location.protocol}//${apiHost}/${CLUSTER_CONFIG_URL}?nocache=${(new Date()).getTime()}`; \ No newline at end of file +export const getClusterConfigURL = (apiHost: string) => `${window.location.protocol}//${apiHost}/${CLUSTER_CONFIG_URL}?nocache=${(new Date()).getTime()}`;