From e62c661a8de391ae269a0170901c6b0290970620 Mon Sep 17 00:00:00 2001 From: Peter Amstutz Date: Mon, 3 Feb 2020 16:03:56 -0500 Subject: [PATCH] 16111: Display customizable SSHHelpPageHTML Arvados-DCO-1.1-Signed-off-by: Peter Amstutz --- src/common/config.ts | 6 ++++ .../virtual-machine-user-panel.tsx | 29 +++++++------------ 2 files changed, 17 insertions(+), 18 deletions(-) diff --git a/src/common/config.ts b/src/common/config.ts index f44dc168..23faaf91 100644 --- a/src/common/config.ts +++ b/src/common/config.ts @@ -41,6 +41,9 @@ export interface ClusterConfigJSON { }, WebDAVDownload: { ExternalURL: string + }, + WebShell: { + ExternalURL: string } }; Workbench: { @@ -49,6 +52,7 @@ export interface ClusterConfigJSON { FileViewersConfigURL: string; WelcomePageHTML: string; InactivePageHTML: string; + SSHHelpPageHTML: string; SiteName: string; }; Login: { @@ -155,6 +159,7 @@ export const mockClusterConfigJSON = (config: Partial): Clust Websocket: { ExternalURL: "" }, WebDAV: { ExternalURL: "" }, WebDAVDownload: { ExternalURL: "" }, + WebShell: { ExternalURL: "" }, }, Workbench: { ArvadosDocsite: "", @@ -162,6 +167,7 @@ export const mockClusterConfigJSON = (config: Partial): Clust FileViewersConfigURL: "", WelcomePageHTML: "", InactivePageHTML: "", + SSHHelpPageHTML: "", SiteName: "", }, Login: { diff --git a/src/views/virtual-machine-panel/virtual-machine-user-panel.tsx b/src/views/virtual-machine-panel/virtual-machine-user-panel.tsx index 291041b3..a641ec63 100644 --- a/src/views/virtual-machine-panel/virtual-machine-user-panel.tsx +++ b/src/views/virtual-machine-panel/virtual-machine-user-panel.tsx @@ -7,14 +7,11 @@ import { connect } from 'react-redux'; import { Grid, Typography, Button, Card, CardContent, TableBody, TableCell, TableHead, TableRow, Table, Tooltip } from '@material-ui/core'; import { StyleRulesCallback, WithStyles, withStyles } from '@material-ui/core/styles'; import { ArvadosTheme } from '~/common/custom-theme'; -import { DefaultCodeSnippet } from '~/components/default-code-snippet/default-code-snippet'; -import { Link } from 'react-router-dom'; import { compose, Dispatch } from 'redux'; import { saveRequestedDate, loadVirtualMachinesUserData } from '~/store/virtual-machines/virtual-machines-actions'; import { RootState } from '~/store/store'; import { ListResults } from '~/services/common-service/common-service'; import { HelpIcon } from '~/components/icon/icon'; -import { Routes } from '~/routes/routes'; type CssRules = 'button' | 'codeSnippet' | 'link' | 'linkIcon' | 'rightAlign' | 'cardWithoutMachines' | 'icon'; @@ -61,6 +58,8 @@ const mapStateToProps = (state: RootState) => { return { requestedDate: state.virtualMachines.date, userUuid: state.auth.user!.uuid, + helpText: state.auth.config.clusterConfig.Workbench.SSHHelpPageHTML, + webShell: state.auth.config.clusterConfig.Services.WebShell.ExternalURL, ...state.virtualMachines }; }; @@ -75,6 +74,8 @@ interface VirtualMachinesPanelDataProps { virtualMachines: ListResults; userUuid: string; links: ListResults; + helpText: string; + webShell: string; } interface VirtualMachinesPanelActionProps { @@ -161,7 +162,7 @@ const virtualMachinesTable = (props: VirtualMachineProps) => Host name Login name Command line - Web shell + {props.webShell !== "" && Web shell} @@ -169,12 +170,12 @@ const virtualMachinesTable = (props: VirtualMachineProps) => {it.hostname} {getUsername(props.links, props.userUuid)} - ssh {getUsername(props.links, props.userUuid)}@{it.hostname}.arvados - - + ssh {getUsername(props.links, props.userUuid)}@{it.hostname} + {props.webShell !== "" && + Log in as {getUsername(props.links, props.userUuid)} - + } )} @@ -188,17 +189,9 @@ const CardSSHSection = (props: VirtualMachineProps) => - - In order to access virtual machines using SSH, add an SSH key to your account and add a section like this to your SSH configuration file ( ~/.ssh/config): + +
- ; - -const textSSH = `Host *.arvados - TCPKeepAlive yes - ServerAliveInterval 60 - ProxyCommand ssh -p2222 turnout@switchyard.api.ardev.roche.com -x -a $SSH_PROXY_FLAGS %h`; \ No newline at end of file -- 2.30.2