@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.
Files changed (319) hide show
  1. package/CHANGELOG.md +62 -0
  2. package/dist/aws.settings.d.ts +1 -1
  3. package/dist/certificates/AmazonCertificateReader.d.ts +1 -1
  4. package/dist/deploymentStrategy/AdditionalFields.d.ts +2 -2
  5. package/dist/deploymentStrategy/rollingPush.strategy.d.ts +1 -1
  6. package/dist/domain/IAmazonCertificate.d.ts +1 -1
  7. package/dist/domain/IAmazonFunction.d.ts +1 -1
  8. package/dist/domain/IAmazonFunctionSourceData.d.ts +2 -1
  9. package/dist/domain/IAmazonHealth.d.ts +1 -1
  10. package/dist/domain/IAmazonInstance.d.ts +2 -2
  11. package/dist/domain/IAmazonLaunchTemplate.d.ts +1 -1
  12. package/dist/domain/IAmazonLoadBalancer.d.ts +4 -4
  13. package/dist/domain/IAmazonLoadBalancerSourceData.d.ts +3 -3
  14. package/dist/domain/IAmazonScalingPolicy.d.ts +3 -1
  15. package/dist/domain/IAmazonServerGroup.d.ts +5 -5
  16. package/dist/domain/IScalingPolicy.d.ts +1 -1
  17. package/dist/domain/ITargetTrackingPolicy.d.ts +1 -1
  18. package/dist/function/CreateLambdaFunction.d.ts +3 -2
  19. package/dist/function/configure/ExecutionRole.d.ts +4 -4
  20. package/dist/function/configure/FunctionBasicInformation.d.ts +4 -4
  21. package/dist/function/configure/FunctionDebugAndErrorHandling.d.ts +4 -4
  22. package/dist/function/configure/FunctionEnvironmentVariables.d.ts +4 -4
  23. package/dist/function/configure/FunctionSettings.d.ts +4 -4
  24. package/dist/function/configure/FunctionTags.d.ts +4 -4
  25. package/dist/function/configure/Network.d.ts +3 -3
  26. package/dist/function/details/AmazonFunctionDetails.d.ts +1 -1
  27. package/dist/function/details/FunctionActions.d.ts +3 -3
  28. package/dist/function/function.transformer.d.ts +2 -2
  29. package/dist/index.js +1 -1
  30. package/dist/index.js.map +1 -1
  31. package/dist/instance/amazon.instance.write.service.d.ts +3 -2
  32. package/dist/instance/details/AmazonInstanceInformation.d.ts +2 -1
  33. package/dist/instance/details/InstanceDns.d.ts +1 -0
  34. package/dist/instance/details/InstanceInformation.d.ts +1 -0
  35. package/dist/instance/details/InstanceSecurityGroups.d.ts +2 -1
  36. package/dist/instance/details/InstanceStatus.d.ts +2 -1
  37. package/dist/instance/details/InstanceTags.d.ts +1 -0
  38. package/dist/instance/details/utils.d.ts +1 -1
  39. package/dist/keyPairs/KeyPairsReader.d.ts +1 -1
  40. package/dist/loadBalancer/AmazonLoadBalancerClusterContainer.d.ts +1 -1
  41. package/dist/loadBalancer/AmazonLoadBalancersTag.d.ts +2 -2
  42. package/dist/loadBalancer/TargetGroup.d.ts +1 -1
  43. package/dist/loadBalancer/TargetGroupDetails.d.ts +1 -1
  44. package/dist/loadBalancer/amazonLoadBalancerDataUtils.d.ts +2 -2
  45. package/dist/loadBalancer/configure/AmazonLoadBalancerChoiceModal.d.ts +2 -2
  46. package/dist/loadBalancer/configure/LoadBalancerTypes.d.ts +2 -2
  47. package/dist/loadBalancer/configure/application/ALBListeners.d.ts +4 -4
  48. package/dist/loadBalancer/configure/application/ConfigureOidcConfigModal.d.ts +1 -1
  49. package/dist/loadBalancer/configure/application/ConfigureRedirectConfigModal.d.ts +1 -1
  50. package/dist/loadBalancer/configure/application/CreateApplicationLoadBalancer.d.ts +3 -2
  51. package/dist/loadBalancer/configure/application/TargetGroups.d.ts +3 -3
  52. package/dist/loadBalancer/configure/classic/AdvancedSettings.d.ts +2 -2
  53. package/dist/loadBalancer/configure/classic/CreateClassicLoadBalancer.d.ts +3 -2
  54. package/dist/loadBalancer/configure/classic/HealthCheck.d.ts +2 -2
  55. package/dist/loadBalancer/configure/classic/Listeners.d.ts +3 -3
  56. package/dist/loadBalancer/configure/common/AmazonCertificateSelectField.d.ts +2 -2
  57. package/dist/loadBalancer/configure/common/LoadBalancerLocation.d.ts +3 -3
  58. package/dist/loadBalancer/configure/common/SecurityGroups.d.ts +3 -3
  59. package/dist/loadBalancer/configure/common/targetGroupValidators.d.ts +2 -2
  60. package/dist/loadBalancer/configure/network/CertificateSelectors.d.ts +2 -1
  61. package/dist/loadBalancer/configure/network/CreateNetworkLoadBalancer.d.ts +3 -2
  62. package/dist/loadBalancer/configure/network/NLBListeners.d.ts +4 -4
  63. package/dist/loadBalancer/configure/network/TargetGroups.d.ts +3 -3
  64. package/dist/loadBalancer/details/LoadBalancerActions.d.ts +3 -3
  65. package/dist/loadBalancer/details/loadBalancerDetails.controller.d.ts +4 -4
  66. package/dist/loadBalancer/details/targetGroupDetails.controller.d.ts +4 -4
  67. package/dist/loadBalancer/loadBalancer.transformer.d.ts +2 -2
  68. package/dist/pipeline/stages/deployCloudFormation/CloudFormationChangeSetInfo.d.ts +2 -1
  69. package/dist/pipeline/stages/deployCloudFormation/deployCloudFormationExecutionDetails.d.ts +1 -1
  70. package/dist/pipeline/stages/deployCloudFormation/deployCloudFormationStackConfig.controller.d.ts +3 -2
  71. package/dist/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecution.service.d.ts +3 -3
  72. package/dist/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecutionApproval.d.ts +2 -1
  73. package/dist/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecutionDetails.d.ts +1 -1
  74. package/dist/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecutionLabel.d.ts +2 -2
  75. package/dist/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecutionMarkerIcon.d.ts +1 -1
  76. package/dist/reactShims/aws.ngReact.d.ts +2 -2
  77. package/dist/reactShims/aws.react.injector.d.ts +5 -4
  78. package/dist/reactShims/index.d.ts +0 -1
  79. package/dist/securityGroup/configure/securityGroupDetailsCustom.d.ts +1 -1
  80. package/dist/securityGroup/securityGroup.reader.d.ts +1 -1
  81. package/dist/serverGroup/configure/AmazonImageSelectInput.d.ts +2 -2
  82. package/dist/serverGroup/configure/serverGroupConfiguration.service.d.ts +2 -2
  83. package/dist/serverGroup/configure/wizard/AmazonCloneServerGroupModal.d.ts +3 -2
  84. package/dist/serverGroup/configure/wizard/ServerGroupTemplateSelection.d.ts +1 -1
  85. package/dist/serverGroup/configure/wizard/capacity/CapacitySelector.d.ts +2 -2
  86. package/dist/serverGroup/configure/wizard/capacity/MinMaxDesired.d.ts +1 -1
  87. package/dist/serverGroup/configure/wizard/instanceType/CpuCreditsToggle.d.ts +2 -1
  88. package/dist/serverGroup/configure/wizard/pages/ServerGroupBasicSettings.d.ts +4 -4
  89. package/dist/serverGroup/configure/wizard/pages/ServerGroupCapacity.d.ts +3 -3
  90. package/dist/serverGroup/configure/wizard/pages/ServerGroupInstanceType.d.ts +3 -3
  91. package/dist/serverGroup/configure/wizard/pages/ServerGroupLoadBalancers.d.ts +3 -3
  92. package/dist/serverGroup/configure/wizard/pages/ServerGroupSecurityGroups.d.ts +3 -3
  93. package/dist/serverGroup/configure/wizard/pages/ServerGroupZones.d.ts +3 -3
  94. package/dist/serverGroup/configure/wizard/pages/advancedSettings/ServerGroupAdvancedSettings.d.ts +3 -3
  95. package/dist/serverGroup/configure/wizard/pages/advancedSettings/ServerGroupAdvancedSettingsCommon.d.ts +2 -2
  96. package/dist/serverGroup/configure/wizard/pages/advancedSettings/ServerGroupAdvancedSettingsInner.d.ts +4 -4
  97. package/dist/serverGroup/configure/wizard/securityGroups/SecurityGroupSelector.d.ts +2 -2
  98. package/dist/serverGroup/configure/wizard/securityGroups/ServerGroupSecurityGroupsRemoved.d.ts +1 -1
  99. package/dist/serverGroup/details/AmazonServerGroupActions.d.ts +3 -3
  100. package/dist/serverGroup/details/amazonServerGroupDetailsGetter.d.ts +2 -2
  101. package/dist/serverGroup/details/resize/AmazonResizeServerGroupModal.d.ts +3 -2
  102. package/dist/serverGroup/details/scalingPolicy/CreateScalingPolicyButton.d.ts +2 -2
  103. package/dist/serverGroup/details/scalingPolicy/ScalingPolicySummary.d.ts +7 -4
  104. package/dist/serverGroup/details/scalingPolicy/ScalingPolicyWriter.d.ts +2 -2
  105. package/dist/serverGroup/details/scalingPolicy/StepPolicySummary.d.ts +10 -0
  106. package/dist/serverGroup/details/scalingPolicy/chart/DateLineChart.d.ts +2 -1
  107. package/dist/serverGroup/details/scalingPolicy/chart/MetricAlarmChart.d.ts +4 -3
  108. package/dist/serverGroup/details/scalingPolicy/detailsSummary.component.d.ts +3 -3
  109. package/dist/serverGroup/details/scalingPolicy/index.d.ts +4 -0
  110. package/dist/serverGroup/details/scalingPolicy/popover/AlarmSummary.d.ts +8 -1
  111. package/dist/serverGroup/details/scalingPolicy/popover/StepPolicyPopoverContent.d.ts +7 -0
  112. package/dist/serverGroup/details/scalingPolicy/scalingPolicySummary.component.d.ts +1 -0
  113. package/dist/serverGroup/details/scalingPolicy/stepPolicySummary.component.d.ts +1 -0
  114. package/dist/serverGroup/details/scalingPolicy/targetTracking/TargetMetricFields.d.ts +4 -4
  115. package/dist/serverGroup/details/scalingPolicy/targetTracking/TargetTrackingAdditionalSettings.d.ts +2 -1
  116. package/dist/serverGroup/details/scalingPolicy/targetTracking/TargetTrackingChart.d.ts +2 -1
  117. package/dist/serverGroup/details/scalingPolicy/targetTracking/TargetTrackingSummary.d.ts +10 -0
  118. package/dist/serverGroup/details/scalingPolicy/targetTracking/UpsertTargetTrackingModal.d.ts +3 -2
  119. package/dist/serverGroup/details/scalingPolicy/upsert/PolicyTypeSelectionModal.d.ts +1 -0
  120. package/dist/serverGroup/details/scalingPolicy/upsert/ScalingPolicyAdditionalSettings.d.ts +2 -1
  121. package/dist/serverGroup/details/scalingPolicy/upsert/ScalingPolicyCommandBuilderService.d.ts +2 -2
  122. package/dist/serverGroup/details/scalingPolicy/upsert/UpsertScalingPolicyModal.d.ts +3 -2
  123. package/dist/serverGroup/details/scalingPolicy/upsert/alarm/AlarmConfigurer.d.ts +6 -1
  124. package/dist/serverGroup/details/scalingPolicy/upsert/alarm/DimensionsEditor.d.ts +4 -3
  125. package/dist/serverGroup/details/scalingPolicy/upsert/alarm/MetricSelector.d.ts +3 -2
  126. package/dist/serverGroup/details/scalingPolicy/upsert/index.d.ts +1 -0
  127. package/dist/serverGroup/details/scalingPolicy/upsert/simple/SimplePolicyAction.d.ts +1 -0
  128. package/dist/serverGroup/details/scalingPolicy/upsert/step/StepPolicyAction.d.ts +2 -1
  129. package/dist/serverGroup/details/scalingProcesses/AutoScalingProcessService.d.ts +1 -1
  130. package/dist/serverGroup/details/scheduledAction/ScheduledAction.d.ts +1 -1
  131. package/dist/serverGroup/details/sections/AdvancedSettingsDetailsSection.d.ts +1 -1
  132. package/dist/serverGroup/details/sections/AmazonCapacityDetailsSection.d.ts +1 -1
  133. package/dist/serverGroup/details/sections/AmazonInfoDetailsSection.d.ts +2 -2
  134. package/dist/serverGroup/details/sections/HealthDetailsSection.d.ts +1 -1
  135. package/dist/serverGroup/details/sections/IAmazonServerGroupDetailsSectionProps.d.ts +2 -2
  136. package/dist/serverGroup/details/sections/InstancesDistributionDetailsSection.d.ts +2 -1
  137. package/dist/serverGroup/details/sections/LaunchConfigDetailsSection.d.ts +1 -1
  138. package/dist/serverGroup/details/sections/LaunchTemplateDetailsSection.d.ts +2 -1
  139. package/dist/serverGroup/details/sections/LogsDetailsSection.d.ts +1 -1
  140. package/dist/serverGroup/details/sections/MultipleInstanceTypesSubSection.d.ts +2 -1
  141. package/dist/serverGroup/details/sections/PackageDetailsSection.d.ts +1 -1
  142. package/dist/serverGroup/details/sections/ScalingPoliciesDetailsSection.d.ts +2 -2
  143. package/dist/serverGroup/details/sections/ScalingProcessesDetailsSection.d.ts +2 -2
  144. package/dist/serverGroup/details/sections/ScheduledActionsDetailsSection.d.ts +1 -1
  145. package/dist/serverGroup/details/sections/SecurityGroupsDetailsSection.d.ts +2 -2
  146. package/dist/serverGroup/details/sections/TagsDetailsSection.d.ts +1 -1
  147. package/dist/serverGroup/serverGroup.transformer.d.ts +1 -1
  148. package/dist/subnet/SubnetSelectField.d.ts +1 -1
  149. package/dist/subnet/SubnetSelectInput.d.ts +2 -2
  150. package/dist/subnet/subnet.renderer.d.ts +1 -1
  151. package/dist/vpc/VpcReader.d.ts +1 -1
  152. package/dist/vpc/VpcTag.d.ts +1 -0
  153. package/package.json +6 -6
  154. package/src/aws.module.ts +11 -1
  155. package/src/aws.settings.ts +2 -1
  156. package/src/certificates/AmazonCertificateReader.ts +1 -1
  157. package/src/common/AwsModalFooter.tsx +2 -1
  158. package/src/common/footer.component.ts +2 -1
  159. package/src/deploymentStrategy/AdditionalFields.tsx +3 -2
  160. package/src/deploymentStrategy/rollingPush.strategy.ts +2 -1
  161. package/src/domain/IAmazonCertificate.ts +1 -1
  162. package/src/domain/IAmazonFunction.ts +1 -1
  163. package/src/domain/IAmazonFunctionSourceData.ts +2 -1
  164. package/src/domain/IAmazonHealth.ts +1 -1
  165. package/src/domain/IAmazonInstance.ts +2 -2
  166. package/src/domain/IAmazonLaunchTemplate.ts +1 -1
  167. package/src/domain/IAmazonLoadBalancer.ts +4 -4
  168. package/src/domain/IAmazonLoadBalancerSourceData.ts +3 -3
  169. package/src/domain/IAmazonScalingPolicy.ts +3 -1
  170. package/src/domain/IAmazonServerGroup.ts +5 -5
  171. package/src/domain/IScalingPolicy.ts +1 -1
  172. package/src/domain/ITargetTrackingPolicy.ts +1 -1
  173. package/src/function/CreateLambdaFunction.tsx +3 -11
  174. package/src/function/configure/ExecutionRole.tsx +5 -4
  175. package/src/function/configure/FunctionBasicInformation.tsx +6 -8
  176. package/src/function/configure/FunctionDebugAndErrorHandling.tsx +5 -11
  177. package/src/function/configure/FunctionEnvironmentVariables.tsx +5 -11
  178. package/src/function/configure/FunctionSettings.tsx +5 -4
  179. package/src/function/configure/FunctionTags.tsx +5 -4
  180. package/src/function/configure/Network.tsx +8 -6
  181. package/src/function/details/AmazonFunctionDetails.tsx +30 -10
  182. package/src/function/details/FunctionActions.spec.tsx +24 -1
  183. package/src/function/details/FunctionActions.tsx +30 -28
  184. package/src/function/function.transformer.ts +2 -2
  185. package/src/instance/amazon.instance.write.service.ts +3 -9
  186. package/src/instance/details/AmazonInstanceInformation.tsx +1 -1
  187. package/src/instance/details/InstanceSecurityGroups.tsx +1 -1
  188. package/src/instance/details/InstanceStatus.tsx +1 -1
  189. package/src/instance/details/instance.details.controller.js +2 -0
  190. package/src/instance/details/instanceDetails.html +1 -1
  191. package/src/instance/details/utils.ts +6 -1
  192. package/src/keyPairs/KeyPairsReader.ts +1 -1
  193. package/src/loadBalancer/AmazonLoadBalancerClusterContainer.tsx +3 -2
  194. package/src/loadBalancer/AmazonLoadBalancersTag.tsx +2 -3
  195. package/src/loadBalancer/TargetGroup.tsx +1 -1
  196. package/src/loadBalancer/TargetGroupDetails.tsx +2 -1
  197. package/src/loadBalancer/amazonLoadBalancerDataUtils.ts +3 -2
  198. package/src/loadBalancer/configure/AmazonLoadBalancerChoiceModal.tsx +4 -10
  199. package/src/loadBalancer/configure/LoadBalancerTypes.ts +2 -2
  200. package/src/loadBalancer/configure/application/ALBListeners.tsx +9 -14
  201. package/src/loadBalancer/configure/application/ConfigureOidcConfigModal.tsx +3 -2
  202. package/src/loadBalancer/configure/application/ConfigureRedirectConfigModal.tsx +1 -1
  203. package/src/loadBalancer/configure/application/CreateApplicationLoadBalancer.tsx +2 -2
  204. package/src/loadBalancer/configure/application/TargetGroups.tsx +3 -4
  205. package/src/loadBalancer/configure/classic/AdvancedSettings.tsx +2 -2
  206. package/src/loadBalancer/configure/classic/CreateClassicLoadBalancer.tsx +3 -3
  207. package/src/loadBalancer/configure/classic/HealthCheck.tsx +2 -2
  208. package/src/loadBalancer/configure/classic/Listeners.tsx +3 -3
  209. package/src/loadBalancer/configure/common/AmazonCertificateSelectField.tsx +5 -3
  210. package/src/loadBalancer/configure/common/LoadBalancerLocation.tsx +6 -9
  211. package/src/loadBalancer/configure/common/SecurityGroups.tsx +4 -11
  212. package/src/loadBalancer/configure/common/targetGroupValidators.ts +2 -2
  213. package/src/loadBalancer/configure/network/CertificateSelectors.tsx +3 -2
  214. package/src/loadBalancer/configure/network/CreateNetworkLoadBalancer.tsx +3 -3
  215. package/src/loadBalancer/configure/network/NLBListeners.tsx +5 -4
  216. package/src/loadBalancer/configure/network/TargetGroups.tsx +3 -4
  217. package/src/loadBalancer/details/LoadBalancerActions.tsx +48 -46
  218. package/src/loadBalancer/details/loadBalancerDetails.controller.ts +10 -7
  219. package/src/loadBalancer/details/targetGroupDetails.controller.ts +6 -4
  220. package/src/loadBalancer/loadBalancer.transformer.ts +3 -11
  221. package/src/loadBalancer/targetGroup.states.ts +3 -2
  222. package/src/pipeline/stages/deployCloudFormation/CloudFormationChangeSetInfo.tsx +2 -9
  223. package/src/pipeline/stages/deployCloudFormation/cloudFormationTemplateEntry.component.ts +2 -1
  224. package/src/pipeline/stages/deployCloudFormation/deployCloudFormationExecutionDetails.tsx +2 -6
  225. package/src/pipeline/stages/deployCloudFormation/deployCloudFormationStackConfig.controller.ts +3 -9
  226. package/src/pipeline/stages/deployCloudFormation/deployCloudFormationStackStage.ts +2 -1
  227. package/src/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecution.service.ts +4 -3
  228. package/src/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecutionApproval.tsx +2 -1
  229. package/src/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecutionDetails.tsx +1 -1
  230. package/src/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecutionLabel.tsx +2 -2
  231. package/src/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecutionMarkerIcon.tsx +1 -1
  232. package/src/reactShims/aws.ngReact.ts +2 -2
  233. package/src/reactShims/aws.react.injector.ts +5 -4
  234. package/src/reactShims/aws.react.module.ts +0 -2
  235. package/src/reactShims/index.ts +0 -1
  236. package/src/securityGroup/configure/ingressRuleGroupSelector.component.ts +4 -3
  237. package/src/securityGroup/configure/securityGroupDetailsCustom.tsx +1 -1
  238. package/src/securityGroup/details/securityGroupDetail.controller.js +3 -0
  239. package/src/securityGroup/details/securityGroupDetail.html +1 -1
  240. package/src/securityGroup/securityGroup.reader.ts +1 -1
  241. package/src/serverGroup/configure/AmazonImageSelectInput.tsx +5 -3
  242. package/src/serverGroup/configure/serverGroupCommandBuilder.service.js +1 -1
  243. package/src/serverGroup/configure/serverGroupConfiguration.service.ts +9 -7
  244. package/src/serverGroup/configure/wizard/AmazonCloneServerGroupModal.tsx +3 -13
  245. package/src/serverGroup/configure/wizard/ServerGroupTemplateSelection.tsx +2 -7
  246. package/src/serverGroup/configure/wizard/capacity/CapacitySelector.tsx +5 -3
  247. package/src/serverGroup/configure/wizard/capacity/MinMaxDesired.tsx +2 -1
  248. package/src/serverGroup/configure/wizard/instanceType/CpuCreditsToggle.tsx +1 -1
  249. package/src/serverGroup/configure/wizard/pages/ServerGroupBasicSettings.tsx +5 -6
  250. package/src/serverGroup/configure/wizard/pages/ServerGroupCapacity.tsx +4 -3
  251. package/src/serverGroup/configure/wizard/pages/ServerGroupInstanceType.tsx +4 -3
  252. package/src/serverGroup/configure/wizard/pages/ServerGroupLoadBalancers.tsx +5 -4
  253. package/src/serverGroup/configure/wizard/pages/ServerGroupSecurityGroups.tsx +3 -3
  254. package/src/serverGroup/configure/wizard/pages/ServerGroupZones.tsx +3 -3
  255. package/src/serverGroup/configure/wizard/pages/advancedSettings/ServerGroupAdvancedSettings.tsx +3 -3
  256. package/src/serverGroup/configure/wizard/pages/advancedSettings/ServerGroupAdvancedSettingsCommon.tsx +4 -3
  257. package/src/serverGroup/configure/wizard/pages/advancedSettings/ServerGroupAdvancedSettingsInner.tsx +5 -4
  258. package/src/serverGroup/configure/wizard/securityGroups/SecurityGroupSelector.tsx +4 -10
  259. package/src/serverGroup/configure/wizard/securityGroups/ServerGroupSecurityGroupsRemoved.tsx +1 -1
  260. package/src/serverGroup/details/AmazonServerGroupActions.tsx +56 -56
  261. package/src/serverGroup/details/amazonServerGroupDetailsGetter.ts +3 -2
  262. package/src/serverGroup/details/resize/AmazonResizeServerGroupModal.tsx +4 -6
  263. package/src/serverGroup/details/scalingPolicy/CreateScalingPolicyButton.tsx +7 -4
  264. package/src/serverGroup/details/scalingPolicy/ScalingPolicySummary.tsx +25 -4
  265. package/src/serverGroup/details/scalingPolicy/ScalingPolicyWriter.ts +3 -2
  266. package/src/serverGroup/details/scalingPolicy/StepPolicySummary.less +10 -0
  267. package/src/serverGroup/details/scalingPolicy/StepPolicySummary.tsx +122 -0
  268. package/src/serverGroup/details/scalingPolicy/alarmBasedSummary.template.html +2 -2
  269. package/src/serverGroup/details/scalingPolicy/chart/DateLineChart.tsx +7 -5
  270. package/src/serverGroup/details/scalingPolicy/chart/MetricAlarmChart.tsx +6 -11
  271. package/src/serverGroup/details/scalingPolicy/detailsSummary.component.ts +4 -3
  272. package/src/serverGroup/details/scalingPolicy/index.ts +4 -0
  273. package/src/serverGroup/details/scalingPolicy/popover/AlarmSummary.tsx +16 -7
  274. package/src/serverGroup/details/scalingPolicy/popover/StepPolicyPopoverContent.tsx +90 -0
  275. package/src/serverGroup/details/scalingPolicy/popover/scalingPolicyPopover.component.ts +2 -1
  276. package/src/serverGroup/details/scalingPolicy/scalingPolicy.module.ts +4 -2
  277. package/src/serverGroup/details/scalingPolicy/scalingPolicySummary.component.ts +10 -0
  278. package/src/serverGroup/details/scalingPolicy/stepPolicySummary.component.ts +10 -0
  279. package/src/serverGroup/details/scalingPolicy/targetTracking/TargetMetricFields.tsx +19 -26
  280. package/src/serverGroup/details/scalingPolicy/targetTracking/TargetTrackingAdditionalSettings.tsx +1 -1
  281. package/src/serverGroup/details/scalingPolicy/targetTracking/TargetTrackingChart.tsx +3 -3
  282. package/src/serverGroup/details/scalingPolicy/targetTracking/TargetTrackingSummary.less +11 -0
  283. package/src/serverGroup/details/scalingPolicy/targetTracking/TargetTrackingSummary.tsx +117 -0
  284. package/src/serverGroup/details/scalingPolicy/targetTracking/UpsertTargetTrackingModal.tsx +4 -3
  285. package/src/serverGroup/details/scalingPolicy/targetTracking/targetTrackingSummary.component.ts +12 -83
  286. package/src/serverGroup/details/scalingPolicy/upsert/ScalingPolicyAdditionalSettings.tsx +10 -12
  287. package/src/serverGroup/details/scalingPolicy/upsert/ScalingPolicyCommandBuilderService.ts +2 -2
  288. package/src/serverGroup/details/scalingPolicy/upsert/UpsertScalingPolicyModal.tsx +6 -4
  289. package/src/serverGroup/details/scalingPolicy/upsert/alarm/AlarmConfigurer.tsx +16 -18
  290. package/src/serverGroup/details/scalingPolicy/upsert/alarm/DimensionsEditor.tsx +14 -20
  291. package/src/serverGroup/details/scalingPolicy/upsert/alarm/MetricSelector.tsx +26 -50
  292. package/src/serverGroup/details/scalingPolicy/upsert/index.ts +1 -0
  293. package/src/serverGroup/details/scalingPolicy/upsert/simple/SimplePolicyAction.tsx +3 -5
  294. package/src/serverGroup/details/scalingPolicy/upsert/step/StepPolicyAction.tsx +8 -18
  295. package/src/serverGroup/details/scalingProcesses/AutoScalingProcessService.ts +1 -1
  296. package/src/serverGroup/details/scheduledAction/ScheduledAction.tsx +1 -1
  297. package/src/serverGroup/details/sections/AdvancedSettingsDetailsSection.tsx +7 -5
  298. package/src/serverGroup/details/sections/AmazonCapacityDetailsSection.tsx +8 -5
  299. package/src/serverGroup/details/sections/AmazonInfoDetailsSection.tsx +4 -12
  300. package/src/serverGroup/details/sections/HealthDetailsSection.tsx +1 -1
  301. package/src/serverGroup/details/sections/IAmazonServerGroupDetailsSectionProps.ts +2 -2
  302. package/src/serverGroup/details/sections/InstancesDistributionDetailsSection.tsx +1 -1
  303. package/src/serverGroup/details/sections/LaunchConfigDetailsSection.tsx +2 -2
  304. package/src/serverGroup/details/sections/LaunchTemplateDetailsSection.tsx +1 -1
  305. package/src/serverGroup/details/sections/LogsDetailsSection.tsx +1 -1
  306. package/src/serverGroup/details/sections/MultipleInstanceTypesSubSection.tsx +1 -1
  307. package/src/serverGroup/details/sections/PackageDetailsSection.tsx +1 -1
  308. package/src/serverGroup/details/sections/ScalingPoliciesDetailsSection.tsx +10 -7
  309. package/src/serverGroup/details/sections/ScalingProcessesDetailsSection.tsx +16 -6
  310. package/src/serverGroup/details/sections/ScheduledActionsDetailsSection.tsx +8 -6
  311. package/src/serverGroup/details/sections/SecurityGroupsDetailsSection.tsx +4 -10
  312. package/src/serverGroup/details/sections/TagsDetailsSection.tsx +1 -1
  313. package/src/serverGroup/serverGroup.transformer.ts +2 -2
  314. package/src/subnet/SubnetSelectField.tsx +2 -1
  315. package/src/subnet/SubnetSelectInput.tsx +4 -12
  316. package/src/subnet/subnet.renderer.ts +1 -1
  317. package/src/validation/ApplicationNameValidator.ts +2 -1
  318. package/src/vpc/VpcReader.ts +2 -1
  319. package/src/serverGroup/details/scalingPolicy/targetTracking/targetTrackingPopover.html +0 -5
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  export interface IVpcTagProps {
2
3
  vpcId: string;
3
4
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@spinnaker/amazon",
3
3
  "license": "Apache-2.0",
4
- "version": "0.8.14",
4
+ "version": "0.11.0",
5
5
  "module": "dist/index.js",
6
6
  "typings": "dist/index.d.ts",
7
7
  "scripts": {
@@ -13,7 +13,7 @@
13
13
  "lib": "npm run build"
14
14
  },
15
15
  "dependencies": {
16
- "@spinnaker/core": "^0.11.7",
16
+ "@spinnaker/core": "^0.14.1",
17
17
  "@uirouter/angularjs": "1.0.26",
18
18
  "@uirouter/core": "6.0.8",
19
19
  "@uirouter/react": "1.0.7",
@@ -39,15 +39,15 @@
39
39
  "rxjs": "6.6.7"
40
40
  },
41
41
  "devDependencies": {
42
- "@spinnaker/eslint-plugin": "^1.1.1",
42
+ "@spinnaker/eslint-plugin": "^3.0.0",
43
43
  "@spinnaker/mocks": "1.0.7",
44
- "@spinnaker/scripts": "^0.2.0",
44
+ "@spinnaker/scripts": "^0.2.2",
45
45
  "@types/angular": "1.6.26",
46
46
  "@types/angular-ui-bootstrap": "0.13.41",
47
47
  "@types/classnames": "2.2.0",
48
48
  "@types/enzyme": "3.10.3",
49
49
  "@types/lodash": "4.14.64",
50
- "@types/react": "16.8.13",
50
+ "@types/react": "16.14.10",
51
51
  "@types/react-bootstrap": "0.32.5",
52
52
  "@types/react-select": "1.3.4",
53
53
  "@types/react-sortable-hoc": "0.6.2",
@@ -55,5 +55,5 @@
55
55
  "shx": "0.3.3",
56
56
  "typescript": "4.3.5"
57
57
  },
58
- "gitHead": "5b8914288d87ce58b67de4720ebc623b18a3be3e"
58
+ "gitHead": "b36e5fa30e23cd60007e6839b0dab5e41bd410d5"
59
59
  }
