@spinnaker/titus 0.5.10 → 0.5.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +48 -0
- package/dist/domain/ITitusCredentials.d.ts +1 -1
- package/dist/domain/ITitusInstance.d.ts +1 -1
- package/dist/domain/ITitusScalingPolicy.d.ts +1 -1
- package/dist/domain/ITitusServerGroup.d.ts +5 -5
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/instance/details/TitusInstanceDetails.d.ts +4 -3
- package/dist/instance/details/TitusInstanceDns.d.ts +1 -0
- package/dist/instance/details/TitusInstanceInformation.d.ts +2 -1
- package/dist/instance/details/titusInstanceDetailsUtils.d.ts +2 -2
- package/dist/pipeline/stages/runJob/RunJobExecutionDetails.d.ts +1 -1
- package/dist/pipeline/stages/runJob/TitusRunJobStageConfig.d.ts +2 -2
- package/dist/pipeline/stages/runJob/TitusSecurityGroupPicker.d.ts +1 -1
- package/dist/serverGroup/configure/serverGroupConfiguration.service.d.ts +4 -4
- package/dist/serverGroup/configure/wizard/TitusCloneServerGroupModal.d.ts +3 -2
- package/dist/serverGroup/configure/wizard/pages/ServerGroupBasicSettings.d.ts +3 -3
- package/dist/serverGroup/configure/wizard/pages/ServerGroupParameters.d.ts +3 -3
- package/dist/serverGroup/configure/wizard/pages/ServerGroupResources.d.ts +3 -3
- package/dist/serverGroup/configure/wizard/pages/TitusMapLayout.d.ts +2 -1
- package/dist/serverGroup/configure/wizard/pages/disruptionBudget/JobDisruptionBudget.d.ts +5 -5
- package/dist/serverGroup/configure/wizard/pages/disruptionBudget/PolicyOptions.d.ts +1 -1
- package/dist/serverGroup/configure/wizard/pages/disruptionBudget/RateOptions.d.ts +1 -1
- package/dist/serverGroup/configure/wizard/pages/disruptionBudget/WindowPicker.d.ts +2 -2
- package/dist/serverGroup/details/TitusCapacityDetailsSection.d.ts +2 -2
- package/dist/serverGroup/details/TitusLaunchConfigSection.d.ts +1 -1
- package/dist/serverGroup/details/TitusPackageDetailsSection.d.ts +2 -1
- package/dist/serverGroup/details/TitusSecurityGroups.d.ts +2 -2
- package/dist/serverGroup/details/disruptionBudget/DisruptionBudgetSection.d.ts +2 -2
- package/dist/serverGroup/details/disruptionBudget/EditDisruptionBudgetModal.d.ts +3 -3
- package/dist/serverGroup/details/index.d.ts +1 -0
- package/dist/serverGroup/details/resize/TitusResizeServerGroupModal.d.ts +3 -2
- package/dist/serverGroup/details/resize/useTaskMonitor.d.ts +2 -1
- package/dist/serverGroup/details/scalingActivity/TitusScalingActivitiesModal.d.ts +3 -2
- package/dist/serverGroup/details/scalingPolicy/CreateScalingPolicyButton.d.ts +1 -1
- package/dist/serverGroup/details/scalingPolicy/TitusCustomScalingPolicy.d.ts +2 -2
- package/dist/serverGroup/details/scalingPolicy/index.d.ts +3 -0
- package/dist/serverGroup/details/scalingPolicy/targetTracking/TitusTargetTrackingChart.d.ts +3 -4
- package/dist/serverGroup/details/scalingPolicy/targetTracking/UpsertTargetTrackingModal.d.ts +4 -3
- package/dist/serverGroup/details/scalingPolicy/upsert/TitusScalingPolicyCommandBuilderService.d.ts +2 -2
- package/dist/serverGroup/details/scalingPolicy/upsert/UpsertScalingPolicyModal.d.ts +4 -3
- package/dist/serverGroup/details/sections/ITitusServerGroupDetailsSectionProps.d.ts +2 -2
- package/dist/serverGroup/details/serviceJobProcesses/ServiceJobProcesses.d.ts +1 -1
- package/dist/serverGroup/details/serviceJobProcesses/ServiceJobProcessesSection.d.ts +1 -1
- package/dist/titus.settings.d.ts +1 -1
- package/package.json +8 -8
- package/src/domain/ITitusCredentials.ts +1 -1
- package/src/domain/ITitusInstance.ts +1 -1
- package/src/domain/ITitusScalingPolicy.ts +1 -1
- package/src/domain/ITitusServerGroup.ts +5 -5
- package/src/instance/details/TitusInstanceDetails.tsx +10 -7
- package/src/instance/details/TitusInstanceInformation.tsx +1 -1
- package/src/instance/details/titusInstanceDetailsUtils.spec.ts +2 -2
- package/src/instance/details/titusInstanceDetailsUtils.ts +4 -11
- package/src/pipeline/stages/runJob/RunJobExecutionDetails.tsx +1 -1
- package/src/pipeline/stages/runJob/TitusRunJobStageConfig.tsx +4 -5
- package/src/pipeline/stages/runJob/TitusSecurityGroupPicker.tsx +2 -10
- package/src/pipeline/stages/runJob/titusRunJobStage.ts +2 -1
- package/src/serverGroup/configure/serverGroupConfiguration.service.ts +11 -9
- package/src/serverGroup/configure/wizard/TitusCloneServerGroupModal.tsx +3 -4
- package/src/serverGroup/configure/wizard/pages/ServerGroupBasicSettings.tsx +4 -5
- package/src/serverGroup/configure/wizard/pages/ServerGroupParameters.tsx +3 -5
- package/src/serverGroup/configure/wizard/pages/ServerGroupResources.tsx +6 -4
- package/src/serverGroup/configure/wizard/pages/TitusMapLayout.tsx +3 -2
- package/src/serverGroup/configure/wizard/pages/disruptionBudget/JobDisruptionBudget.tsx +5 -5
- package/src/serverGroup/configure/wizard/pages/disruptionBudget/PolicyOptions.tsx +1 -1
- package/src/serverGroup/configure/wizard/pages/disruptionBudget/RateOptions.tsx +1 -1
- package/src/serverGroup/configure/wizard/pages/disruptionBudget/WindowPicker.tsx +3 -3
- package/src/serverGroup/details/TitusCapacityDetailsSection.tsx +4 -3
- package/src/serverGroup/details/TitusLaunchConfigSection.tsx +1 -1
- package/src/serverGroup/details/TitusPackageDetailsSection.tsx +1 -1
- package/src/serverGroup/details/TitusSecurityGroups.tsx +3 -9
- package/src/serverGroup/details/disruptionBudget/DisruptionBudgetSection.tsx +7 -10
- package/src/serverGroup/details/disruptionBudget/EditDisruptionBudgetModal.tsx +3 -5
- package/src/serverGroup/details/index.ts +1 -0
- package/src/serverGroup/details/resize/TitusResizeServerGroupModal.tsx +4 -5
- package/src/serverGroup/details/resize/useTaskMonitor.ts +2 -1
- package/src/serverGroup/details/scalingActivity/TitusScalingActivitiesModal.tsx +3 -11
- package/src/serverGroup/details/scalingPolicy/CreateScalingPolicyButton.tsx +6 -3
- package/src/serverGroup/details/scalingPolicy/TitusCustomScalingPolicy.tsx +3 -2
- package/src/serverGroup/details/scalingPolicy/index.js +3 -0
- package/src/serverGroup/details/scalingPolicy/scalingPolicy.module.ts +1 -10
- package/src/serverGroup/details/scalingPolicy/targetTracking/TitusTargetTrackingChart.tsx +5 -25
- package/src/serverGroup/details/scalingPolicy/targetTracking/UpsertTargetTrackingModal.tsx +5 -5
- package/src/serverGroup/details/scalingPolicy/upsert/TitusScalingPolicyCommandBuilderService.ts +2 -2
- package/src/serverGroup/details/scalingPolicy/upsert/UpsertScalingPolicyModal.tsx +6 -7
- package/src/serverGroup/details/sections/ITitusServerGroupDetailsSectionProps.ts +2 -2
- package/src/serverGroup/details/serverGroupDetails.html +2 -2
- package/src/serverGroup/details/serviceJobProcesses/ServiceJobProcesses.ts +1 -1
- package/src/serverGroup/details/serviceJobProcesses/ServiceJobProcessesSection.tsx +4 -5
- package/src/titus.module.ts +8 -0
- package/src/titus.settings.ts +2 -1
- package/src/validation/ApplicationNameValidator.ts +2 -1
- package/dist/serverGroup/details/scalingPolicy/alarmBasedSummary.component.d.ts +0 -2
- package/dist/serverGroup/details/scalingPolicy/scalingPolicySummary.component.d.ts +0 -1
- package/dist/serverGroup/details/scalingPolicy/targetTracking/targetTracking.module.d.ts +0 -1
- package/dist/serverGroup/details/scalingPolicy/targetTracking/targetTrackingChart.component.d.ts +0 -1
- package/dist/serverGroup/details/scalingPolicy/targetTracking/targetTrackingSummary.component.d.ts +0 -7
- package/src/serverGroup/details/scalingPolicy/alarmBasedSummary.component.html +0 -30
- package/src/serverGroup/details/scalingPolicy/alarmBasedSummary.component.js +0 -81
- package/src/serverGroup/details/scalingPolicy/alarmBasedSummary.template.html +0 -5
- package/src/serverGroup/details/scalingPolicy/popover/scalingPolicyDetails.popover.html +0 -1
- package/src/serverGroup/details/scalingPolicy/scalingPolicySummary.component.less +0 -15
- package/src/serverGroup/details/scalingPolicy/scalingPolicySummary.component.ts +0 -32
- package/src/serverGroup/details/scalingPolicy/targetTracking/targetTracking.module.ts +0 -7
- package/src/serverGroup/details/scalingPolicy/targetTracking/targetTrackingChart.component.ts +0 -16
- package/src/serverGroup/details/scalingPolicy/targetTracking/targetTrackingPopover.html +0 -4
- package/src/serverGroup/details/scalingPolicy/targetTracking/targetTrackingSummary.component.ts +0 -129
- package/src/serverGroup/details/scalingPolicy/targetTracking/targetTrackingSummary.html +0 -5
|
@@ -3,16 +3,14 @@ import { chain, cloneDeep, flatten, intersection, xor } from 'lodash';
|
|
|
3
3
|
import { $q } from 'ngimport';
|
|
4
4
|
import { Subject } from 'rxjs';
|
|
5
5
|
|
|
6
|
-
import {
|
|
6
|
+
import type {
|
|
7
7
|
IAmazonApplicationLoadBalancer,
|
|
8
8
|
IAmazonLoadBalancer,
|
|
9
9
|
IAmazonServerGroupCommandDirty,
|
|
10
|
-
VpcReader,
|
|
11
10
|
} from '@spinnaker/amazon';
|
|
12
|
-
import {
|
|
13
|
-
|
|
11
|
+
import { VpcReader } from '@spinnaker/amazon';
|
|
12
|
+
import type {
|
|
14
13
|
Application,
|
|
15
|
-
CACHE_INITIALIZER_SERVICE,
|
|
16
14
|
CacheInitializerService,
|
|
17
15
|
IAccountDetails,
|
|
18
16
|
ICluster,
|
|
@@ -22,16 +20,20 @@ import {
|
|
|
22
20
|
IServerGroupCommandBackingData,
|
|
23
21
|
IServerGroupCommandViewState,
|
|
24
22
|
IVpc,
|
|
25
|
-
LOAD_BALANCER_READ_SERVICE,
|
|
26
23
|
LoadBalancerReader,
|
|
24
|
+
SecurityGroupReader,
|
|
25
|
+
} from '@spinnaker/core';
|
|
26
|
+
import {
|
|
27
|
+
AccountService,
|
|
28
|
+
CACHE_INITIALIZER_SERVICE,
|
|
29
|
+
LOAD_BALANCER_READ_SERVICE,
|
|
27
30
|
NameUtils,
|
|
28
31
|
SECURITY_GROUP_READER,
|
|
29
|
-
SecurityGroupReader,
|
|
30
32
|
setMatchingResourceSummary,
|
|
31
33
|
SubnetReader,
|
|
32
34
|
} from '@spinnaker/core';
|
|
33
|
-
import { IJobDisruptionBudget, ITitusResources } from '../../domain';
|
|
34
|
-
import { ITitusServiceJobProcesses } from '../../domain/ITitusServiceJobProcesses';
|
|
35
|
+
import type { IJobDisruptionBudget, ITitusResources } from '../../domain';
|
|
36
|
+
import type { ITitusServiceJobProcesses } from '../../domain/ITitusServiceJobProcesses';
|
|
35
37
|
|
|
36
38
|
export interface ITitusServerGroupCommandBackingData extends IServerGroupCommandBackingData {
|
|
37
39
|
accounts: string[];
|
|
@@ -2,13 +2,11 @@ import { get, isEqual } from 'lodash';
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
|
|
4
4
|
import { ServerGroupCapacity, ServerGroupLoadBalancers, ServerGroupSecurityGroups } from '@spinnaker/amazon';
|
|
5
|
+
import type { Application, IModalComponentProps, IStage } from '@spinnaker/core';
|
|
5
6
|
import {
|
|
6
7
|
AccountTag,
|
|
7
|
-
Application,
|
|
8
8
|
DeployInitializer,
|
|
9
9
|
FirewallLabels,
|
|
10
|
-
IModalComponentProps,
|
|
11
|
-
IStage,
|
|
12
10
|
noop,
|
|
13
11
|
ReactInjector,
|
|
14
12
|
ReactModal,
|
|
@@ -20,7 +18,8 @@ import {
|
|
|
20
18
|
import { ServerGroupBasicSettings, ServerGroupParameters, ServerGroupResources } from './pages';
|
|
21
19
|
import { JobDisruptionBudget } from './pages/disruptionBudget/JobDisruptionBudget';
|
|
22
20
|
import { TitusReactInjector } from '../../../reactShims';
|
|
23
|
-
import {
|
|
21
|
+
import type { ITitusServerGroupCommand } from '../serverGroupConfiguration.service';
|
|
22
|
+
import { getDefaultJobDisruptionBudgetForApp } from '../serverGroupConfiguration.service';
|
|
24
23
|
|
|
25
24
|
export interface ITitusCloneServerGroupModalProps extends IModalComponentProps {
|
|
26
25
|
title: string;
|
|
@@ -1,16 +1,15 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { FormikErrors, FormikProps } from 'formik';
|
|
2
|
+
import { Field } from 'formik';
|
|
2
3
|
import React from 'react';
|
|
3
4
|
|
|
4
5
|
import { AWSProviderSettings, SubnetSelectField } from '@spinnaker/amazon';
|
|
6
|
+
import type { Application, IServerGroup, IWizardPageComponent } from '@spinnaker/core';
|
|
5
7
|
import {
|
|
6
8
|
AccountSelectInput,
|
|
7
9
|
AccountTag,
|
|
8
|
-
Application,
|
|
9
10
|
DeployingIntoManagedClusterWarning,
|
|
10
11
|
DeploymentStrategySelector,
|
|
11
12
|
HelpField,
|
|
12
|
-
IServerGroup,
|
|
13
|
-
IWizardPageComponent,
|
|
14
13
|
NameUtils,
|
|
15
14
|
ReactInjector,
|
|
16
15
|
RegionSelectField,
|
|
@@ -19,7 +18,7 @@ import {
|
|
|
19
18
|
} from '@spinnaker/core';
|
|
20
19
|
import { DockerImageAndTagSelector, DockerImageUtils } from '@spinnaker/docker';
|
|
21
20
|
|
|
22
|
-
import { ITitusServerGroupCommand } from '../../../configure/serverGroupConfiguration.service';
|
|
21
|
+
import type { ITitusServerGroupCommand } from '../../../configure/serverGroupConfiguration.service';
|
|
23
22
|
import { TitusProviderSettings } from '../../../../titus.settings';
|
|
24
23
|
|
|
25
24
|
const isNotExpressionLanguage = (field: string) => field && !field.includes('${');
|
|
@@ -1,17 +1,15 @@
|
|
|
1
|
-
import { FormikProps } from 'formik';
|
|
1
|
+
import type { FormikProps } from 'formik';
|
|
2
2
|
import { intersection, set, union } from 'lodash';
|
|
3
3
|
import React from 'react';
|
|
4
4
|
|
|
5
|
+
import type { Application, IFormInputProps, IWizardPageComponent } from '@spinnaker/core';
|
|
5
6
|
import {
|
|
6
7
|
AccountTag,
|
|
7
|
-
Application,
|
|
8
8
|
CheckboxInput,
|
|
9
9
|
ChecklistInput,
|
|
10
10
|
FormikFormField,
|
|
11
11
|
FormValidator,
|
|
12
12
|
HelpField,
|
|
13
|
-
IFormInputProps,
|
|
14
|
-
IWizardPageComponent,
|
|
15
13
|
LayoutProvider,
|
|
16
14
|
MapEditorInput,
|
|
17
15
|
PlatformHealthOverrideInput,
|
|
@@ -22,7 +20,7 @@ import {
|
|
|
22
20
|
} from '@spinnaker/core';
|
|
23
21
|
|
|
24
22
|
import { TitusMapLayout } from './TitusMapLayout';
|
|
25
|
-
import { ITitusServerGroupCommand } from '../../../configure/serverGroupConfiguration.service';
|
|
23
|
+
import type { ITitusServerGroupCommand } from '../../../configure/serverGroupConfiguration.service';
|
|
26
24
|
import { processesList } from '../../../details/serviceJobProcesses/ServiceJobProcesses';
|
|
27
25
|
|
|
28
26
|
import './ServerGroupParameters.less';
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import { FormikProps } from 'formik';
|
|
1
|
+
import type { FormikProps } from 'formik';
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import
|
|
3
|
+
import type { Option } from 'react-select';
|
|
4
|
+
import Select from 'react-select';
|
|
4
5
|
|
|
5
|
-
import {
|
|
6
|
+
import type { IWizardPageComponent } from '@spinnaker/core';
|
|
7
|
+
import { HelpField, SpelNumberInput } from '@spinnaker/core';
|
|
6
8
|
|
|
7
|
-
import { ITitusServerGroupCommand } from '../../../configure/serverGroupConfiguration.service';
|
|
9
|
+
import type { ITitusServerGroupCommand } from '../../../configure/serverGroupConfiguration.service';
|
|
8
10
|
|
|
9
11
|
const mountPermOptions = [
|
|
10
12
|
{ label: 'Read and Write', value: 'RW' },
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { isUndefined } from 'lodash';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
|
|
4
|
-
import { IFormInputValidation
|
|
5
|
-
import {
|
|
4
|
+
import type { IFormInputValidation } from '@spinnaker/core';
|
|
5
|
+
import { ValidationMessage } from '@spinnaker/core';
|
|
6
|
+
import type { ILayoutProps } from '@spinnaker/core';
|
|
6
7
|
import './TitusMapLayout.less';
|
|
7
8
|
|
|
8
9
|
export function TitusMapLayout(props: ILayoutProps) {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { FormikProps } from 'formik';
|
|
1
|
+
import type { FormikProps } from 'formik';
|
|
2
2
|
import { get, isEqual } from 'lodash';
|
|
3
3
|
import React from 'react';
|
|
4
|
-
import { Option } from 'react-select';
|
|
4
|
+
import type { Option } from 'react-select';
|
|
5
5
|
|
|
6
|
+
import type { Application } from '@spinnaker/core';
|
|
6
7
|
import {
|
|
7
|
-
Application,
|
|
8
8
|
CheckboxInput,
|
|
9
9
|
FormikFormField,
|
|
10
10
|
HelpField,
|
|
@@ -16,11 +16,11 @@ import {
|
|
|
16
16
|
import { policyOptions } from './PolicyOptions';
|
|
17
17
|
import { rateOptions } from './RateOptions';
|
|
18
18
|
import { WindowPicker } from './WindowPicker';
|
|
19
|
-
import { IJobDisruptionBudget } from '../../../../../domain';
|
|
19
|
+
import type { IJobDisruptionBudget } from '../../../../../domain';
|
|
20
|
+
import type { ITitusServerGroupCommand } from '../../../serverGroupConfiguration.service';
|
|
20
21
|
import {
|
|
21
22
|
defaultJobDisruptionBudget,
|
|
22
23
|
getDefaultJobDisruptionBudgetForApp,
|
|
23
|
-
ITitusServerGroupCommand,
|
|
24
24
|
} from '../../../serverGroupConfiguration.service';
|
|
25
25
|
|
|
26
26
|
export interface IJobDisruptionBudgetProps {
|
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
|
|
3
3
|
import { FormikFormField, HelpField, NumberInput } from '@spinnaker/core';
|
|
4
4
|
|
|
5
|
-
import { IFieldOption, IFieldOptionComponentProps } from './JobDisruptionBudget';
|
|
5
|
+
import type { IFieldOption, IFieldOptionComponentProps } from './JobDisruptionBudget';
|
|
6
6
|
import { defaultJobDisruptionBudget } from '../../../serverGroupConfiguration.service';
|
|
7
7
|
|
|
8
8
|
const SelfManagedField = () => (
|
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
|
|
3
3
|
import { FormikFormField, HelpField, NumberInput } from '@spinnaker/core';
|
|
4
4
|
|
|
5
|
-
import { IFieldOption, IFieldOptionComponentProps } from './JobDisruptionBudget';
|
|
5
|
+
import type { IFieldOption, IFieldOptionComponentProps } from './JobDisruptionBudget';
|
|
6
6
|
import { defaultJobDisruptionBudget } from '../../../serverGroupConfiguration.service';
|
|
7
7
|
|
|
8
8
|
const RatePercentagePerInterval = (componentProps: IFieldOptionComponentProps) => (
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { FormikProps } from 'formik';
|
|
1
|
+
import type { FormikProps } from 'formik';
|
|
2
2
|
import { get } from 'lodash';
|
|
3
3
|
import React from 'react';
|
|
4
4
|
|
|
5
5
|
import { ChecklistInput, FormikFormField, HelpField, NumberInput, ReactSelectInput, SpinFormik } from '@spinnaker/core';
|
|
6
|
-
import { IJobTimeWindow } from '../../../../../domain';
|
|
6
|
+
import type { IJobTimeWindow } from '../../../../../domain';
|
|
7
7
|
|
|
8
|
-
import { ITitusServerGroupCommand } from '../../../serverGroupConfiguration.service';
|
|
8
|
+
import type { ITitusServerGroupCommand } from '../../../serverGroupConfiguration.service';
|
|
9
9
|
|
|
10
10
|
export interface IWindowPickerProps {
|
|
11
11
|
formik: FormikProps<ITitusServerGroupCommand>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
|
|
3
|
+
import type { Application } from '@spinnaker/core';
|
|
3
4
|
import {
|
|
4
|
-
Application,
|
|
5
5
|
confirmNotManaged,
|
|
6
6
|
CurrentCapacity,
|
|
7
7
|
DesiredCapacity,
|
|
@@ -10,8 +10,9 @@ import {
|
|
|
10
10
|
showModal,
|
|
11
11
|
} from '@spinnaker/core';
|
|
12
12
|
|
|
13
|
-
import { ITitusServerGroup } from '../../domain';
|
|
14
|
-
import { ITitusResizeServerGroupModalProps
|
|
13
|
+
import type { ITitusServerGroup } from '../../domain';
|
|
14
|
+
import type { ITitusResizeServerGroupModalProps } from './resize/TitusResizeServerGroupModal';
|
|
15
|
+
import { TitusResizeServerGroupModal } from './resize/TitusResizeServerGroupModal';
|
|
15
16
|
import { TitusScalingActivitiesModal } from './scalingActivity/TitusScalingActivitiesModal';
|
|
16
17
|
|
|
17
18
|
interface ICapacityDetailsSectionProps {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
|
|
3
3
|
import { LabeledValue, LabeledValueList, Overridable } from '@spinnaker/core';
|
|
4
|
-
import { ITitusServerGroup } from '../../domain';
|
|
4
|
+
import type { ITitusServerGroup } from '../../domain';
|
|
5
5
|
|
|
6
6
|
interface ILaunchConfigSectionProps {
|
|
7
7
|
serverGroup: ITitusServerGroup;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { CollapsibleSection, LabeledValue, LabeledValueList } from '@spinnaker/core';
|
|
3
|
-
import { ITitusBuildInfo } from '../../domain';
|
|
3
|
+
import type { ITitusBuildInfo } from '../../domain';
|
|
4
4
|
|
|
5
5
|
export interface ITitusPackageDetailsSectionProps {
|
|
6
6
|
buildInfo: ITitusBuildInfo;
|
|
@@ -3,15 +3,9 @@ import { UIRouterContextComponent } from '@uirouter/react-hybrid';
|
|
|
3
3
|
import { sortBy } from 'lodash';
|
|
4
4
|
import React from 'react';
|
|
5
5
|
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
CollapsibleSection,
|
|
10
|
-
FirewallLabels,
|
|
11
|
-
ISecurityGroup,
|
|
12
|
-
ReactInjector,
|
|
13
|
-
} from '@spinnaker/core';
|
|
14
|
-
import { ITitusServerGroupView } from '../../domain';
|
|
6
|
+
import type { Application, ISecurityGroup } from '@spinnaker/core';
|
|
7
|
+
import { AccountService, CollapsibleSection, FirewallLabels, ReactInjector } from '@spinnaker/core';
|
|
8
|
+
import type { ITitusServerGroupView } from '../../domain';
|
|
15
9
|
import { TitusReactInjector } from '../../reactShims';
|
|
16
10
|
|
|
17
11
|
export interface ITitusServerGroupDetailsSectionProps {
|
|
@@ -4,20 +4,17 @@ import prettyMilliseconds from 'pretty-ms';
|
|
|
4
4
|
import React from 'react';
|
|
5
5
|
import { react2angular } from 'react2angular';
|
|
6
6
|
|
|
7
|
-
import {
|
|
7
|
+
import type { IServerGroupDetailsSectionProps } from '@spinnaker/core';
|
|
8
|
+
import { HelpField, withErrorBoundary } from '@spinnaker/core';
|
|
8
9
|
|
|
9
10
|
import { EditDisruptionBudgetModal } from './EditDisruptionBudgetModal';
|
|
10
|
-
import {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
} from '../../configure/
|
|
14
|
-
import {
|
|
15
|
-
DisruptionBudgetDescription,
|
|
16
|
-
IFieldOption,
|
|
17
|
-
} from '../../configure/wizard/pages/disruptionBudget/JobDisruptionBudget';
|
|
11
|
+
import type { ITitusServerGroupCommand } from '../../configure/serverGroupConfiguration.service';
|
|
12
|
+
import { getDefaultJobDisruptionBudgetForApp } from '../../configure/serverGroupConfiguration.service';
|
|
13
|
+
import type { IFieldOption } from '../../configure/wizard/pages/disruptionBudget/JobDisruptionBudget';
|
|
14
|
+
import { DisruptionBudgetDescription } from '../../configure/wizard/pages/disruptionBudget/JobDisruptionBudget';
|
|
18
15
|
import { policyOptions } from '../../configure/wizard/pages/disruptionBudget/PolicyOptions';
|
|
19
16
|
import { rateOptions } from '../../configure/wizard/pages/disruptionBudget/RateOptions';
|
|
20
|
-
import { IJobDisruptionBudget, ITitusServerGroup } from '../../../domain';
|
|
17
|
+
import type { IJobDisruptionBudget, ITitusServerGroup } from '../../../domain';
|
|
21
18
|
import { TitusReactInjector } from '../../../reactShims';
|
|
22
19
|
|
|
23
20
|
interface IDisruptionBudgetSection extends IServerGroupDetailsSectionProps {
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { Modal } from 'react-bootstrap';
|
|
3
3
|
|
|
4
|
+
import type { Application, IJob, IModalComponentProps } from '@spinnaker/core';
|
|
4
5
|
import {
|
|
5
|
-
Application,
|
|
6
|
-
IJob,
|
|
7
|
-
IModalComponentProps,
|
|
8
6
|
ModalClose,
|
|
9
7
|
ReactModal,
|
|
10
8
|
SpinFormik,
|
|
@@ -14,9 +12,9 @@ import {
|
|
|
14
12
|
TaskMonitorWrapper,
|
|
15
13
|
} from '@spinnaker/core';
|
|
16
14
|
|
|
17
|
-
import { ITitusServerGroupCommand } from '../../configure/serverGroupConfiguration.service';
|
|
15
|
+
import type { ITitusServerGroupCommand } from '../../configure/serverGroupConfiguration.service';
|
|
18
16
|
import { JobDisruptionBudget } from '../../configure/wizard/pages/disruptionBudget/JobDisruptionBudget';
|
|
19
|
-
import { ITitusServerGroup } from '../../../domain';
|
|
17
|
+
import type { ITitusServerGroup } from '../../../domain';
|
|
20
18
|
|
|
21
19
|
export interface IEditDisruptionBudgetModalProps extends IModalComponentProps {
|
|
22
20
|
application: Application;
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { FormikContext } from 'formik';
|
|
2
|
+
import { Form } from 'formik';
|
|
2
3
|
import React from 'react';
|
|
3
4
|
import { Modal } from 'react-bootstrap';
|
|
4
5
|
|
|
6
|
+
import type { Application, ICapacity, IModalComponentProps } from '@spinnaker/core';
|
|
5
7
|
import {
|
|
6
|
-
Application,
|
|
7
8
|
FormikFormField,
|
|
8
|
-
ICapacity,
|
|
9
|
-
IModalComponentProps,
|
|
10
9
|
MinMaxDesiredChanges,
|
|
11
10
|
ModalClose,
|
|
12
11
|
NumberInput,
|
|
@@ -17,7 +16,7 @@ import {
|
|
|
17
16
|
UserVerification,
|
|
18
17
|
ValidationMessage,
|
|
19
18
|
} from '@spinnaker/core';
|
|
20
|
-
import { ITitusServerGroup } from '../../../domain';
|
|
19
|
+
import type { ITitusServerGroup } from '../../../domain';
|
|
21
20
|
|
|
22
21
|
import { useTaskMonitor } from './useTaskMonitor';
|
|
23
22
|
|
|
@@ -1,18 +1,10 @@
|
|
|
1
1
|
import { DateTime } from 'luxon';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
IModalComponentProps,
|
|
7
|
-
ModalBody,
|
|
8
|
-
ModalFooter,
|
|
9
|
-
ModalHeader,
|
|
10
|
-
ServerGroupReader,
|
|
11
|
-
Spinner,
|
|
12
|
-
useData,
|
|
13
|
-
} from '@spinnaker/core';
|
|
4
|
+
import type { ICapacity, IModalComponentProps } from '@spinnaker/core';
|
|
5
|
+
import { ModalBody, ModalFooter, ModalHeader, ServerGroupReader, Spinner, useData } from '@spinnaker/core';
|
|
14
6
|
|
|
15
|
-
import { ITitusServerGroup } from '../../../domain';
|
|
7
|
+
import type { ITitusServerGroup } from '../../../domain';
|
|
16
8
|
|
|
17
9
|
export interface ITitusScalingActivitiesProps extends IModalComponentProps {
|
|
18
10
|
serverGroup: ITitusServerGroup;
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
|
|
3
3
|
import { PolicyTypeSelectionModal } from '@spinnaker/amazon';
|
|
4
|
-
import {
|
|
4
|
+
import type { Application, IServerGroup } from '@spinnaker/core';
|
|
5
|
+
import { AccountService, ReactModal } from '@spinnaker/core';
|
|
5
6
|
|
|
6
7
|
import { TitusReactInjector } from '../../../reactShims';
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
8
|
+
import type { IUpsertTargetTrackingModalProps } from './targetTracking/UpsertTargetTrackingModal';
|
|
9
|
+
import { UpsertTargetTrackingModal } from './targetTracking/UpsertTargetTrackingModal';
|
|
10
|
+
import type { IUpsertScalingPolicyModalProps } from './upsert/UpsertScalingPolicyModal';
|
|
11
|
+
import { UpsertScalingPolicyModal } from './upsert/UpsertScalingPolicyModal';
|
|
9
12
|
|
|
10
13
|
export interface ICreateScalingPolicyButtonProps {
|
|
11
14
|
application: Application;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import { Application, IServerGroup
|
|
1
|
+
import type * as React from 'react';
|
|
2
|
+
import type { Application, IServerGroup } from '@spinnaker/core';
|
|
3
|
+
import { overridableComponent } from '@spinnaker/core';
|
|
3
4
|
|
|
4
5
|
export interface ITitusCustomScalingPolicyProps {
|
|
5
6
|
application: Application;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './targetTracking/TitusTargetTrackingChart';
|
|
2
|
+
export { UpsertTargetTrackingModal as TitusUpsertTargetTrackingModal } from './targetTracking/UpsertTargetTrackingModal';
|
|
3
|
+
export { UpsertScalingPolicyModal as TitusUpsertScalingPolicyModal } from './upsert/UpsertScalingPolicyModal';
|
|
@@ -1,16 +1,7 @@
|
|
|
1
1
|
import { module } from 'angular';
|
|
2
2
|
|
|
3
|
-
import { TITUS_SERVERGROUP_DETAILS_SCALINGPOLICY_ALARMBASEDSUMMARY_COMPONENT } from './alarmBasedSummary.component';
|
|
4
3
|
import { TITUS_CREATE_SCALING_POLICY_BUTTON } from './createScalingPolicyButton.component';
|
|
5
|
-
import { SCALING_POLICY_SUMMARY } from './scalingPolicySummary.component';
|
|
6
|
-
import { TARGET_TRACKING_MODULE } from './targetTracking/targetTracking.module';
|
|
7
4
|
import { TITUS_SERVERGROUP_CUSTOM_SCALING_COMPONENT } from './titusCustomScalingPolicy.component';
|
|
8
5
|
|
|
9
6
|
export const SCALING_POLICY_MODULE = 'spinnaker.titus.scalingPolicy.module';
|
|
10
|
-
module(SCALING_POLICY_MODULE, [
|
|
11
|
-
SCALING_POLICY_SUMMARY,
|
|
12
|
-
TITUS_CREATE_SCALING_POLICY_BUTTON,
|
|
13
|
-
TARGET_TRACKING_MODULE,
|
|
14
|
-
TITUS_SERVERGROUP_DETAILS_SCALINGPOLICY_ALARMBASEDSUMMARY_COMPONENT,
|
|
15
|
-
TITUS_SERVERGROUP_CUSTOM_SCALING_COMPONENT,
|
|
16
|
-
]);
|
|
7
|
+
module(SCALING_POLICY_MODULE, [TITUS_CREATE_SCALING_POLICY_BUTTON, TITUS_SERVERGROUP_CUSTOM_SCALING_COMPONENT]);
|
|
@@ -1,29 +1,17 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { Subject } from 'rxjs';
|
|
3
2
|
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
ITargetTrackingConfiguration,
|
|
8
|
-
MetricAlarmChart,
|
|
9
|
-
} from '@spinnaker/amazon';
|
|
10
|
-
import { ICloudMetricStatistics } from '@spinnaker/core';
|
|
3
|
+
import type { IAmazonServerGroup, IScalingPolicyAlarm, ITargetTrackingConfiguration } from '@spinnaker/amazon';
|
|
4
|
+
import { MetricAlarmChart } from '@spinnaker/amazon';
|
|
5
|
+
import type { ICloudMetricStatistics } from '@spinnaker/core';
|
|
11
6
|
|
|
12
7
|
export interface ITitusTargetTrackingChartProps {
|
|
13
|
-
alarmUpdated?: Subject<void>;
|
|
14
8
|
config: ITargetTrackingConfiguration;
|
|
15
9
|
serverGroup: IAmazonServerGroup;
|
|
16
10
|
unit?: string;
|
|
17
11
|
updateUnit?: (unit: string) => void;
|
|
18
12
|
}
|
|
19
13
|
|
|
20
|
-
export const TitusTargetTrackingChart = ({
|
|
21
|
-
alarmUpdated,
|
|
22
|
-
config,
|
|
23
|
-
serverGroup,
|
|
24
|
-
unit,
|
|
25
|
-
updateUnit,
|
|
26
|
-
}: ITitusTargetTrackingChartProps) => {
|
|
14
|
+
export const TitusTargetTrackingChart = ({ config, serverGroup, unit, updateUnit }: ITitusTargetTrackingChartProps) => {
|
|
27
15
|
const [alarm, setAlarm] = React.useState<IScalingPolicyAlarm>({
|
|
28
16
|
alarmName: null,
|
|
29
17
|
alarmArn: null,
|
|
@@ -63,15 +51,7 @@ export const TitusTargetTrackingChart = ({
|
|
|
63
51
|
if (unit) {
|
|
64
52
|
updateUnit(stats.unit);
|
|
65
53
|
}
|
|
66
|
-
alarmUpdated?.next();
|
|
67
54
|
};
|
|
68
55
|
|
|
69
|
-
return
|
|
70
|
-
<MetricAlarmChart
|
|
71
|
-
alarm={alarm}
|
|
72
|
-
alarmUpdated={alarmUpdated}
|
|
73
|
-
onChartLoaded={onChartLoaded}
|
|
74
|
-
serverGroup={serverGroup}
|
|
75
|
-
/>
|
|
76
|
-
);
|
|
56
|
+
return <MetricAlarmChart alarm={alarm} onChartLoaded={onChartLoaded} serverGroup={serverGroup} />;
|
|
77
57
|
};
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import type {
|
|
4
4
|
IAmazonServerGroup,
|
|
5
5
|
ITargetTrackingPolicy,
|
|
6
6
|
ITargetTrackingPolicyCommand,
|
|
7
7
|
IUpsertScalingPolicyCommand,
|
|
8
|
-
TargetMetricFields,
|
|
9
|
-
TargetTrackingAdditionalSettings,
|
|
10
8
|
} from '@spinnaker/amazon';
|
|
11
|
-
import {
|
|
9
|
+
import { TargetMetricFields, TargetTrackingAdditionalSettings } from '@spinnaker/amazon';
|
|
10
|
+
import type { Application, IModalComponentProps } from '@spinnaker/core';
|
|
11
|
+
import { TaskMonitorModal } from '@spinnaker/core';
|
|
12
12
|
|
|
13
|
-
import { ITitusServerGroup } from '../../../../domain';
|
|
13
|
+
import type { ITitusServerGroup } from '../../../../domain';
|
|
14
14
|
import { TitusScalingPolicyCommandBuilder } from '../upsert/TitusScalingPolicyCommandBuilderService';
|
|
15
15
|
|
|
16
16
|
export interface IUpsertTargetTrackingModalProps extends IModalComponentProps {
|
package/src/serverGroup/details/scalingPolicy/upsert/TitusScalingPolicyCommandBuilderService.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { cloneDeep } from 'lodash';
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import type {
|
|
4
4
|
IScalingPolicy,
|
|
5
5
|
IScalingPolicyAlarmView,
|
|
6
6
|
IStepAdjustment,
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
IUpsertAlarmDescription,
|
|
10
10
|
IUpsertScalingPolicyCommand,
|
|
11
11
|
} from '@spinnaker/amazon';
|
|
12
|
-
import { ITitusServerGroup } from '../../../../domain';
|
|
12
|
+
import type { ITitusServerGroup } from '../../../../domain';
|
|
13
13
|
|
|
14
14
|
type PolicyType = 'Step' | 'TargetTracking';
|
|
15
15
|
|
|
@@ -1,21 +1,20 @@
|
|
|
1
1
|
import { cloneDeep } from 'lodash';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
|
|
4
|
-
import {
|
|
5
|
-
AlarmConfigurer,
|
|
4
|
+
import type {
|
|
6
5
|
IScalingPolicy,
|
|
7
6
|
IStepAdjustment,
|
|
8
7
|
IStepPolicyDescription,
|
|
9
8
|
ITargetTrackingPolicy,
|
|
10
9
|
IUpsertScalingPolicyCommand,
|
|
11
|
-
ScalingPolicyAdditionalSettings,
|
|
12
|
-
StepPolicyAction,
|
|
13
10
|
} from '@spinnaker/amazon';
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
11
|
+
import { AlarmConfigurer, ScalingPolicyAdditionalSettings, StepPolicyAction } from '@spinnaker/amazon';
|
|
12
|
+
import type { IAmazonServerGroup, IScalingPolicyAlarm } from '@spinnaker/amazon/src/domain';
|
|
13
|
+
import type { Application, IModalComponentProps } from '@spinnaker/core';
|
|
14
|
+
import { TaskMonitorModal } from '@spinnaker/core';
|
|
16
15
|
|
|
17
16
|
import { TitusScalingPolicyCommandBuilder } from './TitusScalingPolicyCommandBuilderService';
|
|
18
|
-
import { ITitusServerGroup } from '../../../../domain';
|
|
17
|
+
import type { ITitusServerGroup } from '../../../../domain';
|
|
19
18
|
|
|
20
19
|
type Operator = 'Add' | 'Remove' | 'Set to';
|
|
21
20
|
type AdjustmentTypeView = 'instances' | 'percent of group';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { IServerGroupDetailsSectionProps } from '@spinnaker/core';
|
|
2
|
-
import { ITitusServerGroup } from '../../../domain';
|
|
1
|
+
import type { IServerGroupDetailsSectionProps } from '@spinnaker/core';
|
|
2
|
+
import type { ITitusServerGroup } from '../../../domain';
|
|
3
3
|
|
|
4
4
|
export interface ITitusServerGroupDetailsSectionProps extends IServerGroupDetailsSectionProps {
|
|
5
5
|
serverGroup: ITitusServerGroup;
|
|
@@ -134,12 +134,12 @@
|
|
|
134
134
|
</collapsible-section>
|
|
135
135
|
|
|
136
136
|
<collapsible-section heading="Scaling Policies">
|
|
137
|
-
<
|
|
137
|
+
<scaling-policy-summary
|
|
138
138
|
ng-repeat="policy in serverGroup.scalingPolicies"
|
|
139
139
|
policy="policy"
|
|
140
140
|
server-group="serverGroup"
|
|
141
141
|
application="ctrl.application"
|
|
142
|
-
></
|
|
142
|
+
></scaling-policy-summary>
|
|
143
143
|
<titus-create-scaling-policy-button
|
|
144
144
|
server-group="serverGroup"
|
|
145
145
|
application="ctrl.application"
|
|
@@ -2,11 +2,10 @@ import { module } from 'angular';
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { react2angular } from 'react2angular';
|
|
4
4
|
|
|
5
|
+
import type { Application, IModalComponentProps } from '@spinnaker/core';
|
|
5
6
|
import {
|
|
6
|
-
Application,
|
|
7
7
|
ChecklistInput,
|
|
8
8
|
FormikFormField,
|
|
9
|
-
IModalComponentProps,
|
|
10
9
|
ReactModal,
|
|
11
10
|
robotToHuman,
|
|
12
11
|
TaskMonitorModal,
|
|
@@ -15,9 +14,9 @@ import {
|
|
|
15
14
|
} from '@spinnaker/core';
|
|
16
15
|
|
|
17
16
|
import { enabledProcesses } from './ServiceJobProcesses';
|
|
18
|
-
import { ITitusServerGroup } from '../../../domain';
|
|
19
|
-
import { ITitusServiceJobProcesses } from '../../../domain/ITitusServiceJobProcesses';
|
|
20
|
-
import { ITitusServerGroupDetailsSectionProps } from '../sections/ITitusServerGroupDetailsSectionProps';
|
|
17
|
+
import type { ITitusServerGroup } from '../../../domain';
|
|
18
|
+
import type { ITitusServiceJobProcesses } from '../../../domain/ITitusServiceJobProcesses';
|
|
19
|
+
import type { ITitusServerGroupDetailsSectionProps } from '../sections/ITitusServerGroupDetailsSectionProps';
|
|
21
20
|
|
|
22
21
|
interface IEditTitusServiceJobProcessesValues {
|
|
23
22
|
serviceJobProcesses: string[];
|