Skip to content

Commit e52bbe7

Browse files
committed
Merge branch 'develop' of https://github.com/devtron-labs/dashboard into feat/skip-hibernated-deploy
2 parents 802b722 + f87d111 commit e52bbe7

File tree

12 files changed

+63
-133
lines changed

12 files changed

+63
-133
lines changed

.env

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,4 +63,4 @@ FEATURE_ACTION_AUDIOS_ENABLE=true
6363
FEATURE_APPLICATION_TEMPLATES_ENABLE=true
6464
FEATURE_CODE_MIRROR_ENABLE=false
6565
FEATURE_DEFAULT_AUTHENTICATED_VIEW_ENABLE=false
66-
GATEKEEPER_URL=devtron.ai
66+
GATEKEEPER_URL=https://license.devtron.ai/dashboard

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"private": true,
55
"homepage": "/dashboard",
66
"dependencies": {
7-
"@devtron-labs/devtron-fe-common-lib": "1.10.6",
7+
"@devtron-labs/devtron-fe-common-lib": "1.10.11",
88
"@esbuild-plugins/node-globals-polyfill": "0.2.3",
99
"@rjsf/core": "^5.13.3",
1010
"@rjsf/utils": "^5.13.3",

src/App.tsx

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@ import {
4242
} from './components/common'
4343
import { UPDATE_AVAILABLE_TOAST_PROGRESS_BG, URLS } from './config'
4444
import { validateToken } from './services/service'
45-
import { getCentralAPIHealth } from './utils'
4645

4746
const NavigationRoutes = lazy(() => import('./components/common/navigation/NavigationRoutes'))
4847
const Login = lazy(() => import('./components/login/Login'))
@@ -179,8 +178,6 @@ export default function App() {
179178
defaultRedirection()
180179
}
181180

182-
getCentralAPIHealth()
183-
184181
return () => {
185182
navigator.serviceWorker.removeEventListener('controllerchange', handleControllerChange)
186183
}

src/components/ApplicationGroup/Details/TriggerView/BulkCDTrigger.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ export default function BulkCDTrigger({
112112
runtimeParamsErrorState,
113113
setRuntimeParamsErrorState,
114114
}: BulkCDTriggerType) {
115-
const { isScoopConfigured } = useMainContext()
115+
const { deployUnhibernatedAppOnly } = useMainContext()
116116
const [selectedApp, setSelectedApp] = useState<BulkCDDetailType>(
117117
appList.find((app) => !app.warningMessage) || appList[0],
118118
)
@@ -858,7 +858,7 @@ export default function BulkCDTrigger({
858858

859859
const renderFooterSection = (): JSX.Element => {
860860
const isDeployButtonDisabled: boolean = isDeployDisabled()
861-
const showSkipHibernatedCheckbox = stage === DeploymentNodeType.CD && !!SkipHibernatedCheckbox && isScoopConfigured
861+
const showSkipHibernatedCheckbox = stage === DeploymentNodeType.CD && !!SkipHibernatedCheckbox && deployUnhibernatedAppOnly
862862
return (
863863
<div
864864
className={`dc__border-top flex ${showSkipHibernatedCheckbox ? 'dc__content-space' : 'right'} bg__primary px-20 py-16`}

src/components/app/details/cIDetails/ciDetails.scss

Lines changed: 0 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -96,12 +96,6 @@
9696
}
9797
}
9898

99-
.ci-artifacts-grid {
100-
display: grid;
101-
grid-template-columns: 40px 1fr;
102-
grid-column-gap: 12px;
103-
}
104-
10599
.trigger-outputs-container {
106100
width: 100%;
107101
background: var(--bg-tertiary);
@@ -299,37 +293,3 @@
299293
position: fixed;
300294
bottom: 40px;
301295
}
302-
303-
.add-tag-button {
304-
padding: 4px 8px;
305-
width: fit-content;
306-
height: 24px;
307-
border: 1px dashed var(--N300);
308-
border-radius: 4px;
309-
cursor: pointer;
310-
}
311-
312-
.image-tags-container {
313-
.image-tags-container-edit__icon {
314-
display: none;
315-
}
316-
317-
.image-tag-left-border {
318-
border-left: 2px solid var(--N200);
319-
}
320-
}
321-
322-
.image-tag-parent-card {
323-
&:hover {
324-
.image-tags-container {
325-
background-color: var(--bg-secondary);
326-
}
327-
.image-tags-container-edit__icon {
328-
display: block;
329-
}
330-
331-
.image-tag-left-border {
332-
border-color: var(--N50);
333-
}
334-
}
335-
}

src/components/common/navigation/NavigationRoutes.tsx

Lines changed: 14 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ import { DEFAULT_GIT_OPS_FEATURE_FLAGS } from './constants'
8181
import { ParsedTabsData, ParsedTabsDataV1 } from '../DynamicTabs/types'
8282
import { SwitchThemeDialog } from '@Pages/Shared'
8383
import { SwitchThemeDialogProps } from '@Pages/Shared/SwitchThemeDialog/types'
84-
import { getShowStackManager } from 'src/utils'
84+
import { EnvironmentDataStateType } from './types'
8585

8686
// Monaco Editor worker initialization
8787
self.MonacoEnvironment = {
@@ -152,21 +152,13 @@ export default function NavigationRoutes() {
152152
}
153153
const [environmentId, setEnvironmentId] = useState(null)
154154
const contextValue = useMemo(() => ({ environmentId, setEnvironmentId }), [environmentId])
155-
const [environmentDataState, setEnvironmentDataState] = useState<
156-
Pick<
157-
MainContext,
158-
| 'isAirgapped'
159-
| 'isManifestScanningEnabled'
160-
| 'canOnlyViewPermittedEnvOrgLevel'
161-
| 'featureGitOpsFlags'
162-
| 'isScoopConfigured'
163-
>
164-
>({
155+
const [environmentDataState, setEnvironmentDataState] = useState<EnvironmentDataStateType>({
165156
isAirgapped: false,
166157
isManifestScanningEnabled: false,
167158
canOnlyViewPermittedEnvOrgLevel: false,
168159
featureGitOpsFlags: structuredClone(DEFAULT_GIT_OPS_FEATURE_FLAGS),
169-
isScoopConfigured: false,
160+
deployUnhibernatedAppOnly: false,
161+
devtronManagedLicensingEnabled: false,
170162
})
171163
const [userPreferences, setUserPreferences] = useState<UserPreferencesType>(null)
172164
const [userPreferencesError, setUserPreferencesError] = useState<ServerErrors>(null)
@@ -178,7 +170,8 @@ export default function NavigationRoutes() {
178170
appTheme,
179171
} = useTheme()
180172

181-
const { isAirgapped, isManifestScanningEnabled, canOnlyViewPermittedEnvOrgLevel } = environmentDataState
173+
const { isAirgapped, isManifestScanningEnabled, canOnlyViewPermittedEnvOrgLevel, devtronManagedLicensingEnabled } =
174+
environmentDataState
182175

183176
const handleCloseLicenseInfoDialog = () => {
184177
setLicenseInfoDialogType(null)
@@ -347,7 +340,8 @@ export default function NavigationRoutes() {
347340
isManifestScanningEnabled: false,
348341
canOnlyViewPermittedEnvOrgLevel: false,
349342
featureGitOpsFlags: structuredClone(DEFAULT_GIT_OPS_FEATURE_FLAGS),
350-
isScoopConfigured: false,
343+
deployUnhibernatedAppOnly: false,
344+
devtronManagedLicensingEnabled: false,
351345
}
352346

353347
if (!getEnvironmentData) {
@@ -367,7 +361,8 @@ export default function NavigationRoutes() {
367361
isManifestScanningEnabled: result.isManifestScanningEnabled,
368362
canOnlyViewPermittedEnvOrgLevel: result.canOnlyViewPermittedEnvOrgLevel,
369363
featureGitOpsFlags: parsedFeatureGitOpsFlags,
370-
isScoopConfigured: result.isScoopConfigured ?? false,
364+
deployUnhibernatedAppOnly: result.deployUnhibernatedAppOnly ?? false,
365+
devtronManagedLicensingEnabled: result.devtronManagedLicensingEnabled || false,
371366
}
372367
} catch {
373368
return fallbackResponse
@@ -415,7 +410,8 @@ export default function NavigationRoutes() {
415410
isManifestScanningEnabled: environmentDataResponse.isManifestScanningEnabled,
416411
canOnlyViewPermittedEnvOrgLevel: environmentDataResponse.canOnlyViewPermittedEnvOrgLevel,
417412
featureGitOpsFlags: environmentDataResponse.featureGitOpsFlags,
418-
isScoopConfigured: environmentDataResponse.isScoopConfigured,
413+
deployUnhibernatedAppOnly: environmentDataResponse.deployUnhibernatedAppOnly,
414+
devtronManagedLicensingEnabled: environmentDataResponse.devtronManagedLicensingEnabled,
419415
})
420416

421417
setServerMode(serverModeResponse)
@@ -498,7 +494,7 @@ export default function NavigationRoutes() {
498494
setLicenseInfoDialogType(initialDialogTab || LicenseInfoDialogType.ABOUT)
499495
}
500496

501-
const showStackManager = getShowStackManager(currentServerInfo.serverInfo?.installationType, !!licenseData)
497+
const showStackManager = !devtronManagedLicensingEnabled
502498

503499
return (
504500
<MainContextProvider
@@ -536,7 +532,7 @@ export default function NavigationRoutes() {
536532
handleOpenLicenseInfoDialog,
537533
licenseData,
538534
setLicenseData,
539-
isScoopConfigured: environmentDataState.isScoopConfigured,
535+
deployUnhibernatedAppOnly: environmentDataState.deployUnhibernatedAppOnly,
540536
}}
541537
>
542538
<main className={_isOnboardingPage ? 'no-nav' : ''} id={DEVTRON_BASE_MAIN_ID}>

src/components/common/navigation/types.ts

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,12 @@
1515
*/
1616

1717
import { URLS } from '@Config/routes'
18-
import { customEnv, IconsProps, URLS as CommonURLS } from '@devtron-labs/devtron-fe-common-lib'
18+
import {
19+
customEnv,
20+
IconsProps,
21+
URLS as CommonURLS,
22+
EnvironmentDataValuesDTO,
23+
} from '@devtron-labs/devtron-fe-common-lib'
1924

2025
export interface NavigationListItemType {
2126
title: string
@@ -32,3 +37,7 @@ export interface NavigationListItemType {
3237
moduleName?: string
3338
moduleNameTrivy?: string
3439
}
40+
41+
export interface EnvironmentDataStateType extends Omit<EnvironmentDataValuesDTO, 'isAirGapEnvironment'> {
42+
isAirgapped: boolean
43+
}

src/components/v2/devtronStackManager/DevtronStackManager.component.tsx

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,6 @@ import clair from '../../../assets/icons/ic-trivy-to-clair.svg'
8181
import warn from '../../../assets/icons/ic-error-medium.svg'
8282
import { SuccessModalComponent } from './SuccessModalComponent'
8383
import { EMPTY_STATE_STATUS } from '../../../config/constantMessaging'
84-
import { getShowStackManager } from 'src/utils'
8584

8685
const getInstallationStatusLabel = (
8786
installationStatus: ModuleStatus,
@@ -254,8 +253,6 @@ export const NavItem = ({
254253
showInitializing,
255254
showVersionInfo,
256255
}: StackManagerNavItemType): JSX.Element => {
257-
const { currentServerInfo, licenseData } = useMainContext()
258-
259256
const getNavLink = (route: StackManagerNavLinkType): JSX.Element => {
260257
return (
261258
<NavLink
@@ -304,18 +301,12 @@ export const NavItem = ({
304301
)
305302
}
306303

307-
const showAboutDevtronTab = getShowStackManager(currentServerInfo?.serverInfo?.installationType, !!licenseData)
308-
309304
return (
310305
<div className="flex column left">
311306
<div className="section-heading cn-6 fs-12 fw-6 pl-8 mb-8 dc__uppercase">Integrations</div>
312307
{ModulesSection.map((route) => getNavLink(route))}
313-
{showAboutDevtronTab && (
314-
<>
315-
<hr className="mt-8 mb-8 w-100 checklist__divider" />
316-
{getNavLink(AboutSection)}
317-
</>
318-
)}
308+
<hr className="mt-8 mb-8 w-100 checklist__divider" />
309+
{getNavLink(AboutSection)}
319310
</div>
320311
)
321312
}
@@ -917,7 +908,7 @@ export const InstallationWrapper = ({
917908
}}
918909
showTooltip={isInstallButtonDisabled}
919910
text={text}
920-
startIcon={<Icon />}
911+
startIcon={Icon ? <Icon /> : null}
921912
fullWidth
922913
/>
923914
)}

src/css/base.scss

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5145,4 +5145,29 @@ details[open] {
51455145

51465146
.mw-76 {
51475147
min-width: 76px;
5148-
}
5148+
}
5149+
5150+
.image-tags-container {
5151+
.image-tags-container-edit__icon {
5152+
display: none;
5153+
}
5154+
5155+
.image-tag-left-border {
5156+
border-left: 2px solid var(--N200);
5157+
}
5158+
}
5159+
5160+
.image-tag-parent-card {
5161+
&:hover {
5162+
.image-tags-container {
5163+
background-color: var(--bg-secondary);
5164+
}
5165+
.image-tags-container-edit__icon {
5166+
display: block;
5167+
}
5168+
5169+
.image-tag-left-border {
5170+
border-color: var(--N50);
5171+
}
5172+
}
5173+
}

src/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ if (!window || !window._env_) {
167167
FEATURE_APPLICATION_TEMPLATES_ENABLE: true,
168168
FEATURE_CODE_MIRROR_ENABLE: true,
169169
FEATURE_DEFAULT_AUTHENTICATED_VIEW_ENABLE: false,
170-
GATEKEEPER_URL: 'devtron.ai',
170+
GATEKEEPER_URL: 'https://license.devtron.ai/dashboard',
171171
}
172172
}
173173

0 commit comments

Comments
 (0)