Skip to content

Commit ca45d81

Browse files
committed
make console configurable
1 parent 8c9c4d8 commit ca45d81

File tree

9 files changed

+31
-6
lines changed

9 files changed

+31
-6
lines changed

client/src/components/activity/view.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<template>
22
<v-container>
3-
<h1>Events</h1>
3+
<h1>Activity</h1>
44
<v-layout>
55
<v-row
66
v-if="auditEvents.length > 0" class="mb-10">

client/src/components/apps/detail.vue

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@
4848
<v-list-item
4949
@click="openConsole"
5050
prepend-icon="mdi-console"
51+
:disabled="!kubero.consoleEnabled"
5152
title="Open Console">
5253
</v-list-item>
5354
<v-divider class="my-3"></v-divider>
@@ -86,6 +87,8 @@ import Events from "./events.vue";
8687
import LogsTab from "./logstab.vue";
8788
import Vulnerabilities from "./vulnerabilities.vue";
8889
import Swal from 'sweetalert2';
90+
import { useKuberoStore } from '../../stores/kubero'
91+
import { mapState } from 'pinia'
8992
9093
9194
export default defineComponent({
@@ -124,6 +127,9 @@ export default defineComponent({
124127
}
125128
}
126129
},
130+
computed: {
131+
...mapState(useKuberoStore, ['kubero']),
132+
},
127133
mounted() {
128134
this.loadPipeline();
129135
this.loadApp();

client/src/layouts/default/Popup.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import { useSocketIO } from '../../socket.io';
1616
1717
const { cookies } = useCookies();
1818
const token = cookies.get("kubero.websocketToken");
19-
console.log("COOKIE token", token);
19+
//console.log("COOKIE token", token);
2020
const { socket } = useSocketIO(token);
2121
2222
// Write socket to pinia

client/src/layouts/default/View.vue

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ export default defineComponent({
4545
this.kubero.isAuthenticated = result.data.isAuthenticated;
4646
this.kubero.buildPipeline = result.data.buildPipeline;
4747
this.kubero.auditEnabled = result.data.auditEnabled;
48+
this.kubero.consoleEnabled = result.data.consoleEnabled;
4849
4950
})
5051
.catch((err) => {

client/src/stores/kubero.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,18 @@ export const useKuberoStore = defineStore('kubero', {
44
state: () => ({
55
kubero: {
66
version: "dev",
7-
templatesEnabled: true,
87
session: false,
98
kubernetesVersion: "",
109
isAuthenticated: false,
11-
buildPipeline: false,
1210
socket: null as any,
1311
nextGenSession: {
1412
username: "",
1513
token: "",
1614
},
1715
auditEnabled: false,
16+
templatesEnabled: true,
17+
buildPipeline: false,
18+
consoleEnabled: false,
1819
},
1920
buildPipeline: false,
2021
}),

server/config.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
kubero:
22
readonly: false
3+
console:
4+
enabled: false
35
banner:
46
show: false
57
message: "Welcome to Kubero!"

server/src/kubero.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -994,7 +994,19 @@ export class Kubero {
994994
return this.config.podSizeList;
995995
}
996996

997+
public getConsoleEnabled(){
998+
if (this.config.kubero?.console?.enabled == undefined) {
999+
return false;
1000+
}
1001+
return this.config.kubero?.console?.enabled;
1002+
}
1003+
9971004
public async execInContainer(pipelineName: string, phaseName: string, appName: string, podName: string, containerName: string, command: string, user: User) {
1005+
console.log(this.config.kubero?.console.enabled)
1006+
if (this.config.kubero?.console.enabled != true) {
1007+
console.log('Warning: console is nost set or disabled in config');
1008+
return;
1009+
}
9981010
const contextName = this.getContext(pipelineName, phaseName);
9991011
if (contextName) {
10001012
const streamname = `${pipelineName}-${phaseName}-${appName}-${podName}-${containerName}-terminal`;

server/src/routes/auth.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,11 @@ Router.all("/session", (req: Request, res: Response) => {
3232
let message = {
3333
"isAuthenticated": isAuthenticated,
3434
"version": process.env.npm_package_version,
35+
"kubernetesVersion": req.app.locals.kubero.getKubernetesVersion(),
3536
"buildPipeline": buildPipeline,
3637
"templatesEnabled": req.app.locals.kubero.getTemplateEnabled(),
37-
"kubernetesVersion": req.app.locals.kubero.getKubernetesVersion(),
3838
"auditEnabled": req.app.locals.audit.getAuditEnabled(),
39-
//"websocketToken": process.env.KUBERO_WS_TOKEN,
39+
"consoleEnabled": req.app.locals.kubero.getConsoleEnabled(),
4040
}
4141
res.status(status).send(message)
4242
})

server/src/types.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -341,6 +341,9 @@ export interface IKuberoConfig {
341341
}
342342
kubero: {
343343
namespace?: string; // deprecated v1.9.0
344+
console: {
345+
enabled: boolean;
346+
}
344347
readonly: boolean;
345348
banner: {
346349
message: string;

0 commit comments

Comments
 (0)