Skip to content
Merged
Show file tree
Hide file tree
Changes from 13 commits
Commits
Show all changes
57 commits
Select commit Hold shift + click to select a range
2edfc9b
feat: add validation for reserved output directory path
arunjaindev Oct 22, 2025
bba2e80
fix: validation on update
arunjaindev Oct 22, 2025
0bd3f29
chore: update validation
arunjaindev Oct 22, 2025
5ea9381
chore: format file
arunjaindev Oct 22, 2025
ae66c8c
chore: update error message
arunjaindev Oct 22, 2025
69b8bd6
chore: version bump
arunjaindev Oct 22, 2025
6e0ba21
Merge pull request #2962 from devtron-labs/feat/reserved-output-path
arunjaindev Oct 22, 2025
02a52f1
fix(css): Source Info card container
Elessar1802 Oct 23, 2025
f89db97
feat: use RestartWorkloadModal
Elessar1802 Oct 23, 2025
94f1ab7
feat: add restart button to node detail
Elessar1802 Oct 25, 2025
bc6ee7b
fix: change icon for restart workload
Elessar1802 Oct 27, 2025
a93d861
chore: update common-lib version
Elessar1802 Oct 27, 2025
8cf9852
Merge pull request #2963 from devtron-labs/feat/misc-tasks
Elessar1802 Oct 27, 2025
835d0a3
Merge branch 'main' of https://github.com/devtron-labs/dashboard into…
arunjaindev Nov 12, 2025
b14101e
Merge pull request #2988 from devtron-labs/chore/sync-main-dev-12-11
arunjaindev Nov 12, 2025
5328868
fix: project-validation
shivani170 Nov 12, 2025
00e3995
chore: Char validation issue fixed
shivani170 Nov 12, 2025
458bd2f
fix: minimum length requirement removed
shivani170 Nov 12, 2025
242e49c
Merge pull request #2989 from devtron-labs/fix/project-validation
shivani170 Nov 12, 2025
36b6746
Merge branch 'main' into fix/project-validation-43
shivani170 Nov 12, 2025
27b4b8f
Merge pull request #2990 from devtron-labs/fix/project-validation-43
shivani170 Nov 12, 2025
d01be80
Merge branch 'main' into fix/project-revamp-dev
shivani170 Nov 12, 2025
70be8e9
chore: project revamp
shivani170 Nov 12, 2025
baf8ac3
chore: fix save call
shivani170 Nov 12, 2025
537465c
Merge branch 'release-candidate-v0.43.0' into fix/project-revamp-dev
shivani170 Nov 12, 2025
60f6315
Merge pull request #2991 from devtron-labs/fix/project-revamp-dev
shivani170 Nov 12, 2025
83bcdaa
chore: implementation of DateRangePicker
shivani170 Nov 13, 2025
f151232
feat: removed date picker from dashboard
shivani170 Nov 13, 2025
bdf41d4
chore: version bump
shivani170 Nov 13, 2025
7002033
Merge pull request #2992 from devtron-labs/feat/datepicker-range-43
shivani170 Nov 13, 2025
1a90101
refactor: restructure security components and update navigation for v…
arunjaindev Nov 14, 2025
05e0798
feat: implement CVE list component with filtering options and integra…
arunjaindev Nov 17, 2025
b1a5d8b
feat: implement CVE list component with filtering options and integra…
arunjaindev Nov 17, 2025
cb8ed90
Revert "feat: implement CVE list component with filtering options and…
arunjaindev Nov 17, 2025
51b532a
feat: add SecurityEnablement route and integrate into Security compon…
arunjaindev Nov 17, 2025
0b70368
fix: remove unused manifestChartRefId from updateSearchParams
AbhishekA1509 Nov 17, 2025
8086ad6
Merge pull request #2994 from devtron-labs/fix/compare-manifest-loadi…
AbhishekA1509 Nov 17, 2025
29a2bf6
refactor: update scan status handling to use ScanTypeOptions and impr…
arunjaindev Nov 17, 2025
a4a0299
refactor: reorganize imports and define ScanTypeOptions enum for bett…
arunjaindev Nov 18, 2025
97701aa
refactor: remove unused import and clean up utility functions in CVEL…
arunjaindev Nov 18, 2025
7096c46
feat: implement search functionality in WorkflowEdit component; add S…
arunjaindev Nov 19, 2025
59b7325
fix: update version of devtron-fe-common-lib to 1.21.0 in package.jso…
arunjaindev Nov 21, 2025
6777452
Merge pull request #2996 from devtron-labs/bump-rc-43
arunjaindev Nov 21, 2025
98e2993
Merge pull request #2997 from devtron-labs/release-candidate-v0.43.0
arunjaindev Nov 21, 2025
1c91b6d
Merge branch 'main' of https://github.com/devtron-labs/dashboard into…
arunjaindev Nov 21, 2025
23a1772
fix: update version of devtron-fe-common-lib to 1.21.0-pre-0 in packa…
arunjaindev Nov 21, 2025
14efaaa
Merge pull request #2998 from devtron-labs/sync-rc-43
arunjaindev Nov 21, 2025
188ed3e
Merge branch 'kubecon-2025' into feat/scan-cve-listing
arunjaindev Nov 21, 2025
f84dea0
feat: add VulnerabilitySummary component and integrate it into CVELis…
arunjaindev Nov 24, 2025
26b77b1
Merge branch 'feat/scan-cve-listing' of https://github.com/devtron-la…
arunjaindev Nov 24, 2025
7518e09
fix: update @devtron-labs/devtron-fe-common-lib dependency to version…
arunjaindev Nov 24, 2025
21856d1
feat: enhance CVEList with sortable columns for severity and discover…
arunjaindev Nov 24, 2025
e2877e2
feat: Implement CVE list table with enhanced filtering and error hand…
arunjaindev Nov 25, 2025
848185d
refactor: simplify CVE ID generation by removing redundant spread ope…
arunjaindev Nov 25, 2025
de6369d
refactor: Adjust security scans tab layout gap
arunjaindev Nov 26, 2025
bb9d83f
refactor: Fetch environment and cluster lists concurrently using Prom…
arunjaindev Dec 3, 2025
4276f66
Merge branch 'develop' of https://github.com/devtron-labs/dashboard i…
arunjaindev Dec 3, 2025
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
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"private": true,
"homepage": "/dashboard",
"dependencies": {
"@devtron-labs/devtron-fe-common-lib": "1.20.6-pre-51",
"@devtron-labs/devtron-fe-common-lib": "1.20.6-pre-52",
"@esbuild-plugins/node-globals-polyfill": "0.2.3",
"@rjsf/core": "^5.13.3",
"@rjsf/utils": "^5.13.3",
Expand Down

This file was deleted.

1 change: 0 additions & 1 deletion src/Pages-Devtron-2.0/SecurityCenter/Overview/index.ts

This file was deleted.

19 changes: 13 additions & 6 deletions src/components/Navigation/constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -359,10 +359,17 @@ export const NAVIGATION_LIST: NavigationGroupType[] = [
icon: 'ic-chart-line-up',
},
{
title: 'Security Scans',
dataTestId: 'security-scans',
id: 'security-center-security-scans',
href: COMMON_URLS.SECURITY_CENTER_SCANS,
title: 'Vulnerabilities',
dataTestId: 'security-vulnerabilities',
id: 'security-center-security-vulnerabilities',
href: COMMON_URLS.SECURITY_CENTER_VULNERABILITIES,
icon: 'ic-bug',
},
{
title: 'Security Enablement',
dataTestId: 'security-enablement',
id: 'security-center-security-enablement',
href: COMMON_URLS.SECURITY_CENTER_SECURITY_ENABLEMENT,
icon: 'ic-security-scan',
},
{
Expand Down Expand Up @@ -486,8 +493,8 @@ export const NAVIGATION_LIST: NavigationGroupType[] = [
href: `${URLS.GLOBAL_CONFIG_AUTH}/${Routes.SSO_LOGIN_SERVICES}`,
},
{
title: 'Host URLS',
dataTestId: 'host-urls',
title: 'Host URL',
dataTestId: 'host-url',
id: 'global-configuration-host-urls',
icon: 'ic-link',
href: URLS.GLOBAL_CONFIG_HOST_URL,
Expand Down
12 changes: 6 additions & 6 deletions src/components/security/AddCVEPolicy/VulnerabilityExposure.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -92,18 +92,18 @@ const ExposureListContainer = ({ urlFilters }: ExposureListContainerProps) => {
)
}

const clusterListOptions: SelectPickerOptionType[] = filtersResponse?.filters.clusters || []
const environmentListOptions: SelectPickerOptionType[] = filtersResponse?.filters.environments || []
const clusterListOptions: SelectPickerOptionType[] = filtersResponse?.cluster || []
const environmentListOptions: SelectPickerOptionType[] = filtersResponse?.environment || []

const getFilterLabelFromValue = (filterKey: string, filterValue: string) => {
if (filterKey === VulnerabilityExposureFilterKeys.cluster) {
return (
filtersResponse?.filters.clusters.find((clusterOption) => clusterOption.value === filterValue)?.label ??
filterValue
(filtersResponse?.cluster.find((clusterOption) => clusterOption.value === filterValue)
?.label as string) ?? filterValue
)
}
return (
filtersResponse?.filters.environments.find((envOption) => envOption.value === filterValue)?.label ??
(filtersResponse?.environment.find((envOption) => envOption.value === filterValue)?.label as string) ??
filterValue
)
}
Expand All @@ -114,7 +114,7 @@ const ExposureListContainer = ({ urlFilters }: ExposureListContainerProps) => {
}))

