diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md
index a13b18ed0e..35e71a9043 100644
--- a/docs/CONTRIBUTING.md
+++ b/docs/CONTRIBUTING.md
@@ -110,6 +110,22 @@ To run a subset of e2e tests, you need to specify the suite with `-run`, and the
E2E_TEST_OPTIONS="-run 'TestCanarySuite' -testify.m 'TestCanaryScaleDownOnAbortNoTrafficRouting'" make test-e2e
```
+## Running the UI
+
+If you'd like to run the UI locally, you first need a running Rollouts controller. This can be a locally running controller with a k3d cluster, as described above, or a controller running in a remote Kubernetes cluster.
+
+In order for the local React app to communicate with the controller and Kubernetes API, run the following to open a port forward to the dashboard:
+```bash
+kubectl argo rollouts dashboard
+```
+
+In another terminal, run the following to start the UI:
+```bash
+cd ui
+yarn install
+yarn start
+```
+
## Controller architecture
Argo Rollouts is actually a collection of individual controllers
diff --git a/pkg/kubectl-argo-rollouts/info/rollout_info.go b/pkg/kubectl-argo-rollouts/info/rollout_info.go
index 59ee3f076a..8afc8cf02f 100644
--- a/pkg/kubectl-argo-rollouts/info/rollout_info.go
+++ b/pkg/kubectl-argo-rollouts/info/rollout_info.go
@@ -29,6 +29,8 @@ func NewRolloutInfo(
ObjectMeta: &v1.ObjectMeta{
Name: ro.Name,
Namespace: ro.Namespace,
+ Labels: ro.Labels,
+ Annotations: ro.Annotations,
UID: ro.UID,
CreationTimestamp: ro.CreationTimestamp,
ResourceVersion: ro.ObjectMeta.ResourceVersion,
diff --git a/ui/package.json b/ui/package.json
index fac0a758f3..46c0e34666 100644
--- a/ui/package.json
+++ b/ui/package.json
@@ -4,6 +4,7 @@
"private": true,
"dependencies": {
"@fortawesome/fontawesome-svg-core": "^6.4.0",
+ "@fortawesome/free-regular-svg-icons": "^6.4.0",
"@fortawesome/free-solid-svg-icons": "^6.4.0",
"@fortawesome/react-fontawesome": "^0.2.0",
"antd": "^5.4.2",
diff --git a/ui/src/app/App.tsx b/ui/src/app/App.tsx
index 60ba5419c6..ae0bd2b54e 100644
--- a/ui/src/app/App.tsx
+++ b/ui/src/app/App.tsx
@@ -7,7 +7,7 @@ import './App.scss';
import {NamespaceContext, RolloutAPI} from './shared/context/api';
import {Modal} from './components/modal/modal';
import {Rollout} from './components/rollout/rollout';
-import {RolloutsList} from './components/rollouts-list/rollouts-list';
+import {RolloutsHome} from './components/rollouts-home/rollouts-home';
import {Shortcut, Shortcuts} from './components/shortcuts/shortcuts';
import {ConfigProvider} from 'antd';
import {theme} from '../config/theme';
@@ -84,7 +84,7 @@ const App = () => {
}
+ component={}
shortcuts={[
{key: '/', description: 'Search'},
{key: 'TAB', description: 'Search, navigate search items'},
diff --git a/ui/src/app/components/confirm-button/confirm-button.tsx b/ui/src/app/components/confirm-button/confirm-button.tsx
index 4dd4f37e7c..48ce3fba77 100644
--- a/ui/src/app/components/confirm-button/confirm-button.tsx
+++ b/ui/src/app/components/confirm-button/confirm-button.tsx
@@ -3,7 +3,7 @@ import * as React from 'react';
import {Button, Popconfirm, Tooltip} from 'antd';
import {ButtonProps} from 'antd/es/button/button';
import {useState} from 'react';
-import { TooltipPlacement } from 'antd/es/tooltip';
+import {TooltipPlacement} from 'antd/es/tooltip';
interface ConfirmButtonProps extends ButtonProps {
skipconfirm?: boolean;
@@ -51,7 +51,8 @@ export const ConfirmButton = (props: ConfirmButtonProps) => {
onClick={(e) => {
e.stopPropagation();
e.preventDefault();
- }}>
+ }}
+ >
{
okText='Yes'
cancelText='No'
onOpenChange={handleOpenChange}
- placement={props.placement || 'bottom'}>
+ placement={props.placement || 'bottom'}
+ >
Make sure you are running the API server in the correct namespace. Your current namespace is:
+
+ {props.namespace}
+
+
+
+ To create a new Rollout and Service, run
+ kubectl apply -f https://raw.githubusercontent.com/argoproj/argo-rollouts/master/docs/getting-started/basic/rollout.yaml
+ kubectl apply -f https://raw.githubusercontent.com/argoproj/argo-rollouts/master/docs/getting-started/basic/service.yaml
+ or follow the{' '}
+
+ Getting Started guide
+
+ .
+
Make sure you are running the API server in the correct namespace. Your current namespace is:
-
- {props.namespace}
-
-
-
- To create a new Rollout and Service, run
- kubectl apply -f https://raw.githubusercontent.com/argoproj/argo-rollouts/master/docs/getting-started/basic/rollout.yaml
- kubectl apply -f https://raw.githubusercontent.com/argoproj/argo-rollouts/master/docs/getting-started/basic/service.yaml
- or follow the{' '}
-
- Getting Started guide
-
- .
-