openshift / console Goto Github PK
View Code? Open in Web Editor NEWOpenShift Cluster Console UI
Home Page: https://www.openshift.org
License: Apache License 2.0
OpenShift Cluster Console UI
Home Page: https://www.openshift.org
License: Apache License 2.0
In flipping between the two consoles, I noticed we use a couple of the same primary nav labels to mean different things in the two different consoles and, in the case of "Applications", the icons differ.
@spadgett and I briefly discussed these issues this morning, and would like feedback from @openshift/team-ux-review and anyone interested on how to best resolve.
Overview
Presumably we'd want to keep "Overview" to mean project overview for the forthcoming project overview in console? What do we change "Overview" in console to? What icon goes with the new label?
Applications
@spadgett and I couldn't come up with a suggestion for the label change we liked. But presumably we don't want to use the layers icon in console at all since it so closely resembles pficon-build? What do we use instead?
@openshift/team-ux-review @robszumski @rhamilto @sg00dwin @alecmerdler
We've talked about this before, but can we consider removing labels as a row in the pod list? Here is an example from a real cluster where I can only see two rows in a fairly large browser window.
Would a column like "Owner" be better here anyway?
Looking at https://console-openshift-console.apps.crawford.coreservices.team.coreos.systems/marketplace?details-item=etcd%2Fopenshift-operator-lifecycle-manager, I'm unable to actually subscribe. The button just doesn't do anything. I don't see any errors in my browser's console.
With installer v0.5.0-master-36-gb4f5ceb6bfde8d3dc0e29f708e0494488ea37ee0 and ostree
ostree 47.194 on AWS, the console displays a banner message:
Unfortunately, it displays no instructions or guidance about how one might go about doing so.
We should break the filter string into whitespace separated words so that searches like "java database" matches the words appearing anywhere in the description instead of as one literal string.
Issues with the actions dropdown on the project status page.
See screenshot below for reference.
Currently when a user clicks the copy icon, there is no user feedback. Can we add a tooltip so the regular state says "Copy to Clipboard" and once clicked, the tooltip changes to "Copied"?
Note: this was discussed in PR #50 originally, but there was an issue with the tooltip getting cut off:
https://user-images.githubusercontent.com/1668218/40371608-289552ec-5de3-11e8-8080-4b2dcfa8aa8a.png
The mobile team is looking to use the same component, so we would like to get a tooltip implemented! cc @openshift/team-ux-review @spadgett
I'm working with Mary Shakshober (UXD Visual Design Intern) to get some drag and drop handle icons created and put into PatternFly for use in reordering environment variables, here: PR #88
Looking to have the icons designed by 6/15, and put into PatternFly during PF's next sprint! Will update here when those icons are available to use.
The builds created from the build config create page examples can fail because the examples reference image streams that may not exist.
I think we came to a consensus on the design solution so that users get successful builds using the example build configs. @bmignano can you post here? FYI @rhamilto @spadgett
I viewed https://console-openshift-console.apps.crawford.coreservices.team.coreos.systems/k8s/ns/default/installplans (probably gone by the time you are reading this) and it shows the following:
We probably want to suggest the use of oc
instead of kubectl
.
It's frustrating not seeing them. However, note that for builds the prometheus query is for pod_name="X",container_name="" (we have to show the full pod CPU because the build is run under the pod cgroup, not a container cgroup).
Namespace selector doesn't allow to create a new namespace/project, so I have to go back, create one manually and create an app again
# oc version
oc v3.9.0+ba7faec-1
kubernetes v1.9.1+a0ce1bc657
features: Basic-Auth GSSAPI Kerberos SPNEGO
Server https://openshift-1:8443
openshift v3.9.0+ba7faec-1
kubernetes v1.9.1+a0ce1bc657
In openshift
namespace, there are two same service: OpenJDK 8
openjdk
template source code is here
If you create any new serviceclasses in the catalog the UI requires a browser refresh to pick them up. Is there any way to make it more dynamic so a browser refresh isn't required?
Chunk sizes for Catalog and Marketplace are larger than other chunks and have special settings in the performance scenario tests. These should be reduced and these exceptions removed or reduced.
Shares is not a thing. We should either report cores (unit-less) or millicores (most people think in terms of fractions of a core though, so 0.01 cores reads better than 10m in most cases).
Right now when using a chained build will only show the last build step as part of the Deployment Config, in our case where the first step can take several minutes it seems as though nothing is happening for a long time. You can of course check the Builds menu but it would be nice if it were possible to have this directly visible in the Overview.
For the read-only pages (pods / builds) without vars set, the drag and drop icons shouldn't be present in either env types in the editor.
Minor issue I found on the project status page where the page view selector icon (dashboard) gets cut off at certain screen sizes. See screenshot below. @spadgett
I think this change was unintentional, but the list row content now vertically centers when some lines wrap. It used to be top aligned. It appears to be this rule:
When I use the console top of kubernetes v1.11 and click on overview
button of a namespace, I'm getting this error within the Browser console and the screen stays white
index.tsx:57 destroying websocket: /api/kubernetes/apis/apps/v1/namespaces/odo/statefulsets?watch=true&resourceVersion=10213
index.tsx:57 statefulsets---{"ns":"odo"} timed out - restarting polling
react-dom.production.min.js:13 TypeError: Cannot read property 'data' of undefined
at t.createDeploymentConfigItems (index.tsx:59)
at t.createOverviewData (index.tsx:59)
at t.componentDidUpdate (index.tsx:59)
at commitLifeCycles (react-dom.production.min.js:13)
at w (react-dom.production.min.js:13)
at S (react-dom.production.min.js:13)
at x (react-dom.production.min.js:13)
at b (react-dom.production.min.js:13)
at y (react-dom.production.min.js:13)
at p (react-dom.production.min.js:13)
Image stream overview displays a list of tags, which are clickable. However, that takes me to image stream tags view. On that view, I don't see historical tags (you need the image stream for that). But another problem is that you can have spec or status tags, and both need to be viewable (i.e. the following states)
foo
(can have history, image stream tag will return something)foo
(no history, image stream tag api returns 404)foo
(can have history, can have spec, and need to show image metadata).At some point we will release a v2 image stream tag api that corrects the gaps in the current v1 image stream tag. Until then, you'll need to do the following:
Currently for tooltips we are using https://github.com/mcumpl/react-lightweight-tooltip component. Unfortunately it's really lightweight since it doesn't supports some crucial settings OOTB :
For that reason I would propose to switch to https://github.com/wwayne/react-tooltip component instead of the current one.
Use notes from #88 (comment) to add help text to the Environment Page of the console. Socialize the comments through a ux review.
Looking at https://console-openshift-console.apps.crawford.coreservices.team.coreos.systems/k8s/all-namespaces/cluster.k8s.io~v1alpha1~MachineSet, I see the following:
" of 0 machines" should probably read "0 of 0 machines" (or maybe something similar).
When logging out from the console as userA, using projectA and logging back as userB, projectA will be set a default project for userB to use.
Display issues caused by value not being shown in <pre>
:
Not sure what changed since this was introduced in #87 where it displays correctly:
We have the OpenShift Cluster with the OpenShift Console deployed. We have multiple namespaces and one of the namespace has around ~ 170 pods.
When logged in, it's terrifically slow and hangs without any response. After a while the chrome window goes to the screen with Aw snap, something went wrong while displaying this webpage
message.
If I have the Developer Tools
opened, it automatically puts a break point and have a message as Paused before potential out-of-memory crash
as shown below.
And the memory tab shows around 2Gi as shown in the next attachments.
Also attached the logs from the DevTools console logs.
developertools.log
The annotations link on ImageStream overview pops up a modal dialog that only shows 1 row and 30 columns for both name and value, which isn't enough to really convey annotations. It needs to be possible to view annotations easily, and those annotations can be up to hundreds of characters. A modal dialog really doesn't allow that to happen.
Unique names for projects are used in all places and display names only appear in the details, which seems to be the opposite of their intended purpose. Additionally, project descriptions don't appear anywhere that I've been able to find. I wonder if we should emphasize these fields more, or remove them if they are not used.
Often after creating a first instance of a specific resource(Service, Secret, Stateful Set, ... ) the position of the actionMenu and resource-icon is swapped. Even after the navigating to some other page and back to the resource List page the order is still swapped. Only after refreshing the page the order goes back to normal.
Swapped position:
Also the size of the resource-icon is incorrect since it's bigger the the intended size.
Can't create an environment variable value from a secret or config map on a container instance > 1. The env editor will only create the env var on the first container instance no matter which create button is pressed.
After apply kubevirt-web-ui [1] to ocp cluster, it could be able to create virtual machine in http://kubevirt-web-ui-kweb-ui.cloudapps.example.com. However, create a virtual machine from a typical yaml [2] file is failed because of such an error Error "Required value" for field "metadata.namespace"
.
[1] https://github.com/kubevirt/web-ui
[2] https://raw.githubusercontent.com/kubevirt/kubevirt/master/cluster/examples/vm-cirros.yaml
Additional notes:
By adding the namespace to the VM yaml, then create it works.
The container statuses on the pod page should be sorted in the order they're declared in the array, first init containers then regular containers.
cc @smarterclayton
/kind bug
/area usability
/priority p2
In this case the pod has failed
status:
phase: Failed
conditions:
- type: Initialized
status: 'False'
lastProbeTime: null
lastTransitionTime: '2018-06-08T02:35:19Z'
reason: ContainersNotInitialized
message: 'containers with incomplete status: [initupload place-tools]'
- type: Ready
status: 'False'
lastProbeTime: null
lastTransitionTime: '2018-06-08T02:35:19Z'
reason: ContainersNotReady
message: 'containers with unready status: [test sidecar]'
- type: PodScheduled
status: 'True'
lastProbeTime: null
lastTransitionTime: '2018-06-08T02:35:19Z'
hostIP: 10.142.0.6
podIP: 172.16.14.101
startTime: '2018-06-08T02:35:19Z'
initContainerStatuses:
- name: clonerefs
state:
terminated:
exitCode: 0
reason: Completed
startedAt: '2018-06-08T02:35:21Z'
finishedAt: '2018-06-08T02:35:25Z'
containerID: >-
docker://69859fd7510e3a6bd5e8d2b619c31847ac1acd7f2dafeb5eb9b777ef4206bb50
lastState: {}
ready: true
restartCount: 0
image: 'registry.svc.ci.openshift.org/ci/clonerefs:latest-json'
imageID: >-
docker-pullable://registry.svc.ci.openshift.org/ci/clonerefs@sha256:27418befcbf1561f32d97eb47c94d8ffebb4747c19cb8e9ab43f8d594165e0f3
containerID: >-
docker://69859fd7510e3a6bd5e8d2b619c31847ac1acd7f2dafeb5eb9b777ef4206bb50
- name: initupload
state:
terminated:
exitCode: 1
reason: Error
startedAt: '2018-06-08T02:35:26Z'
finishedAt: '2018-06-08T02:35:27Z'
containerID: >-
docker://ab37a33572b4fd62793ac3e983e6b560ab9656c4e31287447d2ac7b18fcdbf5d
lastState: {}
ready: false
restartCount: 0
image: 'registry.svc.ci.openshift.org/ci/initupload:latest-json'
imageID: >-
docker-pullable://registry.svc.ci.openshift.org/ci/initupload@sha256:c249cc0438dbd12923b1b2190968f6c3fcb8a06dcfb2060b52ade27924863f21
containerID: >-
docker://ab37a33572b4fd62793ac3e983e6b560ab9656c4e31287447d2ac7b18fcdbf5d
- name: place-tools
state:
waiting:
reason: PodInitializing
lastState: {}
ready: false
restartCount: 0
image: 'registry.svc.ci.openshift.org/ci/entrypoint:latest-json'
imageID: ''
containerStatuses:
- name: sidecar
state:
waiting:
reason: PodInitializing
lastState: {}
ready: false
restartCount: 0
image: 'registry.svc.ci.openshift.org/ci/sidecar:latest-json'
imageID: ''
- name: test
state:
waiting:
reason: PodInitializing
lastState: {}
ready: false
restartCount: 0
image: >-
docker-registry.default.svc:5000/ci/ci-operator@sha256:a3ba73101306cf64bb84f0d2270fd3f31186a97c56bc568bcda52f185eaf645a
imageID: ''
qosClass: BestEffort
But showing PodInitializing
here is a bit confusing since it's usually a forward action (the pod is initializing). I think "InitContainerFailed" or "InitializationFailed" would be more appropriate.
This is re-issue from openshift/origin-web-console#2919
For the mentioned issue there is also PR. I am opening this issue to start discussion if I should start working on this or if it would be better to wait for some other things to be done first.
Nav Menu is "Service Catalog -> Service Classes"
List Page has "Cluster Service Classes"
Details Page has "Service Class Overview"
Should we remove "Cluster ..." from List Page, or add "Cluster ..." to Details page?
(NOTE: we have someone internally who's been assigned this)
Currently we generate a "state" redirect parameter because some providers reject requests without them. However we don't actually link the state parameter to the user's session, leaving us vulnerable to certain cross-site request forgery attacks.
Lines 232 to 238 in 9c80cb3
https://tools.ietf.org/html/rfc6749#section-4.1.1
Cookie the user with something that can link back to the "state" parameter we pass, per the recommendations in RFC 6819.
https://tools.ietf.org/html/rfc6819#section-5.3.5
5.3.5. Link the "state" Parameter to User Agent Session
The "state" parameter is used to link client requests and prevent
CSRF attacks, for example, attacks against the redirect URI. An
attacker could inject their own authorization "code" or access token,
which can result in the client using an access token associated with
the attacker's protected resources rather than the victim's (e.g.,
save the victim's bank account information to a protected resource
controlled by the attacker).The client should utilize the "state" request parameter to send the
authorization server a value that binds the request to the user
agent's authenticated state (e.g., a hash of the session cookie used
to authenticate the user agent) when making an authorization request.
Once authorization has been obtained from the end user, the
authorization server redirects the end-user's user agent back to the
client with the required binding value contained in the "state"
parameter.The binding value enables the client to verify the validity of the
request by matching the binding value to the user agent's
I expected to be able to sort by clicking on "created" and wasn't able to.
Openshift Console: master branch
Cloud platform : k8s - 1.13
Issue : No terminal console is displayed as you can see here when we try to access a pod' terminal
Console has been launched using these commands
2018/12/18 09:46:06 cmd/main: cookies are not secure because base-address is not https!
2018/12/18 09:46:06 cmd/main: running with AUTHENTICATION DISABLED!
2018/12/18 09:46:06 cmd/main: Binding to 0.0.0.0:9000...
2018/12/18 09:46:06 cmd/main: not using TLS
2018/12/18 09:46:07 CheckOrigin: Proxy has no configured Origin. Allowing origin [http://localhost:9000] to ws://192.168.65.42:8080/api/v1/namespaces/my-spring-app/pods?watch=true&fieldSelector=metadata.name%3Dfruit-backend-sb-66ff974cd-2lwjl
2018/12/18 09:46:08 CheckOrigin: Proxy has no configured Origin. Allowing origin [http://localhost:9000] to ws://192.168.65.42:8080/api/v1/namespaces/component-operator/pods?watch=true&fieldSelector=metadata.name%3Dcomponent-operator-59c97d5cb7-h8c8z
2018/12/18 09:46:13 http: proxy error: context canceled
2018/12/18 09:46:14 CheckOrigin: Proxy has no configured Origin. Allowing origin [http://localhost:9000] to ws://192.168.65.42:8080/api/v1/namespaces?watch=true&resourceVersion=22021
2
...
I can access remotely a pod using the kubectl command
kubectl exec -it fruit-backend-sb-66ff974cd-2lwjl -n my-spring-app -- /bin/bash
/usr/bin/id: cannot find name for user ID 1001
[I have no name!@fruit-backend-sb-66ff974cd-2lwjl ~]$ ls -la
total 28
drwxrwx--- 4 1001 root 4096 Dec 18 08:11 .
drwxr-xr-x 6 root root 4096 Dec 18 08:11 ..
-rw------- 1 1001 root 16 Dec 18 08:11 .bash_history
-rw-rw-r-- 1 1001 root 18 Sep 26 2017 .bash_logout
-rw-rw-r-- 1 1001 root 193 Sep 26 2017 .bash_profile
-rw-rw-r-- 1 1001 root 231 Sep 26 2017 .bashrc
drwxrwxr-x 2 1001 root 4096 Jul 16 09:30 .m2
The patternfly react CatalogTileViewCategory component implementation caused the tiles to be rendered but not visible. This meant the browser Find was still able to find those items. Fix for the CatalogTileViewCategory is in patternfly-react-extensions version 2.9.1
To fix this issue the catalog view needs to pass CatalogTile components to the CatalogTileViewCategory component which now work as links if an href or onClick are passed.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.