const selectedEnvironments: SelectPickerOptionType[] = environment.map((envId) => ({
label: getFilterLabelFromValue(VulnerabilityExposureFilterKeys.cluster, envId),
label: getFilterLabelFromValue(VulnerabilityExposureFilterKeys.environment, envId),
value: envId,
}))

Expand Down
17 changes: 0 additions & 17 deletions src/components/security/AddCveModal.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@

import React, { Component } from 'react'
import { Progressing, VisibleModal, CustomInput } from '@devtron-labs/devtron-fe-common-lib'
import { getCVEPolicies } from './security.service'
import { CVE_ID_NOT_FOUND, ViewType } from '../../config'
import { AddCveModalProps, AddCveModalState, ClusterEnvironment, VulnerabilityAction } from './security.types'
import { ReactComponent as Close } from '../../assets/icons/ic-close.svg'
Expand All @@ -33,7 +32,6 @@ export class AddCveModal extends Component<AddCveModalProps, AddCveModalState> {
}
this.handleCveChange = this.handleCveChange.bind(this)
this.handlePolicyChange = this.handlePolicyChange.bind(this)
this.searchCVE = this.searchCVE.bind(this)
}

handleCveChange(event: React.ChangeEvent<HTMLInputElement>): void {
Expand All @@ -54,21 +52,6 @@ export class AddCveModal extends Component<AddCveModalProps, AddCveModalState> {
}
}

