Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add execution list and details pages #2059

Merged
merged 4 commits into from
Sep 7, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 0 additions & 8 deletions envoy-entrypoint.sh

This file was deleted.

6 changes: 2 additions & 4 deletions envoy.Dockerfile
Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
FROM envoyproxy/envoy:latest

COPY envoy.yaml /etc/envoy.yaml
COPY envoy-entrypoint.sh /

RUN chmod 500 /envoy-entrypoint.sh

RUN apt-get update && \
apt-get install gettext -y

ENTRYPOINT ["/envoy-entrypoint.sh"]
ENTRYPOINT ["/usr/local/bin/envoy", "-c"]
CMD ["/etc/envoy.yaml"]
5 changes: 5 additions & 0 deletions frontend/src/components/Router.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ import Dialog from '@material-ui/core/Dialog';
import DialogActions from '@material-ui/core/DialogActions';
import DialogContent from '@material-ui/core/DialogContent';
import DialogTitle from '@material-ui/core/DialogTitle';
import ExecutionList from '../pages/ExecutionList';
import ExecutionDetails from '../pages/ExecutionDetails';
import ExperimentDetails from '../pages/ExperimentDetails';
import ExperimentsAndRuns, { ExperimentsAndRunsTab } from '../pages/ExperimentsAndRuns';
import NewExperiment from '../pages/NewExperiment';
Expand Down Expand Up @@ -72,6 +74,7 @@ export enum RouteParams {
// tslint:disable-next-line:variable-name
export const RoutePrefix = {
ARTIFACT: '/artifact',
EXECUTION: '/execution',
RECURRING_RUN: '/recurringrun',
};

Expand Down Expand Up @@ -136,6 +139,8 @@ class Router extends React.Component<{}, RouteComponentState> {
{ path: RoutePage.ARCHIVE, Component: Archive },
{ path: RoutePage.ARTIFACTS, Component: ArtifactList },
{ path: RoutePage.ARTIFACT_DETAILS, Component: ArtifactDetails },
{ path: RoutePage.EXECUTIONS, Component: ExecutionList },
{ path: RoutePage.EXECUTION_DETAILS, Component: ExecutionDetails },
{ path: RoutePage.EXPERIMENTS, Component: ExperimentsAndRuns, view: ExperimentsAndRunsTab.EXPERIMENTS },
{ path: RoutePage.EXPERIMENT_DETAILS, Component: ExperimentDetails },
{ path: RoutePage.NEW_EXPERIMENT, Component: NewExperiment },
Expand Down
20 changes: 19 additions & 1 deletion frontend/src/components/SideNav.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ import ArchiveIcon from '@material-ui/icons/Archive';
import ArtifactsIcon from '@material-ui/icons/BubbleChart';
import Button from '@material-ui/core/Button';
import ChevronLeftIcon from '@material-ui/icons/ChevronLeft';
import ExecutionsIcon from '@material-ui/icons/PlayArrow';
import ExperimentsIcon from '../icons/experiments';
import IconButton from '@material-ui/core/IconButton';
import JupyterhubIcon from '@material-ui/icons/Code';
Expand Down Expand Up @@ -252,7 +253,7 @@ export default class SideNav extends React.Component<SideNavProps, SideNavState>
</Button>
</Link>
</Tooltip>
<div className={classes(css.indicator, !page.startsWith(RoutePage.ARTIFACTS) && css.indicatorHidden)} />
<div className={classes(css.indicator, !this._highlightArtifactsButton(page) && css.indicatorHidden)} />
<Tooltip title={'Artifacts List'} enterDelay={300} placement={'right-start'}
disableFocusListener={!collapsed} disableHoverListener={!collapsed}
disableTouchListener={!collapsed}>
Expand All @@ -265,6 +266,19 @@ export default class SideNav extends React.Component<SideNavProps, SideNavState>
</Button>
</Link>
</Tooltip>
<div className={classes(css.indicator, !this._highlightExecutionsButton(page) && css.indicatorHidden)} />
<Tooltip title={'Executions List'} enterDelay={300} placement={'right-start'}
disableFocusListener={!collapsed} disableHoverListener={!collapsed}
disableTouchListener={!collapsed}>
<Link id='executionsBtn' to={RoutePage.EXECUTIONS} className={commonCss.unstyled}>
<Button className={classes(css.button,
this._highlightExecutionsButton(page) && css.active,
collapsed && css.collapsedButton)}>
<ExecutionsIcon />
<span className={classes(collapsed && css.collapsedLabel, css.label)}>Executions</span>
</Button>
</Link>
</Tooltip>
{this.state.jupyterHubAvailable && (
<Tooltip title={'Open Jupyter Notebook'} enterDelay={300} placement={'right-start'}
disableFocusListener={!collapsed} disableHoverListener={!collapsed}
Expand Down Expand Up @@ -327,6 +341,10 @@ export default class SideNav extends React.Component<SideNavProps, SideNavState>
return page.startsWith(RoutePrefix.ARTIFACT);
}

private _highlightExecutionsButton(page: string): boolean {
return page.startsWith(RoutePrefix.EXECUTION);
}

private _toggleNavClicked(): void {
this.setStateSafe({
collapsed: !this.state.collapsed,
Expand Down
30 changes: 21 additions & 9 deletions frontend/src/components/__snapshots__/Router.test.tsx.snap
Original file line number Diff line number Diff line change
Expand Up @@ -44,60 +44,72 @@ exports[`Router initial render 1`] = `
<Route
exact={true}
key="3"
path="/experiments"
path="/executions"
render={[Function]}
/>
<Route
exact={true}
key="4"
path="/experiments/details/:eid"
path="/execution_types/:executionType+/executions/:id"
render={[Function]}
/>
<Route
exact={true}
key="5"
path="/experiments/new"
path="/experiments"
render={[Function]}
/>
<Route
exact={true}
key="6"
path="/runs/new"
path="/experiments/details/:eid"
render={[Function]}
/>
<Route
exact={true}
key="7"
path="/pipelines"
path="/experiments/new"
render={[Function]}
/>
<Route
exact={true}
key="8"
path="/pipelines/details/:pid?"
path="/runs/new"
render={[Function]}
/>
<Route
exact={true}
key="9"
path="/runs"
path="/pipelines"
render={[Function]}
/>
<Route
exact={true}
key="10"
path="/recurringrun/details/:rid"
path="/pipelines/details/:pid?"
render={[Function]}
/>
<Route
exact={true}
key="11"
path="/runs/details/:rid"
path="/runs"
render={[Function]}
/>
<Route
exact={true}
key="12"
path="/recurringrun/details/:rid"
render={[Function]}
/>
<Route
exact={true}
key="13"
path="/runs/details/:rid"
render={[Function]}
/>
<Route
exact={true}
key="14"
path="/compare"
render={[Function]}
/>
Expand Down
Loading