Skip to content

Commit e659e3a

Browse files
authored
NETOBSERV-2098: Unified-perspectives (#719)
* add namespace bar selector for unified perspective * fix tests * fix standalone
1 parent 34765b3 commit e659e3a

17 files changed

+1117
-84
lines changed

pkg/server/routes.go

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,10 @@ func setupRoutes(ctx context.Context, cfg *config.Config, authChecker auth.Check
2222
r := mux.NewRouter()
2323
h := handler.Handlers{Cfg: cfg, PromInventory: promInventory}
2424

25+
// Role
26+
r.PathPrefix("/").Subrouter().HandleFunc("/role", getRole(authChecker))
27+
28+
// API role checks
2529
api := r.PathPrefix("/api").Subrouter()
2630
api.Use(func(orig http.Handler) http.Handler {
2731
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
@@ -62,6 +66,19 @@ func setupRoutes(ctx context.Context, cfg *config.Config, authChecker auth.Check
6266
return r
6367
}
6468

69+
func getRole(authChecker auth.Checker) func(http.ResponseWriter, *http.Request) {
70+
return func(w http.ResponseWriter, r *http.Request) {
71+
role := "dev"
72+
if err := authChecker.CheckAdmin(context.TODO(), r.Header); err == nil {
73+
role = "admin"
74+
}
75+
_, err := w.Write([]byte(role))
76+
if err != nil {
77+
logrus.Errorf("Error: %v", err)
78+
}
79+
}
80+
}
81+
6582
func forceCheckAdmin(authChecker auth.Checker, handle func(http.ResponseWriter, *http.Request)) func(http.ResponseWriter, *http.Request) {
6683
return func(w http.ResponseWriter, r *http.Request) {
6784
if err := authChecker.CheckAdmin(context.TODO(), r.Header); err != nil {

web/moduleMapper/dummy.tsx

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1+
import { NamespaceBarProps, ResourceIconProps, ResourceLinkProps } from '@openshift-console/dynamic-plugin-sdk';
12
import * as React from 'react';
2-
import { ResourceIconProps, ResourceLinkProps } from '@openshift-console/dynamic-plugin-sdk';
33
import { useK8sModelsWithColors } from '../src/utils/k8s-models-hook';
44
import { k8sModels } from './k8s-models';
55

@@ -80,4 +80,12 @@ export const ResourceLink: React.FC<ResourceLinkProps> = ({
8080
{children}
8181
</span>
8282
);
83-
};
83+
};
84+
85+
export const NamespaceBar: React.FC<NamespaceBarProps> = ({
86+
children
87+
}) => {
88+
return (
89+
<div>{children}</div>
90+
)
91+
};

0 commit comments

Comments
 (0)