searchCVE(event): void {
this.setState({ view: ViewType.LOADING })
getCVEPolicies(this.state.cve)
.then((response) => {
this.setState({
cve: this.state.cve,
clusters: response.result.clusters,
view: ViewType.FORM,
})
})
.catch((error) => {
this.setState({ view: ViewType.FORM, isCveError: true })
})
}

renderHeader() {
return (
<div className="modal__header ml-24 mr-24">
Expand Down
14 changes: 10 additions & 4 deletions src/components/security/Security.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,13 @@ import { URLS } from '@devtron-labs/devtron-fe-common-lib'

import { importComponentFromFELibrary } from '@Components/common'

import { SecurityScansTab } from './SecurityScansTab/SecurityScansTab'
import { SecurityPoliciesTab } from './SecurityPoliciesTab'
import { VulnerabilitiesRouter } from './Vulnerabilities'

import './security.scss'

const SecurityCenterOverview = importComponentFromFELibrary('SecurityCenterOverview', null, 'function')
const SecurityEnablement = importComponentFromFELibrary('SecurityEnablement', null, 'function')

export const Security = () => (
<Switch>
Expand All @@ -34,12 +35,17 @@ export const Security = () => (
<SecurityCenterOverview />
</Route>
)}
<Route exact path={URLS.SECURITY_CENTER_SCANS}>
<SecurityScansTab />
<Route path={URLS.SECURITY_CENTER_VULNERABILITIES}>
<VulnerabilitiesRouter />
</Route>
{SecurityEnablement && (
<Route path={URLS.SECURITY_CENTER_SECURITY_ENABLEMENT}>
<SecurityEnablement />
</Route>
)}
<Route path={URLS.SECURITY_CENTER_POLICIES}>
<SecurityPoliciesTab />
</Route>
<Redirect to={SecurityCenterOverview ? URLS.SECURITY_CENTER_OVERVIEW : URLS.SECURITY_CENTER_SCANS} />
<Redirect to={SecurityCenterOverview ? URLS.SECURITY_CENTER_OVERVIEW : URLS.SECURITY_CENTER_VULNERABILITIES} />
</Switch>
)
25 changes: 0 additions & 25 deletions src/components/security/SecurityPageHeader.tsx

This file was deleted.

25 changes: 23 additions & 2 deletions src/components/security/SecurityPoliciesTab.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,35 @@
*/

import { Switch, Route, Redirect, NavLink, useRouteMatch } from 'react-router-dom'

import {
BreadCrumb,
BreadcrumbText,
getSecurityCenterBreadcrumb,
PageHeader,
useBreadcrumb,
} from '@devtron-labs/devtron-fe-common-lib'

import { SecurityPolicyGlobal } from './SecurityPolicyGlobal'
import { SecurityPolicyCluster } from './SecurityPolicyCluster'
import { SecurityPolicyApp } from './SecurityPolicyApp'
import { SecurityPolicyEnvironment } from './SecurityPolicyEnvironment'
import { VulnerabilityExposure } from './AddCVEPolicy'
import { SecurityPageHeader } from './SecurityPageHeader'

export const SecurityPoliciesTab = () => {
const { path } = useRouteMatch()

const { breadcrumbs } = useBreadcrumb({
alias: {
...getSecurityCenterBreadcrumb(),
policies: {
component: <BreadcrumbText heading="Security Policies" isActive />,
},
},
})

const renderBreadcrumbs = () => <BreadCrumb breadcrumbs={breadcrumbs} />

const renderRouter = () => {
return (
<Switch>
Expand All @@ -39,7 +59,8 @@ export const SecurityPoliciesTab = () => {

return (
<div className="security-scan-container bg__primary flexbox-col min-h-100">
<SecurityPageHeader />
<PageHeader isBreadcrumbs breadCrumbs={renderBreadcrumbs} />

<div className="security-policy flex-grow-1">
<div className="dc__secondary-nav">
<NavLink
Expand Down
Loading
Loading