@spinnaker/amazon 0.8.14 → 0.11.0
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 +62 -0
- package/dist/aws.settings.d.ts +1 -1
- package/dist/certificates/AmazonCertificateReader.d.ts +1 -1
- package/dist/deploymentStrategy/AdditionalFields.d.ts +2 -2
- package/dist/deploymentStrategy/rollingPush.strategy.d.ts +1 -1
- package/dist/domain/IAmazonCertificate.d.ts +1 -1
- package/dist/domain/IAmazonFunction.d.ts +1 -1
- package/dist/domain/IAmazonFunctionSourceData.d.ts +2 -1
- package/dist/domain/IAmazonHealth.d.ts +1 -1
- package/dist/domain/IAmazonInstance.d.ts +2 -2
- package/dist/domain/IAmazonLaunchTemplate.d.ts +1 -1
- package/dist/domain/IAmazonLoadBalancer.d.ts +4 -4
- package/dist/domain/IAmazonLoadBalancerSourceData.d.ts +3 -3
- package/dist/domain/IAmazonScalingPolicy.d.ts +3 -1
- package/dist/domain/IAmazonServerGroup.d.ts +5 -5
- package/dist/domain/IScalingPolicy.d.ts +1 -1
- package/dist/domain/ITargetTrackingPolicy.d.ts +1 -1
- package/dist/function/CreateLambdaFunction.d.ts +3 -2
- package/dist/function/configure/ExecutionRole.d.ts +4 -4
- package/dist/function/configure/FunctionBasicInformation.d.ts +4 -4
- package/dist/function/configure/FunctionDebugAndErrorHandling.d.ts +4 -4
- package/dist/function/configure/FunctionEnvironmentVariables.d.ts +4 -4
- package/dist/function/configure/FunctionSettings.d.ts +4 -4
- package/dist/function/configure/FunctionTags.d.ts +4 -4
- package/dist/function/configure/Network.d.ts +3 -3
- package/dist/function/details/AmazonFunctionDetails.d.ts +1 -1
- package/dist/function/details/FunctionActions.d.ts +3 -3
- package/dist/function/function.transformer.d.ts +2 -2
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/instance/amazon.instance.write.service.d.ts +3 -2
- package/dist/instance/details/AmazonInstanceInformation.d.ts +2 -1
- package/dist/instance/details/InstanceDns.d.ts +1 -0
- package/dist/instance/details/InstanceInformation.d.ts +1 -0
- package/dist/instance/details/InstanceSecurityGroups.d.ts +2 -1
- package/dist/instance/details/InstanceStatus.d.ts +2 -1
- package/dist/instance/details/InstanceTags.d.ts +1 -0
- package/dist/instance/details/utils.d.ts +1 -1
- package/dist/keyPairs/KeyPairsReader.d.ts +1 -1
- package/dist/loadBalancer/AmazonLoadBalancerClusterContainer.d.ts +1 -1
- package/dist/loadBalancer/AmazonLoadBalancersTag.d.ts +2 -2
- package/dist/loadBalancer/TargetGroup.d.ts +1 -1
- package/dist/loadBalancer/TargetGroupDetails.d.ts +1 -1
- package/dist/loadBalancer/amazonLoadBalancerDataUtils.d.ts +2 -2
- package/dist/loadBalancer/configure/AmazonLoadBalancerChoiceModal.d.ts +2 -2
- package/dist/loadBalancer/configure/LoadBalancerTypes.d.ts +2 -2
- package/dist/loadBalancer/configure/application/ALBListeners.d.ts +4 -4
- package/dist/loadBalancer/configure/application/ConfigureOidcConfigModal.d.ts +1 -1
- package/dist/loadBalancer/configure/application/ConfigureRedirectConfigModal.d.ts +1 -1
- package/dist/loadBalancer/configure/application/CreateApplicationLoadBalancer.d.ts +3 -2
- package/dist/loadBalancer/configure/application/TargetGroups.d.ts +3 -3
- package/dist/loadBalancer/configure/classic/AdvancedSettings.d.ts +2 -2
- package/dist/loadBalancer/configure/classic/CreateClassicLoadBalancer.d.ts +3 -2
- package/dist/loadBalancer/configure/classic/HealthCheck.d.ts +2 -2
- package/dist/loadBalancer/configure/classic/Listeners.d.ts +3 -3
- package/dist/loadBalancer/configure/common/AmazonCertificateSelectField.d.ts +2 -2
- package/dist/loadBalancer/configure/common/LoadBalancerLocation.d.ts +3 -3
- package/dist/loadBalancer/configure/common/SecurityGroups.d.ts +3 -3
- package/dist/loadBalancer/configure/common/targetGroupValidators.d.ts +2 -2
- package/dist/loadBalancer/configure/network/CertificateSelectors.d.ts +2 -1
- package/dist/loadBalancer/configure/network/CreateNetworkLoadBalancer.d.ts +3 -2
- package/dist/loadBalancer/configure/network/NLBListeners.d.ts +4 -4
- package/dist/loadBalancer/configure/network/TargetGroups.d.ts +3 -3
- package/dist/loadBalancer/details/LoadBalancerActions.d.ts +3 -3
- package/dist/loadBalancer/details/loadBalancerDetails.controller.d.ts +4 -4
- package/dist/loadBalancer/details/targetGroupDetails.controller.d.ts +4 -4
- package/dist/loadBalancer/loadBalancer.transformer.d.ts +2 -2
- package/dist/pipeline/stages/deployCloudFormation/CloudFormationChangeSetInfo.d.ts +2 -1
- package/dist/pipeline/stages/deployCloudFormation/deployCloudFormationExecutionDetails.d.ts +1 -1
- package/dist/pipeline/stages/deployCloudFormation/deployCloudFormationStackConfig.controller.d.ts +3 -2
- package/dist/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecution.service.d.ts +3 -3
- package/dist/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecutionApproval.d.ts +2 -1
- package/dist/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecutionDetails.d.ts +1 -1
- package/dist/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecutionLabel.d.ts +2 -2
- package/dist/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecutionMarkerIcon.d.ts +1 -1
- package/dist/reactShims/aws.ngReact.d.ts +2 -2
- package/dist/reactShims/aws.react.injector.d.ts +5 -4
- package/dist/reactShims/index.d.ts +0 -1
- package/dist/securityGroup/configure/securityGroupDetailsCustom.d.ts +1 -1
- package/dist/securityGroup/securityGroup.reader.d.ts +1 -1
- package/dist/serverGroup/configure/AmazonImageSelectInput.d.ts +2 -2
- package/dist/serverGroup/configure/serverGroupConfiguration.service.d.ts +2 -2
- package/dist/serverGroup/configure/wizard/AmazonCloneServerGroupModal.d.ts +3 -2
- package/dist/serverGroup/configure/wizard/ServerGroupTemplateSelection.d.ts +1 -1
- package/dist/serverGroup/configure/wizard/capacity/CapacitySelector.d.ts +2 -2
- package/dist/serverGroup/configure/wizard/capacity/MinMaxDesired.d.ts +1 -1
- package/dist/serverGroup/configure/wizard/instanceType/CpuCreditsToggle.d.ts +2 -1
- package/dist/serverGroup/configure/wizard/pages/ServerGroupBasicSettings.d.ts +4 -4
- package/dist/serverGroup/configure/wizard/pages/ServerGroupCapacity.d.ts +3 -3
- package/dist/serverGroup/configure/wizard/pages/ServerGroupInstanceType.d.ts +3 -3
- package/dist/serverGroup/configure/wizard/pages/ServerGroupLoadBalancers.d.ts +3 -3
- package/dist/serverGroup/configure/wizard/pages/ServerGroupSecurityGroups.d.ts +3 -3
- package/dist/serverGroup/configure/wizard/pages/ServerGroupZones.d.ts +3 -3
- package/dist/serverGroup/configure/wizard/pages/advancedSettings/ServerGroupAdvancedSettings.d.ts +3 -3
- package/dist/serverGroup/configure/wizard/pages/advancedSettings/ServerGroupAdvancedSettingsCommon.d.ts +2 -2
- package/dist/serverGroup/configure/wizard/pages/advancedSettings/ServerGroupAdvancedSettingsInner.d.ts +4 -4
- package/dist/serverGroup/configure/wizard/securityGroups/SecurityGroupSelector.d.ts +2 -2
- package/dist/serverGroup/configure/wizard/securityGroups/ServerGroupSecurityGroupsRemoved.d.ts +1 -1
- package/dist/serverGroup/details/AmazonServerGroupActions.d.ts +3 -3
- package/dist/serverGroup/details/amazonServerGroupDetailsGetter.d.ts +2 -2
- package/dist/serverGroup/details/resize/AmazonResizeServerGroupModal.d.ts +3 -2
- package/dist/serverGroup/details/scalingPolicy/CreateScalingPolicyButton.d.ts +2 -2
- package/dist/serverGroup/details/scalingPolicy/ScalingPolicySummary.d.ts +7 -4
- package/dist/serverGroup/details/scalingPolicy/ScalingPolicyWriter.d.ts +2 -2
- package/dist/serverGroup/details/scalingPolicy/StepPolicySummary.d.ts +10 -0
- package/dist/serverGroup/details/scalingPolicy/chart/DateLineChart.d.ts +2 -1
- package/dist/serverGroup/details/scalingPolicy/chart/MetricAlarmChart.d.ts +4 -3
- package/dist/serverGroup/details/scalingPolicy/detailsSummary.component.d.ts +3 -3
- package/dist/serverGroup/details/scalingPolicy/index.d.ts +4 -0
- package/dist/serverGroup/details/scalingPolicy/popover/AlarmSummary.d.ts +8 -1
- package/dist/serverGroup/details/scalingPolicy/popover/StepPolicyPopoverContent.d.ts +7 -0
- package/dist/serverGroup/details/scalingPolicy/scalingPolicySummary.component.d.ts +1 -0
- package/dist/serverGroup/details/scalingPolicy/stepPolicySummary.component.d.ts +1 -0
- package/dist/serverGroup/details/scalingPolicy/targetTracking/TargetMetricFields.d.ts +4 -4
- package/dist/serverGroup/details/scalingPolicy/targetTracking/TargetTrackingAdditionalSettings.d.ts +2 -1
- package/dist/serverGroup/details/scalingPolicy/targetTracking/TargetTrackingChart.d.ts +2 -1
- package/dist/serverGroup/details/scalingPolicy/targetTracking/TargetTrackingSummary.d.ts +10 -0
- package/dist/serverGroup/details/scalingPolicy/targetTracking/UpsertTargetTrackingModal.d.ts +3 -2
- package/dist/serverGroup/details/scalingPolicy/upsert/PolicyTypeSelectionModal.d.ts +1 -0
- package/dist/serverGroup/details/scalingPolicy/upsert/ScalingPolicyAdditionalSettings.d.ts +2 -1
- package/dist/serverGroup/details/scalingPolicy/upsert/ScalingPolicyCommandBuilderService.d.ts +2 -2
- package/dist/serverGroup/details/scalingPolicy/upsert/UpsertScalingPolicyModal.d.ts +3 -2
- package/dist/serverGroup/details/scalingPolicy/upsert/alarm/AlarmConfigurer.d.ts +6 -1
- package/dist/serverGroup/details/scalingPolicy/upsert/alarm/DimensionsEditor.d.ts +4 -3
- package/dist/serverGroup/details/scalingPolicy/upsert/alarm/MetricSelector.d.ts +3 -2
- package/dist/serverGroup/details/scalingPolicy/upsert/index.d.ts +1 -0
- package/dist/serverGroup/details/scalingPolicy/upsert/simple/SimplePolicyAction.d.ts +1 -0
- package/dist/serverGroup/details/scalingPolicy/upsert/step/StepPolicyAction.d.ts +2 -1
- package/dist/serverGroup/details/scalingProcesses/AutoScalingProcessService.d.ts +1 -1
- package/dist/serverGroup/details/scheduledAction/ScheduledAction.d.ts +1 -1
- package/dist/serverGroup/details/sections/AdvancedSettingsDetailsSection.d.ts +1 -1
- package/dist/serverGroup/details/sections/AmazonCapacityDetailsSection.d.ts +1 -1
- package/dist/serverGroup/details/sections/AmazonInfoDetailsSection.d.ts +2 -2
- package/dist/serverGroup/details/sections/HealthDetailsSection.d.ts +1 -1
- package/dist/serverGroup/details/sections/IAmazonServerGroupDetailsSectionProps.d.ts +2 -2
- package/dist/serverGroup/details/sections/InstancesDistributionDetailsSection.d.ts +2 -1
- package/dist/serverGroup/details/sections/LaunchConfigDetailsSection.d.ts +1 -1
- package/dist/serverGroup/details/sections/LaunchTemplateDetailsSection.d.ts +2 -1
- package/dist/serverGroup/details/sections/LogsDetailsSection.d.ts +1 -1
- package/dist/serverGroup/details/sections/MultipleInstanceTypesSubSection.d.ts +2 -1
- package/dist/serverGroup/details/sections/PackageDetailsSection.d.ts +1 -1
- package/dist/serverGroup/details/sections/ScalingPoliciesDetailsSection.d.ts +2 -2
- package/dist/serverGroup/details/sections/ScalingProcessesDetailsSection.d.ts +2 -2
- package/dist/serverGroup/details/sections/ScheduledActionsDetailsSection.d.ts +1 -1
- package/dist/serverGroup/details/sections/SecurityGroupsDetailsSection.d.ts +2 -2
- package/dist/serverGroup/details/sections/TagsDetailsSection.d.ts +1 -1
- package/dist/serverGroup/serverGroup.transformer.d.ts +1 -1
- package/dist/subnet/SubnetSelectField.d.ts +1 -1
- package/dist/subnet/SubnetSelectInput.d.ts +2 -2
- package/dist/subnet/subnet.renderer.d.ts +1 -1
- package/dist/vpc/VpcReader.d.ts +1 -1
- package/dist/vpc/VpcTag.d.ts +1 -0
- package/package.json +6 -6
- package/src/aws.module.ts +11 -1
- package/src/aws.settings.ts +2 -1
- package/src/certificates/AmazonCertificateReader.ts +1 -1
- package/src/common/AwsModalFooter.tsx +2 -1
- package/src/common/footer.component.ts +2 -1
- package/src/deploymentStrategy/AdditionalFields.tsx +3 -2
- package/src/deploymentStrategy/rollingPush.strategy.ts +2 -1
- package/src/domain/IAmazonCertificate.ts +1 -1
- package/src/domain/IAmazonFunction.ts +1 -1
- package/src/domain/IAmazonFunctionSourceData.ts +2 -1
- package/src/domain/IAmazonHealth.ts +1 -1
- package/src/domain/IAmazonInstance.ts +2 -2
- package/src/domain/IAmazonLaunchTemplate.ts +1 -1
- package/src/domain/IAmazonLoadBalancer.ts +4 -4
- package/src/domain/IAmazonLoadBalancerSourceData.ts +3 -3
- package/src/domain/IAmazonScalingPolicy.ts +3 -1
- package/src/domain/IAmazonServerGroup.ts +5 -5
- package/src/domain/IScalingPolicy.ts +1 -1
- package/src/domain/ITargetTrackingPolicy.ts +1 -1
- package/src/function/CreateLambdaFunction.tsx +3 -11
- package/src/function/configure/ExecutionRole.tsx +5 -4
- package/src/function/configure/FunctionBasicInformation.tsx +6 -8
- package/src/function/configure/FunctionDebugAndErrorHandling.tsx +5 -11
- package/src/function/configure/FunctionEnvironmentVariables.tsx +5 -11
- package/src/function/configure/FunctionSettings.tsx +5 -4
- package/src/function/configure/FunctionTags.tsx +5 -4
- package/src/function/configure/Network.tsx +8 -6
- package/src/function/details/AmazonFunctionDetails.tsx +30 -10
- package/src/function/details/FunctionActions.spec.tsx +24 -1
- package/src/function/details/FunctionActions.tsx +30 -28
- package/src/function/function.transformer.ts +2 -2
- package/src/instance/amazon.instance.write.service.ts +3 -9
- package/src/instance/details/AmazonInstanceInformation.tsx +1 -1
- package/src/instance/details/InstanceSecurityGroups.tsx +1 -1
- package/src/instance/details/InstanceStatus.tsx +1 -1
- package/src/instance/details/instance.details.controller.js +2 -0
- package/src/instance/details/instanceDetails.html +1 -1
- package/src/instance/details/utils.ts +6 -1
- package/src/keyPairs/KeyPairsReader.ts +1 -1
- package/src/loadBalancer/AmazonLoadBalancerClusterContainer.tsx +3 -2
- package/src/loadBalancer/AmazonLoadBalancersTag.tsx +2 -3
- package/src/loadBalancer/TargetGroup.tsx +1 -1
- package/src/loadBalancer/TargetGroupDetails.tsx +2 -1
- package/src/loadBalancer/amazonLoadBalancerDataUtils.ts +3 -2
- package/src/loadBalancer/configure/AmazonLoadBalancerChoiceModal.tsx +4 -10
- package/src/loadBalancer/configure/LoadBalancerTypes.ts +2 -2
- package/src/loadBalancer/configure/application/ALBListeners.tsx +9 -14
- package/src/loadBalancer/configure/application/ConfigureOidcConfigModal.tsx +3 -2
- package/src/loadBalancer/configure/application/ConfigureRedirectConfigModal.tsx +1 -1
- package/src/loadBalancer/configure/application/CreateApplicationLoadBalancer.tsx +2 -2
- package/src/loadBalancer/configure/application/TargetGroups.tsx +3 -4
- package/src/loadBalancer/configure/classic/AdvancedSettings.tsx +2 -2
- package/src/loadBalancer/configure/classic/CreateClassicLoadBalancer.tsx +3 -3
- package/src/loadBalancer/configure/classic/HealthCheck.tsx +2 -2
- package/src/loadBalancer/configure/classic/Listeners.tsx +3 -3
- package/src/loadBalancer/configure/common/AmazonCertificateSelectField.tsx +5 -3
- package/src/loadBalancer/configure/common/LoadBalancerLocation.tsx +6 -9
- package/src/loadBalancer/configure/common/SecurityGroups.tsx +4 -11
- package/src/loadBalancer/configure/common/targetGroupValidators.ts +2 -2
- package/src/loadBalancer/configure/network/CertificateSelectors.tsx +3 -2
- package/src/loadBalancer/configure/network/CreateNetworkLoadBalancer.tsx +3 -3
- package/src/loadBalancer/configure/network/NLBListeners.tsx +5 -4
- package/src/loadBalancer/configure/network/TargetGroups.tsx +3 -4
- package/src/loadBalancer/details/LoadBalancerActions.tsx +48 -46
- package/src/loadBalancer/details/loadBalancerDetails.controller.ts +10 -7
- package/src/loadBalancer/details/targetGroupDetails.controller.ts +6 -4
- package/src/loadBalancer/loadBalancer.transformer.ts +3 -11
- package/src/loadBalancer/targetGroup.states.ts +3 -2
- package/src/pipeline/stages/deployCloudFormation/CloudFormationChangeSetInfo.tsx +2 -9
- package/src/pipeline/stages/deployCloudFormation/cloudFormationTemplateEntry.component.ts +2 -1
- package/src/pipeline/stages/deployCloudFormation/deployCloudFormationExecutionDetails.tsx +2 -6
- package/src/pipeline/stages/deployCloudFormation/deployCloudFormationStackConfig.controller.ts +3 -9
- package/src/pipeline/stages/deployCloudFormation/deployCloudFormationStackStage.ts +2 -1
- package/src/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecution.service.ts +4 -3
- package/src/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecutionApproval.tsx +2 -1
- package/src/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecutionDetails.tsx +1 -1
- package/src/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecutionLabel.tsx +2 -2
- package/src/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecutionMarkerIcon.tsx +1 -1
- package/src/reactShims/aws.ngReact.ts +2 -2
- package/src/reactShims/aws.react.injector.ts +5 -4
- package/src/reactShims/aws.react.module.ts +0 -2
- package/src/reactShims/index.ts +0 -1
- package/src/securityGroup/configure/ingressRuleGroupSelector.component.ts +4 -3
- package/src/securityGroup/configure/securityGroupDetailsCustom.tsx +1 -1
- package/src/securityGroup/details/securityGroupDetail.controller.js +3 -0
- package/src/securityGroup/details/securityGroupDetail.html +1 -1
- package/src/securityGroup/securityGroup.reader.ts +1 -1
- package/src/serverGroup/configure/AmazonImageSelectInput.tsx +5 -3
- package/src/serverGroup/configure/serverGroupCommandBuilder.service.js +1 -1
- package/src/serverGroup/configure/serverGroupConfiguration.service.ts +9 -7
- package/src/serverGroup/configure/wizard/AmazonCloneServerGroupModal.tsx +3 -13
- package/src/serverGroup/configure/wizard/ServerGroupTemplateSelection.tsx +2 -7
- package/src/serverGroup/configure/wizard/capacity/CapacitySelector.tsx +5 -3
- package/src/serverGroup/configure/wizard/capacity/MinMaxDesired.tsx +2 -1
- package/src/serverGroup/configure/wizard/instanceType/CpuCreditsToggle.tsx +1 -1
- package/src/serverGroup/configure/wizard/pages/ServerGroupBasicSettings.tsx +5 -6
- package/src/serverGroup/configure/wizard/pages/ServerGroupCapacity.tsx +4 -3
- package/src/serverGroup/configure/wizard/pages/ServerGroupInstanceType.tsx +4 -3
- package/src/serverGroup/configure/wizard/pages/ServerGroupLoadBalancers.tsx +5 -4
- package/src/serverGroup/configure/wizard/pages/ServerGroupSecurityGroups.tsx +3 -3
- package/src/serverGroup/configure/wizard/pages/ServerGroupZones.tsx +3 -3
- package/src/serverGroup/configure/wizard/pages/advancedSettings/ServerGroupAdvancedSettings.tsx +3 -3
- package/src/serverGroup/configure/wizard/pages/advancedSettings/ServerGroupAdvancedSettingsCommon.tsx +4 -3
- package/src/serverGroup/configure/wizard/pages/advancedSettings/ServerGroupAdvancedSettingsInner.tsx +5 -4
- package/src/serverGroup/configure/wizard/securityGroups/SecurityGroupSelector.tsx +4 -10
- package/src/serverGroup/configure/wizard/securityGroups/ServerGroupSecurityGroupsRemoved.tsx +1 -1
- package/src/serverGroup/details/AmazonServerGroupActions.tsx +56 -56
- package/src/serverGroup/details/amazonServerGroupDetailsGetter.ts +3 -2
- package/src/serverGroup/details/resize/AmazonResizeServerGroupModal.tsx +4 -6
- package/src/serverGroup/details/scalingPolicy/CreateScalingPolicyButton.tsx +7 -4
- package/src/serverGroup/details/scalingPolicy/ScalingPolicySummary.tsx +25 -4
- package/src/serverGroup/details/scalingPolicy/ScalingPolicyWriter.ts +3 -2
- package/src/serverGroup/details/scalingPolicy/StepPolicySummary.less +10 -0
- package/src/serverGroup/details/scalingPolicy/StepPolicySummary.tsx +122 -0
- package/src/serverGroup/details/scalingPolicy/alarmBasedSummary.template.html +2 -2
- package/src/serverGroup/details/scalingPolicy/chart/DateLineChart.tsx +7 -5
- package/src/serverGroup/details/scalingPolicy/chart/MetricAlarmChart.tsx +6 -11
- package/src/serverGroup/details/scalingPolicy/detailsSummary.component.ts +4 -3
- package/src/serverGroup/details/scalingPolicy/index.ts +4 -0
- package/src/serverGroup/details/scalingPolicy/popover/AlarmSummary.tsx +16 -7
- package/src/serverGroup/details/scalingPolicy/popover/StepPolicyPopoverContent.tsx +90 -0
- package/src/serverGroup/details/scalingPolicy/popover/scalingPolicyPopover.component.ts +2 -1
- package/src/serverGroup/details/scalingPolicy/scalingPolicy.module.ts +4 -2
- package/src/serverGroup/details/scalingPolicy/scalingPolicySummary.component.ts +10 -0
- package/src/serverGroup/details/scalingPolicy/stepPolicySummary.component.ts +10 -0
- package/src/serverGroup/details/scalingPolicy/targetTracking/TargetMetricFields.tsx +19 -26
- package/src/serverGroup/details/scalingPolicy/targetTracking/TargetTrackingAdditionalSettings.tsx +1 -1
- package/src/serverGroup/details/scalingPolicy/targetTracking/TargetTrackingChart.tsx +3 -3
- package/src/serverGroup/details/scalingPolicy/targetTracking/TargetTrackingSummary.less +11 -0
- package/src/serverGroup/details/scalingPolicy/targetTracking/TargetTrackingSummary.tsx +117 -0
- package/src/serverGroup/details/scalingPolicy/targetTracking/UpsertTargetTrackingModal.tsx +4 -3
- package/src/serverGroup/details/scalingPolicy/targetTracking/targetTrackingSummary.component.ts +12 -83
- package/src/serverGroup/details/scalingPolicy/upsert/ScalingPolicyAdditionalSettings.tsx +10 -12
- package/src/serverGroup/details/scalingPolicy/upsert/ScalingPolicyCommandBuilderService.ts +2 -2
- package/src/serverGroup/details/scalingPolicy/upsert/UpsertScalingPolicyModal.tsx +6 -4
- package/src/serverGroup/details/scalingPolicy/upsert/alarm/AlarmConfigurer.tsx +16 -18
- package/src/serverGroup/details/scalingPolicy/upsert/alarm/DimensionsEditor.tsx +14 -20
- package/src/serverGroup/details/scalingPolicy/upsert/alarm/MetricSelector.tsx +26 -50
- package/src/serverGroup/details/scalingPolicy/upsert/index.ts +1 -0
- package/src/serverGroup/details/scalingPolicy/upsert/simple/SimplePolicyAction.tsx +3 -5
- package/src/serverGroup/details/scalingPolicy/upsert/step/StepPolicyAction.tsx +8 -18
- package/src/serverGroup/details/scalingProcesses/AutoScalingProcessService.ts +1 -1
- package/src/serverGroup/details/scheduledAction/ScheduledAction.tsx +1 -1
- package/src/serverGroup/details/sections/AdvancedSettingsDetailsSection.tsx +7 -5
- package/src/serverGroup/details/sections/AmazonCapacityDetailsSection.tsx +8 -5
- package/src/serverGroup/details/sections/AmazonInfoDetailsSection.tsx +4 -12
- package/src/serverGroup/details/sections/HealthDetailsSection.tsx +1 -1
- package/src/serverGroup/details/sections/IAmazonServerGroupDetailsSectionProps.ts +2 -2
- package/src/serverGroup/details/sections/InstancesDistributionDetailsSection.tsx +1 -1
- package/src/serverGroup/details/sections/LaunchConfigDetailsSection.tsx +2 -2
- package/src/serverGroup/details/sections/LaunchTemplateDetailsSection.tsx +1 -1
- package/src/serverGroup/details/sections/LogsDetailsSection.tsx +1 -1
- package/src/serverGroup/details/sections/MultipleInstanceTypesSubSection.tsx +1 -1
- package/src/serverGroup/details/sections/PackageDetailsSection.tsx +1 -1
- package/src/serverGroup/details/sections/ScalingPoliciesDetailsSection.tsx +10 -7
- package/src/serverGroup/details/sections/ScalingProcessesDetailsSection.tsx +16 -6
- package/src/serverGroup/details/sections/ScheduledActionsDetailsSection.tsx +8 -6
- package/src/serverGroup/details/sections/SecurityGroupsDetailsSection.tsx +4 -10
- package/src/serverGroup/details/sections/TagsDetailsSection.tsx +1 -1
- package/src/serverGroup/serverGroup.transformer.ts +2 -2
- package/src/subnet/SubnetSelectField.tsx +2 -1
- package/src/subnet/SubnetSelectInput.tsx +4 -12
- package/src/subnet/subnet.renderer.ts +1 -1
- package/src/validation/ApplicationNameValidator.ts +2 -1
- package/src/vpc/VpcReader.ts +2 -1
- package/src/serverGroup/details/scalingPolicy/targetTracking/targetTrackingPopover.html +0 -5
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { FormikProps } from 'formik';
|
|
2
|
+
import { Field } from 'formik';
|
|
2
3
|
import React from 'react';
|
|
3
4
|
|
|
4
|
-
import { IServerGroupCommand, IWizardPageComponent } from '@spinnaker/core';
|
|
5
|
+
import type { IServerGroupCommand, IWizardPageComponent } from '@spinnaker/core';
|
|
5
6
|
|
|
6
7
|
import { CapacitySelector } from '../capacity/CapacitySelector';
|
|
7
8
|
import { MinMaxDesired } from '../capacity/MinMaxDesired';
|
|
8
|
-
import { IAmazonServerGroupCommand } from '../../serverGroupConfiguration.service';
|
|
9
|
+
import type { IAmazonServerGroupCommand } from '../../serverGroupConfiguration.service';
|
|
9
10
|
|
|
10
11
|
export interface IServerGroupCapacityProps {
|
|
11
12
|
formik: FormikProps<IServerGroupCommand>;
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import { FormikErrors, FormikProps } from 'formik';
|
|
1
|
+
import type { FormikErrors, FormikProps } from 'formik';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
|
|
4
|
-
import { IWizardPageComponent
|
|
4
|
+
import type { IWizardPageComponent } from '@spinnaker/core';
|
|
5
|
+
import { NgReact } from '@spinnaker/core';
|
|
5
6
|
import { AWSProviderSettings } from '../../../../aws.settings';
|
|
6
7
|
|
|
7
8
|
import { CpuCreditsToggle } from '../instanceType/CpuCreditsToggle';
|
|
8
|
-
import { IAmazonServerGroupCommand } from '../../serverGroupConfiguration.service';
|
|
9
|
+
import type { IAmazonServerGroupCommand } from '../../serverGroupConfiguration.service';
|
|
9
10
|
|
|
10
11
|
export interface IServerGroupInstanceTypeProps {
|
|
11
12
|
formik: FormikProps<IAmazonServerGroupCommand>;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { FormikProps } from 'formik';
|
|
1
|
+
import type { FormikProps } from 'formik';
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import { Option } from 'react-select';
|
|
3
|
+
import type { Option } from 'react-select';
|
|
4
4
|
|
|
5
|
-
import {
|
|
5
|
+
import type { IWizardPageComponent } from '@spinnaker/core';
|
|
6
|
+
import { HelpField, ReactInjector, TetheredSelect } from '@spinnaker/core';
|
|
6
7
|
|
|
7
|
-
import { IAmazonServerGroupCommand } from '../../serverGroupConfiguration.service';
|
|
8
|
+
import type { IAmazonServerGroupCommand } from '../../serverGroupConfiguration.service';
|
|
8
9
|
|
|
9
10
|
export interface IServerGroupLoadBalancersProps {
|
|
10
11
|
hideLoadBalancers?: boolean;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { FormikProps } from 'formik';
|
|
1
|
+
import type { FormikProps } from 'formik';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
|
|
4
|
-
import { IWizardPageComponent } from '@spinnaker/core';
|
|
4
|
+
import type { IWizardPageComponent } from '@spinnaker/core';
|
|
5
5
|
|
|
6
6
|
import { SecurityGroupSelector } from '../securityGroups/SecurityGroupSelector';
|
|
7
7
|
import { ServerGroupSecurityGroupsRemoved } from '../securityGroups/ServerGroupSecurityGroupsRemoved';
|
|
8
|
-
import { IAmazonServerGroupCommand } from '../../serverGroupConfiguration.service';
|
|
8
|
+
import type { IAmazonServerGroupCommand } from '../../serverGroupConfiguration.service';
|
|
9
9
|
|
|
10
10
|
export interface IServerGroupSecurityGroupsProps {
|
|
11
11
|
formik: FormikProps<IAmazonServerGroupCommand>;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { FormikProps } from 'formik';
|
|
1
|
+
import type { FormikProps } from 'formik';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
|
|
4
|
-
import { IWizardPageComponent } from '@spinnaker/core';
|
|
4
|
+
import type { IWizardPageComponent } from '@spinnaker/core';
|
|
5
5
|
|
|
6
6
|
import { AvailabilityZoneSelector } from '../../../AvailabilityZoneSelector';
|
|
7
|
-
import { IAmazonServerGroupCommand } from '../../serverGroupConfiguration.service';
|
|
7
|
+
import type { IAmazonServerGroupCommand } from '../../serverGroupConfiguration.service';
|
|
8
8
|
|
|
9
9
|
export interface IServerGroupZonesProps {
|
|
10
10
|
formik: FormikProps<IAmazonServerGroupCommand>;
|
package/src/serverGroup/configure/wizard/pages/advancedSettings/ServerGroupAdvancedSettings.tsx
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { FormikProps } from 'formik';
|
|
1
|
+
import type { FormikProps } from 'formik';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
|
|
4
|
-
import { Application, IWizardPageComponent } from '@spinnaker/core';
|
|
4
|
+
import type { Application, IWizardPageComponent } from '@spinnaker/core';
|
|
5
5
|
|
|
6
6
|
import { ServerGroupAdvancedSettingsInner } from './ServerGroupAdvancedSettingsInner';
|
|
7
|
-
import { IAmazonServerGroupCommand } from '../../../serverGroupConfiguration.service';
|
|
7
|
+
import type { IAmazonServerGroupCommand } from '../../../serverGroupConfiguration.service';
|
|
8
8
|
|
|
9
9
|
export interface IServerGroupAdvancedSettingsProps {
|
|
10
10
|
app: Application;
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { Field } 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
6
|
import { HelpField, MapEditor, PlatformHealthOverride } from '@spinnaker/core';
|
|
6
7
|
|
|
7
|
-
import { IServerGroupAdvancedSettingsProps } from './ServerGroupAdvancedSettings';
|
|
8
|
+
import type { IServerGroupAdvancedSettingsProps } from './ServerGroupAdvancedSettings';
|
|
8
9
|
import { AWSProviderSettings } from '../../../../../aws.settings';
|
|
9
|
-
import { IAmazonServerGroupCommand } from '../../../serverGroupConfiguration.service';
|
|
10
|
+
import type { IAmazonServerGroupCommand } from '../../../serverGroupConfiguration.service';
|
|
10
11
|
|
|
11
12
|
export class ServerGroupAdvancedSettingsCommon extends React.Component<IServerGroupAdvancedSettingsProps> {
|
|
12
13
|
private duplicateKeys = false;
|
package/src/serverGroup/configure/wizard/pages/advancedSettings/ServerGroupAdvancedSettingsInner.tsx
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import { FormikErrors } from 'formik';
|
|
1
|
+
import type { FormikErrors } from 'formik';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
|
|
4
|
-
import { IWizardPageComponent
|
|
4
|
+
import type { IWizardPageComponent } from '@spinnaker/core';
|
|
5
|
+
import { Overridable } from '@spinnaker/core';
|
|
5
6
|
|
|
6
|
-
import { IServerGroupAdvancedSettingsProps } from './ServerGroupAdvancedSettings';
|
|
7
|
+
import type { IServerGroupAdvancedSettingsProps } from './ServerGroupAdvancedSettings';
|
|
7
8
|
import { ServerGroupAdvancedSettingsCommon } from './ServerGroupAdvancedSettingsCommon';
|
|
8
|
-
import { IAmazonServerGroupCommand } from '../../../serverGroupConfiguration.service';
|
|
9
|
+
import type { IAmazonServerGroupCommand } from '../../../serverGroupConfiguration.service';
|
|
9
10
|
|
|
10
11
|
@Overridable('aws.serverGroup.advancedSettings')
|
|
11
12
|
export class ServerGroupAdvancedSettingsInner
|
|
@@ -1,17 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { Option } from 'react-select';
|
|
2
|
+
import type { Option } from 'react-select';
|
|
3
3
|
import VirtualizedSelect from 'react-virtualized-select';
|
|
4
4
|
|
|
5
|
-
import {
|
|
6
|
-
|
|
7
|
-
HelpField,
|
|
8
|
-
InfrastructureCaches,
|
|
9
|
-
ISecurityGroup,
|
|
10
|
-
ReactInjector,
|
|
11
|
-
timestamp,
|
|
12
|
-
} from '@spinnaker/core';
|
|
5
|
+
import type { ISecurityGroup } from '@spinnaker/core';
|
|
6
|
+
import { FirewallLabels, HelpField, InfrastructureCaches, ReactInjector, timestamp } from '@spinnaker/core';
|
|
13
7
|
|
|
14
|
-
import { IAmazonServerGroupCommand } from '../../serverGroupConfiguration.service';
|
|
8
|
+
import type { IAmazonServerGroupCommand } from '../../serverGroupConfiguration.service';
|
|
15
9
|
|
|
16
10
|
export interface ISecurityGroupSelectorProps {
|
|
17
11
|
command: IAmazonServerGroupCommand;
|
package/src/serverGroup/configure/wizard/securityGroups/ServerGroupSecurityGroupsRemoved.tsx
CHANGED
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
|
|
3
3
|
import { FirewallLabels, noop } from '@spinnaker/core';
|
|
4
4
|
|
|
5
|
-
import { IAmazonServerGroupCommand } from '../../serverGroupConfiguration.service';
|
|
5
|
+
import type { IAmazonServerGroupCommand } from '../../serverGroupConfiguration.service';
|
|
6
6
|
|
|
7
7
|
export interface IServerGroupSecurityGroupsRemovedProps {
|
|
8
8
|
command?: IAmazonServerGroupCommand;
|
|
@@ -2,13 +2,11 @@ import { filter, find, get, orderBy } from 'lodash';
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { Dropdown, MenuItem, Tooltip } from 'react-bootstrap';
|
|
4
4
|
|
|
5
|
+
import type { IOwnerOption, IServerGroupActionsProps, IServerGroupJob } from '@spinnaker/core';
|
|
5
6
|
import {
|
|
6
7
|
AddEntityTagLinks,
|
|
7
8
|
ClusterTargetBuilder,
|
|
8
9
|
ConfirmationModalService,
|
|
9
|
-
IOwnerOption,
|
|
10
|
-
IServerGroupActionsProps,
|
|
11
|
-
IServerGroupJob,
|
|
12
10
|
ManagedMenuItem,
|
|
13
11
|
ModalInjector,
|
|
14
12
|
Overridable,
|
|
@@ -17,14 +15,12 @@ import {
|
|
|
17
15
|
SETTINGS,
|
|
18
16
|
} from '@spinnaker/core';
|
|
19
17
|
|
|
20
|
-
import { IAmazonServerGroupCommand } from '../configure';
|
|
18
|
+
import type { IAmazonServerGroupCommand } from '../configure';
|
|
21
19
|
import { AmazonCloneServerGroupModal } from '../configure/wizard/AmazonCloneServerGroupModal';
|
|
22
|
-
import { IAmazonServerGroup, IAmazonServerGroupView } from '../../domain';
|
|
20
|
+
import type { IAmazonServerGroup, IAmazonServerGroupView } from '../../domain';
|
|
23
21
|
import { AwsReactInjector } from '../../reactShims';
|
|
24
|
-
import {
|
|
25
|
-
|
|
26
|
-
IAmazonResizeServerGroupModalProps,
|
|
27
|
-
} from './resize/AmazonResizeServerGroupModal';
|
|
22
|
+
import type { IAmazonResizeServerGroupModalProps } from './resize/AmazonResizeServerGroupModal';
|
|
23
|
+
import { AmazonResizeServerGroupModal } from './resize/AmazonResizeServerGroupModal';
|
|
28
24
|
|
|
29
25
|
export interface IAmazonServerGroupActionsProps extends IServerGroupActionsProps {
|
|
30
26
|
serverGroup: IAmazonServerGroupView;
|
|
@@ -289,54 +285,58 @@ export class AmazonServerGroupActions extends React.Component<IAmazonServerGroup
|
|
|
289
285
|
const entityTagTargets: IOwnerOption[] = ClusterTargetBuilder.buildClusterTargets(serverGroup);
|
|
290
286
|
|
|
291
287
|
return (
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
<
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
<
|
|
316
|
-
<
|
|
288
|
+
<>
|
|
289
|
+
{SETTINGS.awsAdHocInfraWritesEnabled && (
|
|
290
|
+
<Dropdown className="dropdown" id="server-group-actions-dropdown">
|
|
291
|
+
<Dropdown.Toggle className="btn btn-sm btn-primary dropdown-toggle">Server Group Actions</Dropdown.Toggle>
|
|
292
|
+
<Dropdown.Menu className="dropdown-menu">
|
|
293
|
+
{this.isRollbackEnabled() && (
|
|
294
|
+
<ManagedMenuItem resource={serverGroup} application={app} onClick={this.rollbackServerGroup}>
|
|
295
|
+
Rollback
|
|
296
|
+
</ManagedMenuItem>
|
|
297
|
+
)}
|
|
298
|
+
{this.isRollbackEnabled() && <li role="presentation" className="divider" />}
|
|
299
|
+
<AmazonServerGroupActionsResize application={app} serverGroup={serverGroup} />
|
|
300
|
+
{!serverGroup.isDisabled && (
|
|
301
|
+
<ManagedMenuItem resource={serverGroup} application={app} onClick={this.disableServerGroup}>
|
|
302
|
+
Disable
|
|
303
|
+
</ManagedMenuItem>
|
|
304
|
+
)}
|
|
305
|
+
{this.hasDisabledInstances() && !this.isEnableLocked() && (
|
|
306
|
+
<ManagedMenuItem resource={serverGroup} application={app} onClick={this.enableServerGroup}>
|
|
307
|
+
Enable
|
|
308
|
+
</ManagedMenuItem>
|
|
309
|
+
)}
|
|
310
|
+
{this.isEnableLocked() && (
|
|
311
|
+
<li className="disabled">
|
|
312
|
+
<Tooltip value="Cannot enable this server group until resize operation completes" placement="left">
|
|
313
|
+
<a>
|
|
314
|
+
<span className="small glyphicon glyphicon-lock" /> Enable
|
|
315
|
+
</a>
|
|
316
|
+
</Tooltip>
|
|
317
|
+
</li>
|
|
318
|
+
)}
|
|
319
|
+
<ManagedMenuItem resource={serverGroup} application={app} onClick={this.destroyServerGroup}>
|
|
320
|
+
Destroy
|
|
321
|
+
</ManagedMenuItem>
|
|
322
|
+
<li>
|
|
323
|
+
<a className="clickable" onClick={this.cloneServerGroup}>
|
|
324
|
+
Clone
|
|
317
325
|
</a>
|
|
318
|
-
</
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
application={app}
|
|
333
|
-
entityType="serverGroup"
|
|
334
|
-
ownerOptions={entityTagTargets}
|
|
335
|
-
onUpdate={() => app.serverGroups.refresh()}
|
|
336
|
-
/>
|
|
337
|
-
)}
|
|
338
|
-
</Dropdown.Menu>
|
|
339
|
-
</Dropdown>
|
|
326
|
+
</li>
|
|
327
|
+
{showEntityTags && (
|
|
328
|
+
<AddEntityTagLinks
|
|
329
|
+
component={serverGroup}
|
|
330
|
+
application={app}
|
|
331
|
+
entityType="serverGroup"
|
|
332
|
+
ownerOptions={entityTagTargets}
|
|
333
|
+
onUpdate={() => app.serverGroups.refresh()}
|
|
334
|
+
/>
|
|
335
|
+
)}
|
|
336
|
+
</Dropdown.Menu>
|
|
337
|
+
</Dropdown>
|
|
338
|
+
)}
|
|
339
|
+
</>
|
|
340
340
|
);
|
|
341
341
|
}
|
|
342
342
|
}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { isEmpty } from 'lodash';
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
3
|
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
4
|
+
import type { IServerGroupDetailsProps, ISubnet } from '@spinnaker/core';
|
|
5
|
+
import { AccountService, ServerGroupReader, SubnetReader } from '@spinnaker/core';
|
|
6
|
+
import type { IAmazonLoadBalancer, IAmazonServerGroup, IAmazonServerGroupView } from '../../domain';
|
|
6
7
|
import { AwsReactInjector } from '../../reactShims';
|
|
7
8
|
|
|
8
9
|
import { AutoScalingProcessService } from './scalingProcesses/AutoScalingProcessService';
|
|
@@ -1,17 +1,15 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { Formik, FormikErrors, FormikProps } from 'formik';
|
|
2
|
+
import { Form } from 'formik';
|
|
2
3
|
import { pickBy } from 'lodash';
|
|
3
4
|
import React from 'react';
|
|
4
5
|
import { Modal } from 'react-bootstrap';
|
|
5
6
|
|
|
7
|
+
import type { Application, ICapacity, IModalComponentProps, IServerGroupJob } from '@spinnaker/core';
|
|
6
8
|
import {
|
|
7
|
-
Application,
|
|
8
9
|
CheckboxInput,
|
|
9
10
|
confirmNotManaged,
|
|
10
11
|
FormikFormField,
|
|
11
12
|
HelpField,
|
|
12
|
-
ICapacity,
|
|
13
|
-
IModalComponentProps,
|
|
14
|
-
IServerGroupJob,
|
|
15
13
|
MinMaxDesiredChanges,
|
|
16
14
|
ModalClose,
|
|
17
15
|
noop,
|
|
@@ -26,7 +24,7 @@ import {
|
|
|
26
24
|
ValidationMessage,
|
|
27
25
|
} from '@spinnaker/core';
|
|
28
26
|
import { AwsModalFooter } from '../../../common';
|
|
29
|
-
import { IAmazonServerGroup } from '../../../domain';
|
|
27
|
+
import type { IAmazonServerGroup } from '../../../domain';
|
|
30
28
|
|
|
31
29
|
export interface IAmazonResizeServerGroupModalProps extends IModalComponentProps {
|
|
32
30
|
application: Application;
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
|
|
3
|
-
import { Application
|
|
4
|
-
import {
|
|
3
|
+
import type { Application } from '@spinnaker/core';
|
|
4
|
+
import { ReactModal } from '@spinnaker/core';
|
|
5
|
+
import type { IAmazonServerGroupView } from '../../../domain';
|
|
5
6
|
import { AwsReactInjector } from '../../../reactShims';
|
|
6
7
|
|
|
7
|
-
import { IUpsertTargetTrackingModalProps
|
|
8
|
+
import type { IUpsertTargetTrackingModalProps } from './targetTracking/UpsertTargetTrackingModal';
|
|
9
|
+
import { UpsertTargetTrackingModal } from './targetTracking/UpsertTargetTrackingModal';
|
|
8
10
|
import { PolicyTypeSelectionModal } from './upsert/PolicyTypeSelectionModal';
|
|
9
|
-
import { IUpsertScalingPolicyModalProps
|
|
11
|
+
import type { IUpsertScalingPolicyModalProps } from './upsert/UpsertScalingPolicyModal';
|
|
12
|
+
import { UpsertScalingPolicyModal } from './upsert/UpsertScalingPolicyModal';
|
|
10
13
|
|
|
11
14
|
export interface ICreateScalingPolicyButtonProps {
|
|
12
15
|
application: Application;
|
|
@@ -1,8 +1,29 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
|
|
3
|
+
import type { Application, IServerGroup } from '@spinnaker/core';
|
|
4
|
+
|
|
5
|
+
import { StepPolicySummary } from './StepPolicySummary';
|
|
6
|
+
import type { IScalingPolicyView, ITargetTrackingPolicy } from '../../../domain';
|
|
7
|
+
import { TargetTrackingSummary } from './targetTracking/TargetTrackingSummary';
|
|
8
|
+
|
|
9
|
+
import './scalingPolicySummary.component.less';
|
|
3
10
|
|
|
4
11
|
export interface IScalingPolicySummaryProps {
|
|
5
|
-
policy: IScalingPolicy;
|
|
6
|
-
serverGroup: IServerGroup;
|
|
7
12
|
application: Application;
|
|
13
|
+
policy: IScalingPolicyView;
|
|
14
|
+
serverGroup: IServerGroup;
|
|
8
15
|
}
|
|
16
|
+
|
|
17
|
+
export const ScalingPolicySummary = ({ application, policy, serverGroup }: IScalingPolicySummaryProps) => {
|
|
18
|
+
if (policy.policyType === 'TargetTrackingScaling') {
|
|
19
|
+
return (
|
|
20
|
+
<TargetTrackingSummary
|
|
21
|
+
application={application}
|
|
22
|
+
policy={policy as ITargetTrackingPolicy}
|
|
23
|
+
serverGroup={serverGroup}
|
|
24
|
+
/>
|
|
25
|
+
);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
return <StepPolicySummary application={application} policy={policy} serverGroup={serverGroup} />;
|
|
29
|
+
};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { Application, IJob, IMetricAlarmDimension, IServerGroup, ITask
|
|
2
|
-
import {
|
|
1
|
+
import type { Application, IJob, IMetricAlarmDimension, IServerGroup, ITask } from '@spinnaker/core';
|
|
2
|
+
import { TaskExecutor } from '@spinnaker/core';
|
|
3
|
+
import type {
|
|
3
4
|
AlarmComparisonOperator,
|
|
4
5
|
AlarmStatisticType,
|
|
5
6
|
IScalingPolicy,
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
|
|
3
|
+
import {
|
|
4
|
+
CloudProviderRegistry,
|
|
5
|
+
ConfirmationModalService,
|
|
6
|
+
HoverablePopover,
|
|
7
|
+
ReactModal,
|
|
8
|
+
robotToHuman,
|
|
9
|
+
TaskExecutor,
|
|
10
|
+
} from '@spinnaker/core';
|
|
11
|
+
import type { Application, IServerGroup } from '@spinnaker/core';
|
|
12
|
+
|
|
13
|
+
import type { IAmazonServerGroup, IScalingPolicyView } from '../../../domain';
|
|
14
|
+
import { AlarmSummary } from './popover/AlarmSummary';
|
|
15
|
+
import { StepPolicyPopoverContent } from './popover/StepPolicyPopoverContent';
|
|
16
|
+
|
|
17
|
+
import './StepPolicySummary.less';
|
|
18
|
+
|
|
19
|
+
export interface IStepPolicySummaryProps {
|
|
20
|
+
application: Application;
|
|
21
|
+
policy: IScalingPolicyView;
|
|
22
|
+
serverGroup: IServerGroup;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
interface IDeletePolicyJob {
|
|
26
|
+
type: string;
|
|
27
|
+
cloudProvider: string;
|
|
28
|
+
credentials: string;
|
|
29
|
+
region: string;
|
|
30
|
+
policyName?: string;
|
|
31
|
+
scalingPolicyID?: string;
|
|
32
|
+
serverGroupName: string;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export const StepPolicySummary = ({ application, policy, serverGroup }: IStepPolicySummaryProps) => {
|
|
36
|
+
const provider = serverGroup.type || serverGroup.cloudProvider || 'aws';
|
|
37
|
+
const providerConfig = CloudProviderRegistry.getValue(provider, 'serverGroup');
|
|
38
|
+
const policyTitle = provider === 'aws' ? policy.policyName : policy.id;
|
|
39
|
+
|
|
40
|
+
const UpsertModalComponent = providerConfig.UpsertStepPolicyModal;
|
|
41
|
+
|
|
42
|
+
const editPolicy = () => {
|
|
43
|
+
const upsertProps = {
|
|
44
|
+
app: application,
|
|
45
|
+
policy,
|
|
46
|
+
serverGroup,
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
const modalProps = { dialogClassName: 'wizard-modal modal-lg' };
|
|
50
|
+
ReactModal.show<typeof UpsertModalComponent>(UpsertModalComponent, upsertProps, modalProps);
|
|
51
|
+
};
|
|
52
|
+
const deletePolicy = () => {
|
|
53
|
+
const taskMonitor = {
|
|
54
|
+
application,
|
|
55
|
+
title: `Deleting scaling policy ${policyTitle}`,
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
const jobToSubmit: IDeletePolicyJob = {
|
|
59
|
+
type: 'deleteScalingPolicy',
|
|
60
|
+
cloudProvider: provider,
|
|
61
|
+
credentials: serverGroup.account,
|
|
62
|
+
region: serverGroup.region,
|
|
63
|
+
scalingPolicyID: policy.id,
|
|
64
|
+
serverGroupName: serverGroup.name,
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
if (provider === 'aws') {
|
|
68
|
+
delete jobToSubmit.scalingPolicyID;
|
|
69
|
+
jobToSubmit.policyName = policy.policyName;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
ConfirmationModalService.confirm({
|
|
73
|
+
header: `Really delete ${policyTitle}?`,
|
|
74
|
+
buttonText: 'Delete scaling policy',
|
|
75
|
+
account: serverGroup.account,
|
|
76
|
+
taskMonitorConfig: taskMonitor,
|
|
77
|
+
submitMethod: () =>
|
|
78
|
+
TaskExecutor.executeTask({
|
|
79
|
+
application,
|
|
80
|
+
description: `Delete scaling policy ${policyTitle}`,
|
|
81
|
+
job: [jobToSubmit],
|
|
82
|
+
}),
|
|
83
|
+
});
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
if (!policy.alarms?.length) {
|
|
87
|
+
return <div>No alarms configured for this policy - it's safe to delete.</div>;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
return (
|
|
91
|
+
<div className="StepPolicySummary">
|
|
92
|
+
<div>
|
|
93
|
+
{policy.alarms.map((a) => (
|
|
94
|
+
<div key={`step-summary-${policy.policyName}`}>
|
|
95
|
+
<HoverablePopover
|
|
96
|
+
Component={() => (
|
|
97
|
+
<StepPolicyPopoverContent policy={policy} serverGroup={serverGroup as IAmazonServerGroup} />
|
|
98
|
+
)}
|
|
99
|
+
placement="left"
|
|
100
|
+
title={policy.policyName}
|
|
101
|
+
>
|
|
102
|
+
<div>
|
|
103
|
+
<div className="label label-default">{robotToHuman(policy.policyType).toUpperCase()}</div>
|
|
104
|
+
<AlarmSummary alarm={a} />
|
|
105
|
+
</div>
|
|
106
|
+
</HoverablePopover>
|
|
107
|
+
<div className="actions">
|
|
108
|
+
<button className="btn btn-xs btn-link" onClick={editPolicy}>
|
|
109
|
+
<span className="glyphicon glyphicon-cog"></span>
|
|
110
|
+
<span className="sr-only">Edit policy</span>
|
|
111
|
+
</button>
|
|
112
|
+
<button className="btn btn-xs btn-link" onClick={deletePolicy}>
|
|
113
|
+
<span className="glyphicon glyphicon-trash"></span>
|
|
114
|
+
<span className="sr-only">Delete policy</span>
|
|
115
|
+
</button>
|
|
116
|
+
</div>
|
|
117
|
+
</div>
|
|
118
|
+
))}
|
|
119
|
+
</div>
|
|
120
|
+
</div>
|
|
121
|
+
);
|
|
122
|
+
};
|
|
@@ -1,20 +1,22 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type {
|
|
2
2
|
CartesianScaleOptions,
|
|
3
|
-
Chart,
|
|
4
3
|
ChartConfiguration,
|
|
5
4
|
ChartDataset,
|
|
5
|
+
LinearScaleOptions,
|
|
6
|
+
TimeScaleOptions,
|
|
7
|
+
TooltipItem,
|
|
8
|
+
} from 'chart.js';
|
|
9
|
+
import {
|
|
10
|
+
Chart,
|
|
6
11
|
Filler,
|
|
7
12
|
Legend,
|
|
8
13
|
LinearScale,
|
|
9
|
-
LinearScaleOptions,
|
|
10
14
|
LineController,
|
|
11
15
|
LineElement,
|
|
12
16
|
PointElement,
|
|
13
17
|
TimeScale,
|
|
14
|
-
TimeScaleOptions,
|
|
15
18
|
Title,
|
|
16
19
|
Tooltip,
|
|
17
|
-
TooltipItem,
|
|
18
20
|
} from 'chart.js';
|
|
19
21
|
import 'chartjs-adapter-luxon';
|
|
20
22
|
import * as React from 'react';
|
|
@@ -1,20 +1,15 @@
|
|
|
1
1
|
import { module } from 'angular';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import { react2angular } from 'react2angular';
|
|
4
|
-
import { Observable } from 'rxjs';
|
|
4
|
+
import type { Observable } from 'rxjs';
|
|
5
5
|
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
ICloudMetricStatistics,
|
|
9
|
-
Spinner,
|
|
10
|
-
useData,
|
|
11
|
-
useForceUpdate,
|
|
12
|
-
useObservable,
|
|
13
|
-
} from '@spinnaker/core';
|
|
6
|
+
import type { ICloudMetricStatistics } from '@spinnaker/core';
|
|
7
|
+
import { CloudMetricsReader, Spinner, useData, useForceUpdate, useObservable } from '@spinnaker/core';
|
|
14
8
|
import { withErrorBoundary } from '@spinnaker/core';
|
|
15
9
|
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
10
|
+
import type { IDateLine } from './DateLineChart';
|
|
11
|
+
import { DateLineChart } from './DateLineChart';
|
|
12
|
+
import type { IAmazonServerGroup, IScalingPolicyAlarm } from '../../../../domain';
|
|
18
13
|
|
|
19
14
|
interface IMetricAlarmChartProps {
|
|
20
15
|
serverGroup: IAmazonServerGroup;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { IComponentOptions, IController
|
|
1
|
+
import type { IComponentOptions, IController } from 'angular';
|
|
2
|
+
import { module } from 'angular';
|
|
2
3
|
|
|
3
|
-
import { Application, IServerGroup } from '@spinnaker/core';
|
|
4
|
+
import type { Application, IServerGroup } from '@spinnaker/core';
|
|
4
5
|
|
|
5
6
|
import { ScalingPolicyTypeRegistry } from './ScalingPolicyTypeRegistry';
|
|
6
|
-
import { IScalingPolicy } from '../../../domain';
|
|
7
|
+
import type { IScalingPolicy } from '../../../domain';
|
|
7
8
|
|
|
8
9
|
export class ScalingPolicyDetailsSummaryController implements IController {
|
|
9
10
|
public templateUrl: string;
|
|
@@ -3,7 +3,11 @@ export { MetricAlarmChart } from './chart/MetricAlarmChart';
|
|
|
3
3
|
export * from './ScalingPolicyTypeRegistry';
|
|
4
4
|
export * from './CreateScalingPolicyButton';
|
|
5
5
|
export * from './ScalingPolicyWriter';
|
|
6
|
+
export * from './StepPolicySummary';
|
|
7
|
+
export * from './ScalingPolicySummary';
|
|
6
8
|
export * from './targetTracking/TargetTrackingAdditionalSettings';
|
|
7
9
|
export * from './targetTracking/TargetMetricFields';
|
|
8
10
|
export * from './targetTracking/TargetTrackingChart';
|
|
11
|
+
export { UpsertTargetTrackingModal as AmazonUpsertTargetTrackingModal } from './targetTracking/UpsertTargetTrackingModal';
|
|
12
|
+
export * from './targetTracking/TargetTrackingSummary';
|
|
9
13
|
export * from './upsert';
|