package/src/aws.module.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { module } from 'angular';
2
2
 
3
- import { CloudProviderRegistry, DeploymentStrategyRegistry } from '@spinnaker/core';
3
+ import { CloudProviderRegistry, DeploymentStrategyRegistry, SETTINGS } from '@spinnaker/core';
4
4
 
5
5
  import { COMMON_MODULE } from './common/common.module';
6
6
  import './deploymentStrategy/rollingPush.strategy';
@@ -47,6 +47,12 @@ import { AWS_SECURITY_GROUP_MODULE } from './securityGroup/securityGroup.module'
47
47
  import { AmazonCloneServerGroupModal } from './serverGroup/configure/wizard/AmazonCloneServerGroupModal';
48
48
  import { AmazonServerGroupActions } from './serverGroup/details/AmazonServerGroupActions';
49
49
  import { amazonServerGroupDetailsGetter } from './serverGroup/details/amazonServerGroupDetailsGetter';
50
+ import {
51
+ AmazonUpsertScalingPolicyModal,
52
+ AmazonUpsertTargetTrackingModal,
53
+ TargetTrackingChart,
54
+ } from './serverGroup/details/scalingPolicy';
55
+
50
56
  import {
51
57
  AdvancedSettingsDetailsSection,
52
58
  AmazonCapacityDetailsSection,
@@ -111,6 +117,7 @@ module(AMAZON_MODULE, [
111
117
  ]).config(() => {
112
118
  CloudProviderRegistry.registerProvider('aws', {
113
119
  name: 'Amazon',
120
+ adHocInfrastructureWritesEnabled: SETTINGS.awsAdHocInfraWritesEnabled,
114
121
  logo: {
115
122
  path: amazonLogo,
116
123
  },
@@ -141,6 +148,9 @@ module(AMAZON_MODULE, [
141
148
  commandBuilder: 'awsServerGroupCommandBuilder',
142
149
  configurationService: 'awsServerGroupConfigurationService',
143
150
  scalingActivitiesEnabled: true,
151
+ TargetTrackingChart,
152
+ UpsertStepPolicyModal: AmazonUpsertScalingPolicyModal,
153
+ UpsertTargetTrackingModal: AmazonUpsertTargetTrackingModal,
144
154
  },
145
155
  instance: {
146
156
  instanceTypeService: 'awsInstanceTypeService',
@@ -1,4 +1,5 @@
1
- import { IProviderSettings, SETTINGS } from '@spinnaker/core';
1
+ import type { IProviderSettings } from '@spinnaker/core';
2
+ import { SETTINGS } from '@spinnaker/core';
2
3
 
3
4
  export interface IClassicLaunchAllowlist {
4
5
  region: string;
@@ -1,7 +1,7 @@
1
1
  import { groupBy, sortBy } from 'lodash';
2
2
 
3
3
  import { AccountService, CertificateReader } from '@spinnaker/core';
4
- import { IAmazonCertificate } from '../domain';
4
+ import type { IAmazonCertificate } from '../domain';
5
5
 
6
6
  export class AmazonCertificateReader {
7
7
  public static listCertificates(): PromiseLike<{ [accountId: string]: IAmazonCertificate[] }> {
@@ -2,7 +2,8 @@ import React from 'react';
2
2
  import { ModalFooter } from 'react-bootstrap';
3
3
  import { map, take } from 'rxjs/operators';
4
4
 
5
- import { AccountService, IAccountDetails, UserVerification } from '@spinnaker/core';
5
+ import type { IAccountDetails } from '@spinnaker/core';
6
+ import { AccountService, UserVerification } from '@spinnaker/core';
6
7
 
7
8
  export interface IAwsModalFooterProps {
8
9
  account: string;
@@ -1,4 +1,5 @@
1
- import { IComponentOptions, module } from 'angular';
1
+ import type { IComponentOptions } from 'angular';
2
+ import { module } from 'angular';
2
3
 
3
4
  const footerComponent: IComponentOptions = {
4
5
  bindings: {
@@ -1,9 +1,10 @@
1
1
  import React from 'react';
2
2
 
3
- import { HelpField, IDeploymentStrategyAdditionalFieldsProps } from '@spinnaker/core';
3
+ import type { IDeploymentStrategyAdditionalFieldsProps } from '@spinnaker/core';
4
+ import { HelpField } from '@spinnaker/core';
4
5
 
5
6
  import { AWSProviderSettings } from '../aws.settings';
6
- import { IRollingPushCommand } from './rollingPush.strategy';
7
+ import type { IRollingPushCommand } from './rollingPush.strategy';
7
8
 
8
9
  export interface IRollingPushStrategyAdditionalFieldsProps extends IDeploymentStrategyAdditionalFieldsProps {
9
10
  command: IRollingPushCommand;
@@ -1,4 +1,5 @@
1
- import { DeploymentStrategyRegistry, IServerGroupCommand } from '@spinnaker/core';
1
+ import type { IServerGroupCommand } from '@spinnaker/core';
2
+ import { DeploymentStrategyRegistry } from '@spinnaker/core';
2
3
 
3
4
  import { AdditionalFields } from './AdditionalFields';
4
5
  import { AWSProviderSettings } from '../aws.settings';
@@ -1,4 +1,4 @@
1
- import { ICertificate } from '@spinnaker/core';
1
+ import type { ICertificate } from '@spinnaker/core';
2
2
 
3
3
  export interface IAmazonCertificate extends ICertificate {
4
4
  arn: string;
@@ -1,4 +1,4 @@
1
- import { IFunction, IFunctionDeleteCommand, IFunctionUpsertCommand } from '@spinnaker/core';
1
+ import type { IFunction, IFunctionDeleteCommand, IFunctionUpsertCommand } from '@spinnaker/core';
2
2
 
3
3
  export interface IAmazonFunction extends IFunction {
4
4
  credentials?: string;
@@ -1,4 +1,4 @@
1
- import { IFunctionSourceData } from '@spinnaker/core';
1
+ import type { IFunctionSourceData } from '@spinnaker/core';
2
2
 
3
3
  export interface IAmazonFunctionSourceData extends IFunctionSourceData {
4
4
  account: string;
@@ -10,6 +10,7 @@ export interface IAmazonFunctionSourceData extends IFunctionSourceData {
10
10
  publish: boolean;
11
11
  description: string;
12
12
  eventSourceMappings: string[];
13
+ aliasConfigurations: string[];
13
14
  functionArn: string;
14
15
  handler: string;
15
16
  layers: string;
@@ -1,4 +1,4 @@
1
- import { IHealth, ILoadBalancerHealth } from '@spinnaker/core';
1
+ import type { IHealth, ILoadBalancerHealth } from '@spinnaker/core';
2
2
 
3
3
  export interface IAmazonHealth extends IHealth {
4
4
  targetGroups: IAmazonTargetGroupHealth[];
@@ -1,5 +1,5 @@
1
- import { IInstance } from '@spinnaker/core';
2
- import { IAmazonSecurityGroup } from './IAmazonSecurityGroup';
1
+ import type { IInstance } from '@spinnaker/core';
2
+ import type { IAmazonSecurityGroup } from './IAmazonSecurityGroup';
3
3
 
4
4
  interface IInstancePlacement {
5
5
  containerIp: string;
@@ -1,4 +1,4 @@
1
- import { IBlockDeviceMapping } from './IAmazonBlockDeviceMapping';
1
+ import type { IBlockDeviceMapping } from './IAmazonBlockDeviceMapping';
2
2
 
3
3
  export interface IIamInstanceProfile {
4
4
  arn?: string;
@@ -1,4 +1,4 @@
1
- import {
1
+ import type {
2
2
  IInstance,
3
3
  IInstanceCounts,
4
4
  ILoadBalancer,
@@ -7,9 +7,9 @@ import {
7
7
  ISubnet,
8
8
  } from '@spinnaker/core';
9
9
 
10
- import { IAmazonLoadBalancerSourceData } from './IAmazonLoadBalancerSourceData';
11
- import { IAmazonServerGroup } from './IAmazonServerGroup';
12
- import { IAuthenticateOidcActionConfig } from '../loadBalancer/OidcConfigReader';
10
+ import type { IAmazonLoadBalancerSourceData } from './IAmazonLoadBalancerSourceData';
11
+ import type { IAmazonServerGroup } from './IAmazonServerGroup';
12
+ import type { IAuthenticateOidcActionConfig } from '../loadBalancer/OidcConfigReader';
13
13
 
14
14
  export type ClassicListenerProtocol = 'HTTP' | 'HTTPS' | 'TCP' | 'SSL';
15
15
  export type ALBListenerProtocol = 'HTTP' | 'HTTPS';
@@ -1,8 +1,8 @@
1
- import { ILoadBalancerSourceData } from '@spinnaker/core';
1
+ import type { ILoadBalancerSourceData } from '@spinnaker/core';
2
2
 
3
- import { IListenerAction, NLBListenerProtocol } from './IAmazonLoadBalancer';
3
+ import type { IListenerAction, NLBListenerProtocol } from './IAmazonLoadBalancer';
4
4
 
5
- import { IListenerRule } from './IAmazonLoadBalancer';
5
+ import type { IListenerRule } from './IAmazonLoadBalancer';
6
6
 
7
7
  export interface IAmazonContainerServerGroupSourceData {
8
8
  detachedInstances: string[];
@@ -1,4 +1,5 @@
1
- import { IScalingPolicy, IScalingPolicyAlarm, IStepAdjustment } from './IScalingPolicy';
1
+ import type { IScalingPolicy, IScalingPolicyAlarm, IStepAdjustment } from './IScalingPolicy';
2
+ import type { ITargetTrackingConfiguration } from './ITargetTrackingPolicy';
2
3
 
3
4
  export interface IScalingAdjustmentView extends IStepAdjustment {
4
5
  operator: string;
@@ -16,6 +17,7 @@ export interface IScalingPolicyView extends IScalingPolicy, IScalingAdjustmentVi
16
17
  alarms: IScalingPolicyAlarmView[];
17
18
  stepAdjustments: IStepAdjustmentView[];
18
19
  operator: string;
20
+ targetTrackingConfiguration?: ITargetTrackingConfiguration;
19
21
  }
20
22
 
21
23
  export interface IStepAdjustmentView extends IScalingAdjustmentView, IStepAdjustment {
@@ -1,9 +1,9 @@
1
- import { IAccountDetails, IAsg, IServerGroup } from '@spinnaker/core';
1
+ import type { IAccountDetails, IAsg, IServerGroup } from '@spinnaker/core';
2
2
 
3
- import { IAmazonLaunchTemplate } from './IAmazonLaunchTemplate';
4
- import { IScalingPolicyView } from './IAmazonScalingPolicy';
5
- import { IScalingPolicy } from './IScalingPolicy';
6
- import { ISuspendedProcess } from './IScalingProcess';
3
+ import type { IAmazonLaunchTemplate } from './IAmazonLaunchTemplate';
4
+ import type { IScalingPolicyView } from './IAmazonScalingPolicy';
5
+ import type { IScalingPolicy } from './IScalingPolicy';
6
+ import type { ISuspendedProcess } from './IScalingProcess';
7
7
 
8
8
  export interface IAmazonAsg extends IAsg {
9
9
  availabilityZones: string[];
@@ -1,4 +1,4 @@
1
- import { IMetricAlarmDimension } from '@spinnaker/core';
1
+ import type { IMetricAlarmDimension } from '@spinnaker/core';
2
2
 
3
3
  export interface IScalingPolicyAlarm {
4
4
  alarmName?: string;
@@ -1,4 +1,4 @@
1
- import { AlarmStatisticType, IScalingPolicy } from './IScalingPolicy';
1
+ import type { AlarmStatisticType, IScalingPolicy } from './IScalingPolicy';
2
2
 
3
3
  export interface ITargetTrackingPolicy extends IScalingPolicy {
4
4
  autoScalingGroupName?: string;
@@ -1,16 +1,8 @@
1
1
  import { cloneDeep } from 'lodash';
2
2
  import React from 'react';
3
3
 
4
- import {
5
- FunctionWriter,
6
- IFunctionModalProps,
7
- noop,
8
- ReactInjector,
9
- ReactModal,
10
- TaskMonitor,
11
- WizardModal,
12
- WizardPage,
13
- } from '@spinnaker/core';
4
+ import type { IFunctionModalProps } from '@spinnaker/core';
5
+ import { FunctionWriter, noop, ReactInjector, ReactModal, TaskMonitor, WizardModal, WizardPage } from '@spinnaker/core';
14
6
 
15
7
  import { ExecutionRole } from './configure/ExecutionRole';
16
8
  import { FunctionBasicInformation } from './configure/FunctionBasicInformation';
@@ -19,7 +11,7 @@ import { FunctionEnvironmentVariables } from './configure/FunctionEnvironmentVar
19
11
  import { FunctionSettings } from './configure/FunctionSettings';
20
12
  import { FunctionTags } from './configure/FunctionTags';
21
13
  import { Network } from './configure/Network';
22
- import { IAmazonFunction, IAmazonFunctionUpsertCommand } from '../domain';
14
+ import type { IAmazonFunction, IAmazonFunctionUpsertCommand } from '../domain';
23
15
  import { AwsFunctionTransformer } from './function.transformer';
24
16
 
25
17
  export interface IAmazonCreateFunctionProps extends IFunctionModalProps {
@@ -1,10 +1,11 @@
1
- import { FormikErrors, FormikProps } from 'formik';
1
+ import type { FormikErrors, FormikProps } from 'formik';
2
2
  import React from 'react';
3
3
 
4
- import { FormikFormField, FormValidator, IWizardPageComponent, TextInput } from '@spinnaker/core';
4
+ import type { IWizardPageComponent } from '@spinnaker/core';
5
+ import { FormikFormField, FormValidator, TextInput } from '@spinnaker/core';
5
6
  import { iamRoleValidator } from '../../aws.validators';
6
- import { IAmazonFunction } from '../../domain';
7
- import { IAmazonFunctionUpsertCommand } from '../../index';
7
+ import type { IAmazonFunction } from '../../domain';
8
+ import type { IAmazonFunctionUpsertCommand } from '../../index';
8
9
 
9
10
  export interface IExecutionRoleProps {
10
11
  formik: FormikProps<IAmazonFunctionUpsertCommand>;
@@ -1,25 +1,23 @@
1
1
  import classNames from 'classnames';
2
- import { FormikErrors, FormikProps } from 'formik';
2
+ import type { FormikErrors, FormikProps } from 'formik';
3
3
  import React from 'react';
4
- import { combineLatest as observableCombineLatest, from as observableFrom, Observable, Subject } from 'rxjs';
4
+ import type { Observable } from 'rxjs';
5
+ import { combineLatest as observableCombineLatest, from as observableFrom, Subject } from 'rxjs';
5
6
  import { distinctUntilChanged, map, shareReplay, switchMap, takeUntil, withLatestFrom } from 'rxjs/operators';
6
7
 
8
+ import type { Application, IAccount, IRegion, IWizardPageComponent } from '@spinnaker/core';
7
9
  import {
8
10
  AccountService,
9
- Application,
10
11
  CheckboxInput,
11
12
  FormikFormField,
12
13
  FormValidator,
13
14
  HelpField,
14
- IAccount,
15
- IRegion,
16
- IWizardPageComponent,
17
15
  ReactSelectInput,
18
16
  TextInput,
19
17
  } from '@spinnaker/core';
20
18
  import { s3BucketNameValidator } from '../../aws.validators';
21
- import { IAmazonFunction } from '../../domain';
22
- import { IAmazonFunctionUpsertCommand } from '../../index';
19
+ import type { IAmazonFunction } from '../../domain';
20
+ import type { IAmazonFunctionUpsertCommand } from '../../index';
23
21
 
24
22
  const availableRuntimes = [
25
23
  'nodejs10.x',
@@ -1,17 +1,11 @@
1
- import { FormikErrors, FormikProps } from 'formik';
1
+ import type { FormikErrors, FormikProps } from 'formik';
2
2
  import React from 'react';
3
3
 
4
- import {
5
- FormikFormField,
6
- FormValidator,
7
- HelpField,
8
- IWizardPageComponent,
9
- ReactSelectInput,
10
- TextInput,
11
- } from '@spinnaker/core';
4
+ import type { IWizardPageComponent } from '@spinnaker/core';
5
+ import { FormikFormField, FormValidator, HelpField, ReactSelectInput, TextInput } from '@spinnaker/core';
12
6
  import { awsArnValidator } from '../../aws.validators';
13
- import { IAmazonFunction } from '../../domain';
14
- import { IAmazonFunctionUpsertCommand } from '../../index';
7
+ import type { IAmazonFunction } from '../../domain';
8
+ import type { IAmazonFunctionUpsertCommand } from '../../index';
15
9
 
16
10
  export interface IFunctionDebugAndErrorHandlingProps {
17
11
  formik: FormikProps<IAmazonFunctionUpsertCommand>;
@@ -1,17 +1,11 @@
1
- import { FormikProps } from 'formik';
1
+ import type { FormikProps } from 'formik';
2
2
  import React from 'react';
3
3
 
4
- import {
5
- FormikFormField,
6
- FormValidator,
7
- HelpField,
8
- IWizardPageComponent,
9
- MapEditorInput,
10
- TextInput,
11
- } from '@spinnaker/core';
4
+ import type { IWizardPageComponent } from '@spinnaker/core';
5
+ import { FormikFormField, FormValidator, HelpField, MapEditorInput, TextInput } from '@spinnaker/core';
12
6
  import { awsArnValidator } from '../../aws.validators';
13
- import { IAmazonFunction } from '../../domain';
14
- import { IAmazonFunctionUpsertCommand } from '../../index';
7
+ import type { IAmazonFunction } from '../../domain';
8
+ import type { IAmazonFunctionUpsertCommand } from '../../index';
15
9
 
16
10
  export interface IFunctionEnvironmentVariablesProps {
17
11
  formik: FormikProps<IAmazonFunctionUpsertCommand>;
@@ -1,9 +1,10 @@
1
- import { FormikProps } from 'formik';
1
+ import type { FormikProps } from 'formik';
2
2
  import React from 'react';
3
3
 
4
- import { FormikFormField, HelpField, IWizardPageComponent, NumberInput, TextInput } from '@spinnaker/core';
5
- import { IAmazonFunction } from '../../domain';
6
- import { IAmazonFunctionUpsertCommand } from '../../index';
4
+ import type { IWizardPageComponent } from '@spinnaker/core';
5
+ import { FormikFormField, HelpField, NumberInput, TextInput } from '@spinnaker/core';
6
+ import type { IAmazonFunction } from '../../domain';
7
+ import type { IAmazonFunctionUpsertCommand } from '../../index';
7
8
 
8
9
  export interface IFunctionSettingsProps {
9
10
  formik: FormikProps<IAmazonFunctionUpsertCommand>;
@@ -1,10 +1,11 @@
1
- import { FormikProps } from 'formik';
1
+ import type { FormikProps } from 'formik';
2
2
  import React from 'react';
3
3
 
4
- import { FormikFormField, FormValidator, IWizardPageComponent, MapEditorInput } from '@spinnaker/core';
4
+ import type { IWizardPageComponent } from '@spinnaker/core';
5
+ import { FormikFormField, FormValidator, MapEditorInput } from '@spinnaker/core';
5
6
  import { awsTagsValidator } from '../../aws.validators';
6
- import { IAmazonFunction } from '../../domain';
7
- import { IAmazonFunctionUpsertCommand } from '../../index';
7
+ import type { IAmazonFunction } from '../../domain';
8
+ import type { IAmazonFunctionUpsertCommand } from '../../index';
8
9
 
9
10
  export interface IFunctionTagsProps {
10
11
  formik: FormikProps<IAmazonFunctionUpsertCommand>;
@@ -1,26 +1,28 @@
1
- import { FormikErrors, FormikProps } from 'formik';
1
+ import type { FormikErrors, FormikProps } from 'formik';
2
2
  import { forOwn, uniqBy } from 'lodash';
3
3
  import React from 'react';
4
- import { Option } from 'react-select';
4
+ import type { Option } from 'react-select';
5
5
  import { combineLatest as observableCombineLatest, from as observableFrom, Subject } from 'rxjs';
6
6
  import { takeUntil } from 'rxjs/operators';
7
7
 
8
- import {
8
+ import type {
9
9
  Application,
10
- FormikFormField,
11
- HelpField,
12
10
  IAccount,
13
11
  IRegion,
14
12
  ISecurityGroupsByAccountSourceData,
15
13
  ISubnet,
16
14
  IVpc,
17
15
  IWizardPageComponent,
16
+ } from '@spinnaker/core';
17
+ import {
18
+ FormikFormField,
19
+ HelpField,
18
20
  ReactInjector,
19
21
  ReactSelectInput,
20
22
  SubnetReader,
21
23
  TetheredSelect,
22
24
  } from '@spinnaker/core';
23
- import { IAmazonFunctionUpsertCommand } from '../../index';
25
+ import type { IAmazonFunctionUpsertCommand } from '../../index';
24
26
  import { VpcReader } from '../../vpc';
25
27
 
26
28
  export interface ISubnetOption {
@@ -3,18 +3,11 @@ import React from 'react';
3
3
  import { from as observableFrom, Subject } from 'rxjs';
4
4
  import { takeUntil } from 'rxjs/operators';
5
5
 
6
- import {
7
- AccountTag,
8
- Application,
9
- CollapsibleSection,
10
- Details,
11
- IFunction,
12
- IOverridableProps,
13
- Overrides,
14
- } from '@spinnaker/core';
6
+ import type { Application, IFunction, IOverridableProps } from '@spinnaker/core';
7
+ import { AccountTag, CollapsibleSection, Details, Overrides } from '@spinnaker/core';
15
8
 
16
9
  import { FunctionActions } from './FunctionActions';
17
- import { IAmazonFunction, IAmazonFunctionSourceData } from '../../domain';
10
+ import type { IAmazonFunction, IAmazonFunctionSourceData } from '../../domain';
18
11
  import { AwsReactInjector } from '../../reactShims';
19
12
 
20
13
  export interface IFunctionFromStateParams {
@@ -138,6 +131,26 @@ export class AmazonFunctionDetails extends React.Component<IAmazonFunctionDetail
138
131
  </dl>
139
132
  );
140
133
 
134
+ const aliasConfigurationDetails = (
135
+ <dl className="horizontal-when-filters-collapsed dl-horizontal dl-narrow">
136
+ {functionDef.aliasConfigurations && functionDef.aliasConfigurations.length !== 0
137
+ ? functionDef.aliasConfigurations.map((value: any) => (
138
+ <>
139
+ <h5>
140
+ <strong>Alias Details</strong>
141
+ </h5>
142
+ <dl>
143
+ <dt>Name</dt>
144
+ <dd>{value.name}</dd>
145
+ <dt>ARN</dt>
146
+ <dd>{value.aliasArn}</dd>
147
+ </dl>
148
+ </>
149
+ ))
150
+ : 'None'}
151
+ </dl>
152
+ );
153
+
141
154
  const functionDetailsSection = (
142
155
  <CollapsibleSection heading="Function Details">{functionDetails}</CollapsibleSection>
143
156
  );
@@ -146,6 +159,10 @@ export class AmazonFunctionDetails extends React.Component<IAmazonFunctionDetail
146
159
  <CollapsibleSection heading="Event Source Details">{eventSourceDetails}</CollapsibleSection>
147
160
  );
148
161
 
162
+ const aliasConfigurationDetailsSection = (
163
+ <CollapsibleSection heading="Alias Configuration Details">{aliasConfigurationDetails}</CollapsibleSection>
164
+ );
165
+
149
166
  return (
150
167
  <Details loading={this.state.loading}>
151
168
  {isEmpty(this.state.functionDef) ? (
@@ -172,6 +189,9 @@ export class AmazonFunctionDetails extends React.Component<IAmazonFunctionDetail
172
189
  {!isEmpty(this.state.functionDef) && !isEmpty(this.state.functionDef.eventSourceMappings)
173
190
  ? eventSourceDetailsSection
174
191
  : ''}
192
+ {!isEmpty(this.state.functionDef) && !isEmpty(this.state.functionDef.aliasConfigurations)
193
+ ? aliasConfigurationDetailsSection
194
+ : ''}
175
195
  </Details>
176
196
  );
177
197
  }
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { shallow } from 'enzyme';
3
3
 
4
- import { Application } from '@spinnaker/core';
4
+ import { Application, SETTINGS } from '@spinnaker/core';
5
5
  import { IAmazonFunction, FunctionActions } from '../../index';
6
6
 
7
7
  describe('FunctionActions', () => {
@@ -9,6 +9,7 @@ describe('FunctionActions', () => {
9
9
  let app = { name: 'app' } as Application;
10
10
 
11
11
  let functionDef = { functionName: 'app-function' } as IAmazonFunction;
12
+ SETTINGS.awsAdHocInfraWritesEnabled = true;
12
13
 
13
14
  const wrapper = shallow(
14
15
  <FunctionActions
@@ -26,4 +27,26 @@ describe('FunctionActions', () => {
26
27
 
27
28
  expect(dropDown.childAt(0).text()).toEqual('Function Actions');
28
29
  });
30
+
31
+ it('should not render DropdownToggle if awsAdHocInfraWritesEnabled is false', () => {
32
+ let app = { name: 'app' } as Application;
33
+
34
+ let functionDef = { functionName: 'app-function' } as IAmazonFunction;
35
+ SETTINGS.awsAdHocInfraWritesEnabled = false;
36
+
37
+ const wrapper = shallow(
38
+ <FunctionActions
39
+ app={app}
40
+ functionDef={functionDef}
41
+ functionFromParams={{
42
+ account: 'test-account',
43
+ region: 'us-east-1',
44
+ functionName: 'function-name',
45
+ }}
46
+ />,
47
+ );
48
+
49
+ let dropDown = wrapper.find('div');
50
+ expect(dropDown.children().length).toEqual(0);
51
+ });
29
52
  });