@spinnaker/amazon 2026.2.2 → 2026.3.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 (404) hide show
  1. package/dist/aws.module.d.ts +2 -1
  2. package/dist/aws.services.d.ts +8 -0
  3. package/dist/certificates/AmazonCertificateReader.d.ts +1 -1
  4. package/dist/domain/IAmazonServerGroup.d.ts +10 -0
  5. package/dist/function/CreateLambdaFunction.d.ts +10 -5
  6. package/dist/function/configure/Network.d.ts +3 -0
  7. package/dist/function/details/FunctionActions.d.ts +3 -0
  8. package/dist/function/function.transformer.d.ts +1 -0
  9. package/dist/image/image.reader.d.ts +2 -2
  10. package/dist/index.d.ts +2 -2
  11. package/dist/index.js +1 -1
  12. package/dist/index.js.map +1 -1
  13. package/dist/instance/amazon.instance.write.service.d.ts +5 -5
  14. package/dist/instance/awsInstanceType.service.d.ts +13 -2
  15. package/dist/instance/details/AmazonInstanceDetails.d.ts +67 -0
  16. package/dist/instance/index.d.ts +1 -0
  17. package/dist/keyPairs/KeyPairsReader.d.ts +1 -1
  18. package/dist/loadBalancer/AmazonLoadBalancersTag.d.ts +7 -4
  19. package/dist/loadBalancer/OidcConfigReader.d.ts +1 -1
  20. package/dist/loadBalancer/TargetGroupDetails.d.ts +37 -3
  21. package/dist/loadBalancer/amazonLoadBalancerDataUtils.d.ts +1 -1
  22. package/dist/loadBalancer/configure/AmazonLoadBalancerChoiceModal.d.ts +6 -2
  23. package/dist/loadBalancer/configure/LoadBalancerTypes.d.ts +4 -4
  24. package/dist/loadBalancer/configure/application/CreateApplicationLoadBalancer.d.ts +10 -5
  25. package/dist/loadBalancer/configure/classic/CreateClassicLoadBalancer.d.ts +12 -7
  26. package/dist/loadBalancer/configure/common/SecurityGroups.d.ts +4 -0
  27. package/dist/loadBalancer/configure/network/CreateNetworkLoadBalancer.d.ts +10 -5
  28. package/dist/loadBalancer/details/LoadBalancerActions.d.ts +9 -2
  29. package/dist/loadBalancer/details/amazonLoadBalancerDetails.d.ts +22 -0
  30. package/dist/loadBalancer/index.d.ts +1 -0
  31. package/dist/loadBalancer/loadBalancer.transformer.d.ts +1 -1
  32. package/dist/pipeline/stages/AmazonStageConfig.d.ts +11 -0
  33. package/dist/pipeline/stages/bake/AwsBakeStageConfig.d.ts +66 -0
  34. package/dist/pipeline/stages/cloneServerGroup/AwsCloneServerGroupStageConfig.d.ts +20 -0
  35. package/dist/pipeline/stages/deleteLambda/index.d.ts +1 -1
  36. package/dist/pipeline/stages/deployCloudFormation/CloudFormationChangeSetInfo.d.ts +5 -4
  37. package/dist/pipeline/stages/deployCloudFormation/DeployCloudFormationStackStageConfig.d.ts +3 -0
  38. package/dist/pipeline/stages/deployCloudFormation/deployCloudFormationStackStage.d.ts +1 -1
  39. package/dist/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecution.service.d.ts +1 -3
  40. package/dist/pipeline/stages/deployLambda/index.d.ts +1 -1
  41. package/dist/pipeline/stages/destroyAsg/awsDestroyAsgStage.d.ts +26 -2
  42. package/dist/pipeline/stages/disableAsg/AwsDisableAsgStageConfig.d.ts +27 -0
  43. package/dist/pipeline/stages/disableCluster/AwsDisableClusterStageConfig.d.ts +19 -0
  44. package/dist/pipeline/stages/enableAsg/AwsEnableAsgStageConfig.d.ts +20 -0
  45. package/dist/pipeline/stages/findAmi/awsFindAmiStage.d.ts +17 -2
  46. package/dist/pipeline/stages/findImageFromTags/AwsFindImageFromTagsStageConfig.d.ts +3 -0
  47. package/dist/pipeline/stages/findImageFromTags/awsFindImageFromTagsStage.d.ts +12 -2
  48. package/dist/pipeline/stages/invokeLambda/index.d.ts +1 -1
  49. package/dist/pipeline/stages/modifyScalingProcess/ModifyScalingProcessStageConfig.d.ts +3 -0
  50. package/dist/pipeline/stages/modifyScalingProcess/modifyScalingProcessStage.d.ts +20 -2
  51. package/dist/pipeline/stages/modifyWarmPool/ModifyWarmPoolStageConfig.d.ts +3 -0
  52. package/dist/pipeline/stages/modifyWarmPool/modifyWarmPoolStage.d.ts +20 -0
  53. package/dist/pipeline/stages/resizeAsg/AwsResizeAsgStageConfig.d.ts +17 -0
  54. package/dist/pipeline/stages/resizeAsg/awsResizeAsgStage.d.ts +40 -2
  55. package/dist/pipeline/stages/rollbackCluster/AwsRollbackClusterStageConfig.d.ts +19 -0
  56. package/dist/pipeline/stages/routeLambda/index.d.ts +1 -1
  57. package/dist/pipeline/stages/scaleDownCluster/AwsScaleDownClusterStageConfig.d.ts +22 -0
  58. package/dist/pipeline/stages/shrinkCluster/AwsShrinkClusterStageConfig.d.ts +21 -0
  59. package/dist/pipeline/stages/tagImage/awsTagImageStage.d.ts +5 -2
  60. package/dist/pipeline/stages/updateCodeLambda/index.d.ts +1 -1
  61. package/dist/search/searchResultFormatter.d.ts +4 -2
  62. package/dist/securityGroup/configure/AmazonSecurityGroupModal.d.ts +43 -0
  63. package/dist/securityGroup/details/AmazonSecurityGroupDetails.d.ts +62 -0
  64. package/dist/securityGroup/details/index.d.ts +1 -0
  65. package/dist/securityGroup/index.d.ts +1 -0
  66. package/dist/securityGroup/securityGroup.reader.d.ts +0 -1
  67. package/dist/securityGroup/securityGroup.transformer.d.ts +11 -2
  68. package/dist/serverGroup/configure/serverGroupCommandBuilder.service.d.ts +23 -7
  69. package/dist/serverGroup/configure/serverGroupConfiguration.service.d.ts +17 -13
  70. package/dist/serverGroup/configure/wizard/AmazonCloneServerGroupModal.d.ts +16 -6
  71. package/dist/serverGroup/configure/wizard/pages/ServerGroupBasicSettings.d.ts +6 -3
  72. package/dist/serverGroup/configure/wizard/pages/ServerGroupLoadBalancers.d.ts +3 -0
  73. package/dist/serverGroup/configure/wizard/securityGroups/SecurityGroupSelector.d.ts +4 -0
  74. package/dist/serverGroup/details/AmazonServerGroupActions.d.ts +10 -2
  75. package/dist/serverGroup/details/advancedSettings/EditAsgAdvancedSettingsModal.d.ts +17 -0
  76. package/dist/serverGroup/details/advancedSettings/index.d.ts +1 -0
  77. package/dist/serverGroup/details/resize/AmazonResizeServerGroupModal.d.ts +5 -3
  78. package/dist/serverGroup/details/rollback/AmazonRollbackServerGroupModal.d.ts +67 -0
  79. package/dist/serverGroup/details/rollback/index.d.ts +2 -0
  80. package/dist/serverGroup/details/rollback/rollbackServerGroupSelection.d.ts +9 -0
  81. package/dist/serverGroup/details/scalingPolicy/ScalingPolicyWriter.d.ts +2 -2
  82. package/dist/serverGroup/details/scalingPolicy/upsert/alarm/DimensionsEditor.d.ts +0 -1
  83. package/dist/serverGroup/details/scalingProcesses/ModifyScalingProcessesModal.d.ts +24 -0
  84. package/dist/serverGroup/details/scalingProcesses/index.d.ts +2 -0
  85. package/dist/serverGroup/details/scheduledActions/EditScheduledActionsModal.d.ts +31 -0
  86. package/dist/serverGroup/details/scheduledActions/index.d.ts +1 -0
  87. package/dist/serverGroup/details/sections/AdvancedSettingsDetailsSection.d.ts +3 -0
  88. package/dist/serverGroup/details/sections/AmazonCapacityDetailsSection.d.ts +3 -0
  89. package/dist/serverGroup/details/sections/ScalingProcessesDetailsSection.d.ts +1 -1
  90. package/dist/serverGroup/details/sections/ScheduledActionsDetailsSection.d.ts +1 -1
  91. package/dist/serverGroup/details/sections/SecurityGroupsDetailsSection.d.ts +4 -1
  92. package/dist/serverGroup/details/sections/WarmPoolDetailsSection.d.ts +6 -0
  93. package/dist/serverGroup/details/sections/index.d.ts +1 -0
  94. package/dist/serverGroup/details/securityGroups/EditSecurityGroupsModal.d.ts +32 -0
  95. package/dist/serverGroup/details/securityGroups/index.d.ts +1 -0
  96. package/dist/serverGroup/details/warmPool/ModifyWarmPoolModal.d.ts +26 -0
  97. package/dist/serverGroup/details/warmPool/WarmPoolService.d.ts +6 -0
  98. package/dist/serverGroup/details/warmPool/index.d.ts +2 -0
  99. package/dist/serverGroup/serverGroup.transformer.d.ts +1 -2
  100. package/dist/vpc/VpcReader.d.ts +2 -2
  101. package/dist/vpc/index.d.ts +1 -0
  102. package/package.json +3 -12
  103. package/src/aws.module.spec.ts +296 -0
  104. package/src/aws.module.ts +107 -112
  105. package/src/aws.services.ts +21 -0
  106. package/src/certificates/AmazonCertificateReader.ts +1 -1
  107. package/src/domain/IAmazonServerGroup.ts +9 -0
  108. package/src/function/CreateLambdaFunction.tsx +29 -16
  109. package/src/function/configure/Network.tsx +8 -4
  110. package/src/function/details/AmazonFunctionDetails.tsx +4 -5
  111. package/src/function/details/FunctionActions.tsx +5 -1
  112. package/src/function/function.transformer.ts +4 -0
  113. package/src/image/image.reader.ts +3 -5
  114. package/src/index.ts +2 -2
  115. package/src/instance/amazon.instance.write.service.ts +15 -4
  116. package/src/instance/awsInstanceType.service.spec.js +172 -136
  117. package/src/instance/awsInstanceType.service.ts +142 -154
  118. package/src/instance/details/AmazonInstanceDetails.spec.tsx +79 -0
  119. package/src/instance/details/AmazonInstanceDetails.tsx +644 -0
  120. package/src/instance/details/InstanceInformation.tsx +11 -14
  121. package/src/instance/details/InstanceSecurityGroups.tsx +20 -23
  122. package/src/instance/details/InstanceTags.tsx +5 -3
  123. package/src/instance/index.ts +1 -0
  124. package/src/keyPairs/KeyPairsReader.ts +1 -1
  125. package/src/loadBalancer/AmazonLoadBalancersTag.spec.tsx +39 -0
  126. package/src/loadBalancer/AmazonLoadBalancersTag.tsx +21 -14
  127. package/src/loadBalancer/OidcConfigReader.ts +1 -1
  128. package/src/loadBalancer/TargetGroupDetails.spec.tsx +113 -0
  129. package/src/loadBalancer/TargetGroupDetails.tsx +287 -7
  130. package/src/loadBalancer/amazonLoadBalancerDataUtils.ts +21 -21
  131. package/src/loadBalancer/configure/AmazonLoadBalancerChoiceModal.tsx +17 -4
  132. package/src/loadBalancer/configure/LoadBalancerTypes.ts +7 -4
  133. package/src/loadBalancer/configure/application/ALBListeners.tsx +1 -2
  134. package/src/loadBalancer/configure/application/CreateApplicationLoadBalancer.tsx +28 -18
  135. package/src/loadBalancer/configure/classic/CreateClassicLoadBalancer.tsx +29 -19
  136. package/src/loadBalancer/configure/common/LoadBalancerLocation.tsx +1 -1
  137. package/src/loadBalancer/configure/common/SecurityGroups.spec.tsx +27 -0
  138. package/src/loadBalancer/configure/common/SecurityGroups.tsx +11 -5
  139. package/src/loadBalancer/configure/network/CreateNetworkLoadBalancer.tsx +28 -18
  140. package/src/loadBalancer/details/LoadBalancerActions.tsx +19 -5
  141. package/src/loadBalancer/details/amazonLoadBalancerDetails.spec.tsx +141 -0
  142. package/src/loadBalancer/details/amazonLoadBalancerDetails.tsx +599 -0
  143. package/src/loadBalancer/index.ts +1 -0
  144. package/src/loadBalancer/loadBalancer.transformer.ts +3 -4
  145. package/src/pipeline/stages/AmazonStageConfig.spec.tsx +103 -0
  146. package/src/pipeline/stages/AmazonStageConfig.tsx +259 -0
  147. package/src/pipeline/stages/bake/AwsBakeStageConfig.tsx +708 -0
  148. package/src/pipeline/stages/cloneServerGroup/AwsCloneServerGroupStageConfig.tsx +275 -0
  149. package/src/pipeline/stages/deleteLambda/index.ts +2 -6
  150. package/src/pipeline/stages/deployCloudFormation/CloudFormationChangeSetInfo.tsx +14 -33
  151. package/src/pipeline/stages/deployCloudFormation/DeployCloudFormationStackStageConfig.tsx +264 -0
  152. package/src/pipeline/stages/deployCloudFormation/deployCloudFormationStackStage.spec.tsx +403 -0
  153. package/src/pipeline/stages/deployCloudFormation/deployCloudFormationStackStage.ts +21 -29
  154. package/src/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecution.service.ts +1 -11
  155. package/src/pipeline/stages/deployCloudFormation/evaluateCloudFormationChangeSetExecutionApproval.tsx +4 -3
  156. package/src/pipeline/stages/deployLambda/components/NetworkForm.tsx +3 -6
  157. package/src/pipeline/stages/deployLambda/index.ts +2 -6
  158. package/src/pipeline/stages/destroyAsg/awsDestroyAsgStage.js +28 -65
  159. package/src/pipeline/stages/disableAsg/AwsDisableAsgStageConfig.tsx +103 -0
  160. package/src/pipeline/stages/disableCluster/AwsDisableClusterStageConfig.tsx +119 -0
  161. package/src/pipeline/stages/enableAsg/AwsEnableAsgStageConfig.tsx +98 -0
  162. package/src/pipeline/stages/findAmi/awsFindAmiStage.js +22 -79
  163. package/src/pipeline/stages/findImageFromTags/AwsFindImageFromTagsStageConfig.spec.tsx +122 -0
  164. package/src/pipeline/stages/findImageFromTags/AwsFindImageFromTagsStageConfig.tsx +71 -0
  165. package/src/pipeline/stages/findImageFromTags/awsFindImageFromTagsStage.js +17 -32
  166. package/src/pipeline/stages/invokeLambda/index.ts +2 -6
  167. package/src/pipeline/stages/modifyScalingProcess/ModifyScalingProcessStageConfig.tsx +146 -0
  168. package/src/pipeline/stages/modifyScalingProcess/modifyScalingProcessStage.js +27 -98
  169. package/src/pipeline/stages/modifyScalingProcess/modifyScalingProcessStage.spec.tsx +167 -0
  170. package/src/pipeline/stages/modifyWarmPool/ModifyWarmPoolStageConfig.tsx +157 -0
  171. package/src/pipeline/stages/modifyWarmPool/modifyWarmPoolStage.js +26 -0
  172. package/src/pipeline/stages/modifyWarmPool/modifyWarmPoolStage.spec.tsx +89 -0
  173. package/src/pipeline/stages/resizeAsg/AwsResizeAsgStageConfig.spec.tsx +617 -0
  174. package/src/pipeline/stages/resizeAsg/AwsResizeAsgStageConfig.tsx +340 -0
  175. package/src/pipeline/stages/resizeAsg/awsResizeAsgStage.js +34 -125
  176. package/src/pipeline/stages/rollbackCluster/AwsRollbackClusterStageConfig.tsx +129 -0
  177. package/src/pipeline/stages/routeLambda/index.ts +2 -6
  178. package/src/pipeline/stages/scaleDownCluster/AwsScaleDownClusterStageConfig.tsx +121 -0
  179. package/src/pipeline/stages/shrinkCluster/AwsShrinkClusterStageConfig.tsx +136 -0
  180. package/src/pipeline/stages/tagImage/awsTagImageStage.spec.tsx +167 -0
  181. package/src/pipeline/stages/tagImage/awsTagImageStage.tsx +94 -0
  182. package/src/pipeline/stages/updateCodeLambda/index.ts +2 -6
  183. package/src/routerConsumers.spec.tsx +207 -0
  184. package/src/search/searchResultFormatter.ts +9 -16
  185. package/src/securityGroup/configure/AmazonSecurityGroupModal.spec.tsx +170 -0
  186. package/src/securityGroup/configure/AmazonSecurityGroupModal.tsx +440 -0
  187. package/src/securityGroup/details/AmazonSecurityGroupDetails.spec.tsx +62 -0
  188. package/src/securityGroup/details/AmazonSecurityGroupDetails.tsx +444 -0
  189. package/src/securityGroup/details/IPRangeRules.tsx +1 -1
  190. package/src/securityGroup/details/index.ts +1 -0
  191. package/src/securityGroup/index.ts +1 -0
  192. package/src/securityGroup/securityGroup.reader.ts +0 -5
  193. package/src/securityGroup/securityGroup.transformer.ts +35 -0
  194. package/src/serverGroup/configure/AmazonImageSelectInput.spec.tsx +104 -80
  195. package/src/serverGroup/configure/AmazonImageSelectInput.tsx +37 -18
  196. package/src/serverGroup/configure/serverGroupCommandBuilder.aws.service.spec.js +28 -66
  197. package/src/serverGroup/configure/serverGroupCommandBuilder.service.ts +476 -465
  198. package/src/serverGroup/configure/serverGroupCommandBuilder.spec.js +76 -124
  199. package/src/serverGroup/configure/serverGroupConfiguration.service.ts +106 -103
  200. package/src/serverGroup/configure/wizard/AmazonCloneServerGroupModal.tsx +65 -25
  201. package/src/serverGroup/configure/wizard/instanceType/CpuCreditsToggle.tsx +3 -3
  202. package/src/serverGroup/configure/wizard/instanceType/advancedMode/AdvancedModeSelector.tsx +2 -2
  203. package/src/serverGroup/configure/wizard/instanceType/simpleMode/SimpleModeSelector.spec.tsx +105 -0
  204. package/src/serverGroup/configure/wizard/instanceType/simpleMode/SimpleModeSelector.tsx +20 -6
  205. package/src/serverGroup/configure/wizard/pages/ServerGroupBasicSettings.spec.tsx +39 -0
  206. package/src/serverGroup/configure/wizard/pages/ServerGroupBasicSettings.tsx +10 -9
  207. package/src/serverGroup/configure/wizard/pages/ServerGroupInstanceType.tsx +2 -2
  208. package/src/serverGroup/configure/wizard/pages/ServerGroupLoadBalancers.tsx +5 -2
  209. package/src/serverGroup/configure/wizard/pages/advancedSettings/ServerGroupAdvancedSettingsCommon.spec.tsx +53 -0
  210. package/src/serverGroup/configure/wizard/pages/advancedSettings/ServerGroupAdvancedSettingsCommon.tsx +35 -33
  211. package/src/serverGroup/configure/wizard/securityGroups/SecurityGroupSelector.spec.tsx +20 -0
  212. package/src/serverGroup/configure/wizard/securityGroups/SecurityGroupSelector.tsx +9 -4
  213. package/src/serverGroup/details/AmazonServerGroupActions.spec.tsx +186 -0
  214. package/src/serverGroup/details/AmazonServerGroupActions.tsx +37 -87
  215. package/src/serverGroup/details/advancedSettings/EditAsgAdvancedSettingsModal.spec.tsx +110 -0
  216. package/src/serverGroup/details/advancedSettings/EditAsgAdvancedSettingsModal.tsx +117 -0
  217. package/src/serverGroup/details/advancedSettings/index.ts +1 -0
  218. package/src/serverGroup/details/amazonServerGroupDetailsGetter.ts +4 -4
  219. package/src/serverGroup/details/resize/AmazonResizeServerGroupModal.tsx +16 -6
  220. package/src/serverGroup/details/rollback/AmazonRollbackServerGroupModal.spec.tsx +285 -0
  221. package/src/serverGroup/details/rollback/AmazonRollbackServerGroupModal.tsx +449 -0
  222. package/src/serverGroup/details/rollback/index.ts +2 -0
  223. package/src/serverGroup/details/rollback/rollbackServerGroupSelection.spec.ts +101 -0
  224. package/src/serverGroup/details/rollback/rollbackServerGroupSelection.ts +81 -0
  225. package/src/serverGroup/details/scalingPolicy/CreateScalingPolicyButton.tsx +4 -4
  226. package/src/serverGroup/details/scalingPolicy/ScalingPolicyWriter.ts +2 -5
  227. package/src/serverGroup/details/scalingPolicy/upsert/alarm/DimensionsEditor.tsx +0 -2
  228. package/src/serverGroup/details/scalingProcesses/ModifyScalingProcessesModal.spec.tsx +74 -0
  229. package/src/serverGroup/details/scalingProcesses/ModifyScalingProcessesModal.tsx +140 -0
  230. package/src/serverGroup/details/scalingProcesses/index.ts +2 -0
  231. package/src/serverGroup/details/scheduledActions/EditScheduledActionsModal.spec.tsx +115 -0
  232. package/src/serverGroup/details/scheduledActions/EditScheduledActionsModal.tsx +205 -0
  233. package/src/serverGroup/details/scheduledActions/index.ts +1 -0
  234. package/src/serverGroup/details/sections/AdvancedSettingsDetailsSection.tsx +7 -14
  235. package/src/serverGroup/details/sections/AmazonCapacityDetailsSection.tsx +14 -2
  236. package/src/serverGroup/details/sections/AmazonServerGroupMaintenanceActions.spec.tsx +148 -0
  237. package/src/serverGroup/details/sections/InstancesDistributionDetailsSection.spec.tsx +1 -5
  238. package/src/serverGroup/details/sections/LaunchTemplateDetailsSection.spec.tsx +1 -5
  239. package/src/serverGroup/details/sections/ScalingProcessesDetailsSection.tsx +8 -20
  240. package/src/serverGroup/details/sections/ScheduledActionsDetailsSection.tsx +7 -12
  241. package/src/serverGroup/details/sections/SecurityGroupsDetailsSection.tsx +14 -19
  242. package/src/serverGroup/details/sections/WarmPoolDetailsSection.tsx +44 -0
  243. package/src/serverGroup/details/sections/index.ts +1 -0
  244. package/src/serverGroup/details/securityGroups/EditSecurityGroupsModal.spec.tsx +161 -0
  245. package/src/serverGroup/details/securityGroups/EditSecurityGroupsModal.tsx +177 -0
  246. package/src/serverGroup/details/securityGroups/index.ts +1 -0
  247. package/src/serverGroup/details/warmPool/ModifyWarmPoolModal.spec.tsx +69 -0
  248. package/src/serverGroup/details/warmPool/ModifyWarmPoolModal.tsx +191 -0
  249. package/src/serverGroup/details/warmPool/WarmPoolService.spec.ts +30 -0
  250. package/src/serverGroup/details/warmPool/WarmPoolService.ts +15 -0
  251. package/src/serverGroup/details/warmPool/index.ts +2 -0
  252. package/src/serverGroup/serverGroup.transformer.ts +1 -6
  253. package/src/vpc/VpcReader.ts +2 -2
  254. package/src/vpc/index.ts +1 -0
  255. package/dist/common/common.module.d.ts +0 -1
  256. package/dist/common/footer.component.d.ts +0 -1
  257. package/dist/function/function.module.d.ts +0 -1
  258. package/dist/instance/details/amazonInstanceInformation.component.d.ts +0 -1
  259. package/dist/instance/details/instance.details.controller.d.ts +0 -2
  260. package/dist/instance/details/instanceDns.component.d.ts +0 -1
  261. package/dist/instance/details/instanceSecurityGroups.component.d.ts +0 -1
  262. package/dist/instance/details/instanceStatus.component.d.ts +0 -1
  263. package/dist/instance/details/instanceTags.component.d.ts +0 -1
  264. package/dist/loadBalancer/details/loadBalancerActions.component.d.ts +0 -1
  265. package/dist/loadBalancer/details/loadBalancerDetails.controller.d.ts +0 -41
  266. package/dist/loadBalancer/details/targetGroupDetails.controller.d.ts +0 -30
  267. package/dist/loadBalancer/loadBalancer.module.d.ts +0 -1
  268. package/dist/loadBalancer/targetGroup.states.d.ts +0 -1
  269. package/dist/pipeline/stages/bake/awsBakeStage.d.ts +0 -2
  270. package/dist/pipeline/stages/bake/bakeExecutionDetails.controller.d.ts +0 -2
  271. package/dist/pipeline/stages/cloneServerGroup/awsCloneServerGroupStage.d.ts +0 -2
  272. package/dist/pipeline/stages/deployCloudFormation/cloudFormationTemplateEntry.component.d.ts +0 -1
  273. package/dist/pipeline/stages/deployCloudFormation/deployCloudFormationStackConfig.controller.d.ts +0 -25
  274. package/dist/pipeline/stages/disableAsg/awsDisableAsgStage.d.ts +0 -2
  275. package/dist/pipeline/stages/disableCluster/awsDisableClusterStage.d.ts +0 -2
  276. package/dist/pipeline/stages/enableAsg/awsEnableAsgStage.d.ts +0 -2
  277. package/dist/pipeline/stages/rollbackCluster/awsRollbackClusterStage.d.ts +0 -2
  278. package/dist/pipeline/stages/scaleDownCluster/awsScaleDownClusterStage.d.ts +0 -2
  279. package/dist/pipeline/stages/shrinkCluster/awsShrinkClusterStage.d.ts +0 -2
  280. package/dist/reactShims/aws.react.injector.d.ts +0 -18
  281. package/dist/reactShims/aws.react.module.d.ts +0 -1
  282. package/dist/reactShims/index.d.ts +0 -1
  283. package/dist/securityGroup/clone/cloneSecurityGroup.controller.d.ts +0 -2
  284. package/dist/securityGroup/configure/CreateSecurityGroupCtrl.d.ts +0 -2
  285. package/dist/securityGroup/configure/EditSecurityGroupCtrl.d.ts +0 -2
  286. package/dist/securityGroup/configure/configSecurityGroup.mixin.controller.d.ts +0 -2
  287. package/dist/securityGroup/configure/ingressRuleGroupSelector.component.d.ts +0 -1
  288. package/dist/securityGroup/configure/securityGroupDetailsCustom.component.d.ts +0 -1
  289. package/dist/securityGroup/configure/securityGroupDetailsCustom.d.ts +0 -10
  290. package/dist/securityGroup/details/securityGroupDetail.controller.d.ts +0 -2
  291. package/dist/securityGroup/details/securityGroupIpRangeRules.component.d.ts +0 -1
  292. package/dist/securityGroup/securityGroup.module.d.ts +0 -1
  293. package/dist/serverGroup/details/advancedSettings/editAsgAdvancedSettings.modal.controller.d.ts +0 -2
  294. package/dist/serverGroup/details/rollback/rollbackServerGroup.controller.d.ts +0 -2
  295. package/dist/serverGroup/details/scalingPolicy/createScalingPolicyButton.component.d.ts +0 -1
  296. package/dist/serverGroup/details/scalingPolicy/scalingPolicy.module.d.ts +0 -1
  297. package/dist/serverGroup/details/scalingPolicy/scalingPolicySummary.component.d.ts +0 -1
  298. package/dist/serverGroup/details/scalingProcesses/modifyScalingProcesses.controller.d.ts +0 -2
  299. package/dist/serverGroup/details/scheduledAction/editScheduledActions.modal.controller.d.ts +0 -2
  300. package/dist/serverGroup/details/securityGroup/editSecurityGroups.modal.controller.d.ts +0 -2
  301. package/dist/serverGroup/details/serverGroupDetails.module.d.ts +0 -1
  302. package/dist/subnet/subnet.renderer.d.ts +0 -5
  303. package/dist/vpc/vpc.module.d.ts +0 -1
  304. package/src/applicationProviderFields/awsFields.html +0 -13
  305. package/src/common/common.module.ts +0 -6
  306. package/src/common/footer.component.ts +0 -29
  307. package/src/function/function.module.ts +0 -5
  308. package/src/image/image.reader.spec.ts +0 -75
  309. package/src/instance/details/amazonInstanceInformation.component.ts +0 -13
  310. package/src/instance/details/instance.details.controller.js +0 -586
  311. package/src/instance/details/instance.details.controller.spec.js +0 -133
  312. package/src/instance/details/instanceDetails.html +0 -65
  313. package/src/instance/details/instanceDns.component.ts +0 -21
  314. package/src/instance/details/instanceSecurityGroups.component.ts +0 -13
  315. package/src/instance/details/instanceStatus.component.ts +0 -19
  316. package/src/instance/details/instanceTags.component.ts +0 -13
  317. package/src/loadBalancer/details/loadBalancerActions.component.ts +0 -16
  318. package/src/loadBalancer/details/loadBalancerDetails.controller.spec.ts +0 -76
  319. package/src/loadBalancer/details/loadBalancerDetails.controller.ts +0 -240
  320. package/src/loadBalancer/details/loadBalancerDetails.html +0 -266
  321. package/src/loadBalancer/details/targetGroupDetails.controller.ts +0 -95
  322. package/src/loadBalancer/details/targetGroupDetails.html +0 -138
  323. package/src/loadBalancer/loadBalancer.module.ts +0 -15
  324. package/src/loadBalancer/targetGroup.states.ts +0 -55
  325. package/src/pipeline/stages/bake/awsBakeStage.js +0 -219
  326. package/src/pipeline/stages/bake/bakeExecutionDetails.controller.js +0 -43
  327. package/src/pipeline/stages/bake/bakeExecutionDetails.html +0 -65
  328. package/src/pipeline/stages/bake/bakeStage.html +0 -205
  329. package/src/pipeline/stages/cloneServerGroup/awsCloneServerGroupStage.js +0 -143
  330. package/src/pipeline/stages/cloneServerGroup/cloneServerGroupStage.html +0 -143
  331. package/src/pipeline/stages/cloneServerGroup/cloneServerGroupStepLabel.html +0 -1
  332. package/src/pipeline/stages/deployCloudFormation/cloudFormationTemplateEntry.component.ts +0 -46
  333. package/src/pipeline/stages/deployCloudFormation/deployCloudFormationStackConfig.controller.ts +0 -84
  334. package/src/pipeline/stages/deployCloudFormation/deployCloudFormationStackConfig.html +0 -84
  335. package/src/pipeline/stages/destroyAsg/destroyAsgStage.html +0 -9
  336. package/src/pipeline/stages/destroyAsg/destroyAsgStepLabel.html +0 -1
  337. package/src/pipeline/stages/disableAsg/awsDisableAsgStage.js +0 -69
  338. package/src/pipeline/stages/disableAsg/disableAsgStage.html +0 -11
  339. package/src/pipeline/stages/disableAsg/disableAsgStepLabel.html +0 -1
  340. package/src/pipeline/stages/disableCluster/awsDisableClusterStage.js +0 -84
  341. package/src/pipeline/stages/disableCluster/disableClusterStage.html +0 -26
  342. package/src/pipeline/stages/enableAsg/awsEnableAsgStage.js +0 -73
  343. package/src/pipeline/stages/enableAsg/enableAsgStage.html +0 -11
  344. package/src/pipeline/stages/enableAsg/enableAsgStepLabel.html +0 -1
  345. package/src/pipeline/stages/findAmi/findAmiStage.html +0 -24
  346. package/src/pipeline/stages/findImageFromTags/findImageFromTagsExecutionDetails.html +0 -44
  347. package/src/pipeline/stages/findImageFromTags/findImageFromTagsStage.html +0 -11
  348. package/src/pipeline/stages/modifyScalingProcess/modifyScalingProcessExecutionDetails.html +0 -36
  349. package/src/pipeline/stages/modifyScalingProcess/modifyScalingProcessStage.html +0 -24
  350. package/src/pipeline/stages/resizeAsg/resizeAsgStage.html +0 -90
  351. package/src/pipeline/stages/resizeAsg/resizeAsgStepLabel.html +0 -4
  352. package/src/pipeline/stages/rollbackCluster/awsRollbackClusterStage.js +0 -66
  353. package/src/pipeline/stages/rollbackCluster/rollbackClusterStage.html +0 -43
  354. package/src/pipeline/stages/scaleDownCluster/awsScaleDownClusterStage.js +0 -78
  355. package/src/pipeline/stages/scaleDownCluster/scaleDownClusterStage.html +0 -35
  356. package/src/pipeline/stages/shrinkCluster/awsShrinkClusterStage.js +0 -73
  357. package/src/pipeline/stages/shrinkCluster/shrinkClusterStage.html +0 -34
  358. package/src/pipeline/stages/tagImage/awsTagImageStage.js +0 -34
  359. package/src/pipeline/stages/tagImage/tagImageExecutionDetails.html +0 -38
  360. package/src/pipeline/stages/tagImage/tagImageStage.html +0 -10
  361. package/src/reactShims/aws.react.injector.ts +0 -25
  362. package/src/reactShims/aws.react.module.ts +0 -12
  363. package/src/reactShims/index.ts +0 -1
  364. package/src/securityGroup/clone/cloneSecurityGroup.controller.js +0 -106
  365. package/src/securityGroup/clone/cloneSecurityGroup.html +0 -19
  366. package/src/securityGroup/configure/CreateSecurityGroup.controller.spec.js +0 -307
  367. package/src/securityGroup/configure/CreateSecurityGroupCtrl.js +0 -47
  368. package/src/securityGroup/configure/EditSecurityGroupCtrl.js +0 -115
  369. package/src/securityGroup/configure/configSecurityGroup.mixin.controller.js +0 -366
  370. package/src/securityGroup/configure/createSecurityGroup.html +0 -19
  371. package/src/securityGroup/configure/createSecurityGroupIngress.html +0 -100
  372. package/src/securityGroup/configure/createSecurityGroupProperties.html +0 -123
  373. package/src/securityGroup/configure/editSecurityGroup.html +0 -20
  374. package/src/securityGroup/configure/ingressRuleGroupSelector.component.html +0 -77
  375. package/src/securityGroup/configure/ingressRuleGroupSelector.component.less +0 -6
  376. package/src/securityGroup/configure/ingressRuleGroupSelector.component.ts +0 -190
  377. package/src/securityGroup/configure/securityGroupDetailsCustom.component.ts +0 -16
  378. package/src/securityGroup/configure/securityGroupDetailsCustom.tsx +0 -16
  379. package/src/securityGroup/details/securityGroupDetail.controller.js +0 -249
  380. package/src/securityGroup/details/securityGroupDetail.html +0 -114
  381. package/src/securityGroup/details/securityGroupIpRangeRules.component.ts +0 -12
  382. package/src/securityGroup/securityGroup.module.ts +0 -26
  383. package/src/securityGroup/securityGroup.transformer.js +0 -48
  384. package/src/serverGroup/configure/serverGroupConfiguration.service.spec.ts +0 -478
  385. package/src/serverGroup/details/advancedSettings/editAsgAdvancedSettings.modal.controller.js +0 -47
  386. package/src/serverGroup/details/advancedSettings/editAsgAdvancedSettings.modal.html +0 -79
  387. package/src/serverGroup/details/rollback/rollbackServerGroup.controller.js +0 -146
  388. package/src/serverGroup/details/rollback/rollbackServerGroup.html +0 -139
  389. package/src/serverGroup/details/scalingPolicy/createScalingPolicyButton.component.ts +0 -15
  390. package/src/serverGroup/details/scalingPolicy/scalingPolicy.module.ts +0 -6
  391. package/src/serverGroup/details/scalingPolicy/scalingPolicySummary.component.ts +0 -14
  392. package/src/serverGroup/details/scalingPolicy/upsert/alarm/dimensionsEditor.less +0 -18
  393. package/src/serverGroup/details/scalingProcesses/modifyScalingProcesses.controller.js +0 -95
  394. package/src/serverGroup/details/scalingProcesses/modifyScalingProcesses.controller.spec.js +0 -106
  395. package/src/serverGroup/details/scalingProcesses/modifyScalingProcesses.html +0 -30
  396. package/src/serverGroup/details/scheduledAction/editScheduledActions.modal.controller.js +0 -70
  397. package/src/serverGroup/details/scheduledAction/editScheduledActions.modal.html +0 -89
  398. package/src/serverGroup/details/securityGroup/editSecurityGroups.modal.controller.js +0 -95
  399. package/src/serverGroup/details/securityGroup/editSecurityGroups.modal.html +0 -40
  400. package/src/serverGroup/details/serverGroupDetails.module.ts +0 -18
  401. package/src/serverGroup/serverGroup.transformer.spec.ts +0 -185
  402. package/src/subnet/SubnetSelectInput.spec.tsx +0 -91
  403. package/src/subnet/subnet.renderer.ts +0 -12
  404. package/src/vpc/vpc.module.ts +0 -9
@@ -1,586 +0,0 @@
1
- 'use strict';
2
-
3
- import UIROUTER_ANGULARJS from '@uirouter/angularjs';
4
- import { module } from 'angular';
5
- import ANGULAR_UI_BOOTSTRAP from 'angular-ui-bootstrap';
6
- import _ from 'lodash';
7
-
8
- import {
9
- CloudProviderRegistry,
10
- ConfirmationModalService,
11
- FirewallLabels,
12
- InstanceReader,
13
- RecentHistoryService,
14
- SETTINGS,
15
- } from '@spinnaker/core';
16
-
17
- import { AmazonInstanceWriter } from '../amazon.instance.write.service';
18
- import { AWSProviderSettings } from '../../aws.settings';
19
- import { applyHealthCheckInfoToTargetGroups, getAllTargetGroups } from './utils';
20
-
21
- export const AMAZON_INSTANCE_DETAILS_INSTANCE_DETAILS_CONTROLLER = 'spinnaker.amazon.instance.details.controller';
22
- export const name = AMAZON_INSTANCE_DETAILS_INSTANCE_DETAILS_CONTROLLER; // for backwards compatibility
23
- module(AMAZON_INSTANCE_DETAILS_INSTANCE_DETAILS_CONTROLLER, [UIROUTER_ANGULARJS, ANGULAR_UI_BOOTSTRAP]).controller(
24
- 'awsInstanceDetailsCtrl',
25
- [
26
- '$scope',
27
- '$state',
28
- 'instance',
29
- 'app',
30
- 'moniker',
31
- 'environment',
32
- '$q',
33
- 'overrides',
34
- function ($scope, $state, instance, app, moniker, environment, $q, overrides) {
35
- $scope.isDisabled = !AWSProviderSettings.adHocInfraWritesEnabled;
36
-
37
- // needed for standalone instances
38
- $scope.detailsTemplateUrl = CloudProviderRegistry.getValue('aws', 'instance.detailsTemplateUrl');
39
-
40
- $scope.state = {
41
- loading: true,
42
- standalone: app.isStandalone,
43
- instancePort: _.get(app, 'attributes.instancePort') || SETTINGS.defaultInstancePort || 80,
44
- };
45
-
46
- $scope.application = app;
47
- $scope.moniker = moniker;
48
- $scope.environment = environment;
49
-
50
- $scope.securityGroupsLabel = FirewallLabels.get('Firewalls');
51
-
52
- function extractHealthMetrics(instance, latest) {
53
- // do not backfill on standalone instances
54
- if (app.isStandalone) {
55
- instance.health = latest.health;
56
- }
57
-
58
- instance.health = instance.health || [];
59
- const displayableMetrics = instance.health.filter(function (metric) {
60
- return metric.type !== 'Amazon' || metric.state !== 'Unknown';
61
- });
62
-
63
- if (!app.isStandalone) {
64
- // augment with target group healthcheck data
65
- const targetGroups = getAllTargetGroups(
66
- app.loadBalancers.data.filter(function (loadBalancer) {
67
- return loadBalancer.cloudProvider === 'aws';
68
- }),
69
- );
70
- applyHealthCheckInfoToTargetGroups(displayableMetrics, targetGroups, instance.account);
71
- }
72
-
73
- // backfill details where applicable
74
- if (latest.health) {
75
- displayableMetrics.forEach(function (metric) {
76
- const detailsMatch = latest.health.filter(function (latestHealth) {
77
- return latestHealth.type === metric.type;
78
- });
79
- if (detailsMatch.length) {
80
- _.defaults(metric, detailsMatch[0]);
81
- }
82
- });
83
- }
84
- $scope.healthMetrics = displayableMetrics;
85
- }
86
-
87
- function retrieveInstance() {
88
- const extraData = {};
89
- let instanceSummary, loadBalancers, targetGroups, account, region, vpcId, serverGroupDisabled;
90
- if (!app.serverGroups) {
91
- // standalone instance
92
- instanceSummary = { id: instance.instanceId }; // terminate call expects `id` to be populated
93
- loadBalancers = [];
94
- targetGroups = [];
95
- account = instance.account;
96
- region = instance.region;
97
- } else {
98
- app.serverGroups.data.some(function (serverGroup) {
99
- return serverGroup.instances.some(function (possibleInstance) {
100
- if (possibleInstance.id === instance.instanceId) {
101
- instanceSummary = possibleInstance;
102
- loadBalancers = serverGroup.loadBalancers;
103
- targetGroups = serverGroup.targetGroups;
104
- account = serverGroup.account;
105
- region = serverGroup.region;
106
- vpcId = serverGroup.vpcId;
107
- serverGroupDisabled = serverGroup.isDisabled;
108
- extraData.serverGroup = serverGroup.name;
109
- extraData.vpcId = serverGroup.vpcId;
110
- return true;
111
- }
112
- });
113
- });
114
- if (!instanceSummary) {
115
- // perhaps it is in a server group that is part of another app
116
- app.loadBalancers.data.some(function (loadBalancer) {
117
- return (
118
- loadBalancer.instances.some(function (possibleInstance) {
119
- if (possibleInstance.id === instance.instanceId) {
120
- instanceSummary = possibleInstance;
121
- loadBalancers = [loadBalancer.name];
122
- account = loadBalancer.account;
123
- region = loadBalancer.region;
124
- vpcId = loadBalancer.vpcId;
125
- return true;
126
- }
127
- }) ||
128
- loadBalancer.targetGroups.some(function (targetGroup) {
129
- return targetGroup.instances.some(function (possibleInstance) {
130
- if (possibleInstance.id === instance.instanceId) {
131
- instanceSummary = possibleInstance;
132
- targetGroups = [targetGroup.name];
133
- account = loadBalancer.account;
134
- region = loadBalancer.region;
135
- vpcId = loadBalancer.vpcId;
136
- return true;
137
- }
138
- });
139
- })
140
- );
141
- });
142
- if (!instanceSummary) {
143
- // perhaps it is in a disabled server group via a load balancer
144
- app.loadBalancers.data.some(function (loadBalancer) {
145
- return (
146
- loadBalancer.serverGroups.some(function (serverGroup) {
147
- if (!serverGroup.isDisabled) {
148
- return false;
149
- }
150
- return serverGroup.instances.some(function (possibleInstance) {
151
- if (possibleInstance.id === instance.instanceId) {
152
- instanceSummary = possibleInstance;
153
- loadBalancers = [loadBalancer.name];
154
- account = loadBalancer.account;
155
- region = loadBalancer.region;
156
- vpcId = loadBalancer.vpcId;
157
- return true;
158
- }
159
- });
160
- }) ||
161
- loadBalancer.targetGroups.some(function (targetGroup) {
162
- targetGroup.serverGroups.some(function (serverGroup) {
163
- if (!serverGroup.isDisabled) {
164
- return false;
165
- }
166
- return serverGroup.instances.some(function (possibleInstance) {
167
- if (possibleInstance.id === instance.instanceId) {
168
- instanceSummary = possibleInstance;
169
- loadBalancers = [loadBalancer.name];
170
- account = loadBalancer.account;
171
- region = loadBalancer.region;
172
- vpcId = loadBalancer.vpcId;
173
- return true;
174
- }
175
- });
176
- });
177
- })
178
- );
179
- });
180
- }
181
- }
182
- }
183
-
184
- if (instanceSummary && account && region) {
185
- instanceSummary.account = account;
186
- extraData.account = account;
187
- extraData.region = region;
188
- RecentHistoryService.addExtraDataToLatest('instances', extraData);
189
- return InstanceReader.getInstanceDetails(account, region, instance.instanceId).then((details) => {
190
- if ($scope.$$destroyed) {
191
- return;
192
- }
193
- $scope.state.loading = false;
194
- extractHealthMetrics(instanceSummary, details);
195
- $scope.instance = _.defaults(details, instanceSummary);
196
- $scope.instance.account = account;
197
- $scope.instance.region = region;
198
- $scope.instance.vpcId = vpcId;
199
- $scope.instance.serverGroupDisabled = serverGroupDisabled;
200
- $scope.instance.loadBalancers = loadBalancers;
201
- $scope.instance.targetGroups = targetGroups;
202
- if ($scope.instance.networkInterfaces) {
203
- $scope.instance.ipv6Addresses = _.flatMap($scope.instance.networkInterfaces, (i) =>
204
- i.ipv6Addresses.map((a) => ({
205
- ip: a.ipv6Address,
206
- url: `http://${a.ipv6Address}:${$scope.state.instancePort}`,
207
- })),
208
- );
209
-
210
- const permanentNetworkInterfaces = $scope.instance.networkInterfaces.filter(
211
- (f) => f.attachment.deleteOnTermination === false,
212
- );
213
- if (permanentNetworkInterfaces.length) {
214
- $scope.instance.permanentIps = permanentNetworkInterfaces.map((f) => f.privateIpAddress);
215
- }
216
- }
217
- $scope.baseIpAddress = details.publicDnsName || details.privateIpAddress;
218
- if (overrides.instanceDetailsLoaded) {
219
- overrides.instanceDetailsLoaded();
220
- }
221
- }, autoClose);
222
- }
223
-
224
- if (!instanceSummary) {
225
- $scope.instanceIdNotFound = instance.instanceId;
226
- $scope.state.loading = false;
227
- }
228
-
229
- return $q.when(null);
230
- }
231
-
232
- function autoClose() {
233
- if ($scope.$$destroyed) {
234
- return;
235
- }
236
- if (app.isStandalone) {
237
- $scope.state.loading = false;
238
- $scope.instanceIdNotFound = instance.instanceId;
239
- $scope.state.notFoundStandalone = true;
240
- RecentHistoryService.removeLastItem('instances');
241
- } else {
242
- $state.go('^', { allowModalToStayOpen: true }, { location: 'replace' });
243
- }
244
- }
245
-
246
- this.canDeregisterFromLoadBalancer = function () {
247
- const healthMetrics = $scope.instance.health || [];
248
- return healthMetrics.some(function (health) {
249
- return health.type === 'LoadBalancer';
250
- });
251
- };
252
-
253
- this.canRegisterWithLoadBalancer = function () {
254
- const instance = $scope.instance;
255
- const healthMetrics = instance.health || [];
256
- if (!instance.loadBalancers || !instance.loadBalancers.length) {
257
- return false;
258
- }
259
- const outOfService = healthMetrics.some(function (health) {
260
- return health.type === 'LoadBalancer' && health.state === 'OutOfService';
261
- });
262
- const hasLoadBalancerHealth = healthMetrics.some(function (health) {
263
- return health.type === 'LoadBalancer';
264
- });
265
- return outOfService || !hasLoadBalancerHealth;
266
- };
267
-
268
- this.canDeregisterFromTargetGroup = function () {
269
- const healthMetrics = $scope.instance.health || [];
270
- return healthMetrics.some(function (health) {
271
- return health.type === 'TargetGroup' && health.state !== 'OutOfService';
272
- });
273
- };
274
-
275
- this.canRegisterWithTargetGroup = function () {
276
- const instance = $scope.instance;
277
- const healthMetrics = instance.health || [];
278
- if (!instance.targetGroups || !instance.targetGroups.length) {
279
- return false;
280
- }
281
- const outOfService = healthMetrics.some(function (health) {
282
- return health.type === 'TargetGroup' && health.state === 'OutOfService';
283
- });
284
- const hasTargetGroupHealth = healthMetrics.some(function (health) {
285
- return health.type === 'TargetGroup';
286
- });
287
- return outOfService || !hasTargetGroupHealth;
288
- };
289
-
290
- this.canRegisterWithDiscovery = function () {
291
- const instance = $scope.instance;
292
- const healthMetrics = instance.health || [];
293
- const discoveryHealth = healthMetrics.filter(function (health) {
294
- return health.type === 'Discovery';
295
- });
296
- return discoveryHealth.length ? discoveryHealth[0].state === 'OutOfService' : false;
297
- };
298
-
299
- this.terminateInstance = function terminateInstance() {
300
- const instance = $scope.instance;
301
-
302
- const taskMonitor = {
303
- application: app,
304
- title: 'Terminating ' + instance.instanceId,
305
- onTaskComplete: function () {
306
- if ($state.includes('**.instanceDetails', { instanceId: instance.instanceId })) {
307
- $state.go('^');
308
- }
309
- },
310
- };
311
-
312
- const submitMethod = function () {
313
- return AmazonInstanceWriter.terminateInstance(instance, app);
314
- };
315
-
316
- ConfirmationModalService.confirm({
317
- header: 'Really terminate ' + instance.instanceId + '?',
318
- buttonText: 'Terminate ' + instance.instanceId,
319
- account: instance.account,
320
- taskMonitorConfig: taskMonitor,
321
- submitMethod: submitMethod,
322
- });
323
- };
324
-
325
- this.terminateInstanceAndShrinkServerGroup = function terminateInstanceAndShrinkServerGroup() {
326
- const instance = $scope.instance;
327
-
328
- const taskMonitor = {
329
- application: app,
330
- title: 'Terminating ' + instance.instanceId + ' and shrinking server group',
331
- onTaskComplete: function () {
332
- if ($state.includes('**.instanceDetails', { instanceId: instance.instanceId })) {
333
- $state.go('^');
334
- }
335
- },
336
- };
337
-
338
- const submitMethod = function () {
339
- return AmazonInstanceWriter.terminateInstanceAndShrinkServerGroup(instance, app);
340
- };
341
-
342
- ConfirmationModalService.confirm({
343
- header: 'Really terminate ' + instance.instanceId + ' and shrink ' + instance.serverGroup + '?',
344
- buttonText: 'Terminate ' + instance.instanceId + ' and shrink ' + instance.serverGroup,
345
- account: instance.account,
346
- taskMonitorConfig: taskMonitor,
347
- submitMethod: submitMethod,
348
- });
349
- };
350
-
351
- this.rebootInstance = function rebootInstance() {
352
- const instance = $scope.instance;
353
-
354
- const taskMonitor = {
355
- application: app,
356
- title: 'Rebooting ' + instance.instanceId,
357
- };
358
-
359
- const submitMethod = (params = {}) => {
360
- if (app.attributes && app.attributes.platformHealthOnlyShowOverride && app.attributes.platformHealthOnly) {
361
- params.interestingHealthProviderNames = ['Amazon'];
362
- }
363
-
364
- return AmazonInstanceWriter.rebootInstance(instance, app, params);
365
- };
366
-
367
- ConfirmationModalService.confirm({
368
- header: 'Really reboot ' + instance.instanceId + '?',
369
- buttonText: 'Reboot ' + instance.instanceId,
370
- account: instance.account,
371
- platformHealthOnlyShowOverride: app.attributes.platformHealthOnlyShowOverride,
372
- platformHealthType: 'Amazon',
373
- taskMonitorConfig: taskMonitor,
374
- submitMethod: submitMethod,
375
- });
376
- };
377
-
378
- this.registerInstanceWithLoadBalancer = function registerInstanceWithLoadBalancer() {
379
- const instance = $scope.instance;
380
- const loadBalancerNames = instance.loadBalancers.join(' and ');
381
-
382
- const taskMonitor = {
383
- application: app,
384
- title: 'Registering ' + instance.instanceId + ' with ' + loadBalancerNames,
385
- };
386
-
387
- const submitMethod = function () {
388
- return AmazonInstanceWriter.registerInstanceWithLoadBalancer(instance, app);
389
- };
390
-
391
- ConfirmationModalService.confirm({
392
- header: 'Really register ' + instance.instanceId + ' with ' + loadBalancerNames + '?',
393
- buttonText: 'Register ' + instance.instanceId,
394
- account: instance.account,
395
- taskMonitorConfig: taskMonitor,
396
- submitMethod: submitMethod,
397
- });
398
- };
399
-
400
- this.deregisterInstanceFromLoadBalancer = function deregisterInstanceFromLoadBalancer() {
401
- const instance = $scope.instance;
402
- const loadBalancerNames = instance.loadBalancers.join(' and ');
403
-
404
- const taskMonitor = {
405
- application: app,
406
- title: 'Deregistering ' + instance.instanceId + ' from ' + loadBalancerNames,
407
- };
408
-
409
- const submitMethod = function () {
410
- return AmazonInstanceWriter.deregisterInstanceFromLoadBalancer(instance, app);
411
- };
412
-
413
- ConfirmationModalService.confirm({
414
- header: 'Really deregister ' + instance.instanceId + ' from ' + loadBalancerNames + '?',
415
- buttonText: 'Deregister ' + instance.instanceId,
416
- account: instance.account,
417
- taskMonitorConfig: taskMonitor,
418
- submitMethod: submitMethod,
419
- });
420
- };
421
-
422
- this.registerInstanceWithTargetGroup = function registerInstanceWithTargetGroup() {
423
- const instance = $scope.instance;
424
- const targetGroupNames = instance.targetGroups.join(' and ');
425
-
426
- const taskMonitor = {
427
- application: app,
428
- title: 'Registering ' + instance.instanceId + ' with ' + targetGroupNames,
429
- };
430
-
431
- const submitMethod = function () {
432
- return AmazonInstanceWriter.registerInstanceWithTargetGroup(instance, app);
433
- };
434
-
435
- ConfirmationModalService.confirm({
436
- header: 'Really register ' + instance.instanceId + ' with ' + targetGroupNames + '?',
437
- buttonText: 'Register ' + instance.instanceId,
438
- account: instance.account,
439
- taskMonitorConfig: taskMonitor,
440
- submitMethod: submitMethod,
441
- });
442
- };
443
-
444
- this.deregisterInstanceFromTargetGroup = function deregisterInstanceFromTargetGroup() {
445
- const instance = $scope.instance;
446
- const targetGroupNames = instance.targetGroups.join(' and ');
447
-
448
- const taskMonitor = {
449
- application: app,
450
- title: 'Deregistering ' + instance.instanceId + ' from ' + targetGroupNames,
451
- };
452
-
453
- const submitMethod = function () {
454
- return AmazonInstanceWriter.deregisterInstanceFromTargetGroup(instance, app);
455
- };
456
-
457
- ConfirmationModalService.confirm({
458
- header: 'Really deregister ' + instance.instanceId + ' from ' + targetGroupNames + '?',
459
- buttonText: 'Deregister ' + instance.instanceId,
460
- account: instance.account,
461
- taskMonitorConfig: taskMonitor,
462
- submitMethod: submitMethod,
463
- });
464
- };
465
-
466
- this.enableInstanceInDiscovery = function enableInstanceInDiscovery() {
467
- const instance = $scope.instance;
468
-
469
- const taskMonitor = {
470
- application: app,
471
- title: 'Enabling ' + instance.instanceId + ' in discovery',
472
- };
473
-
474
- const submitMethod = function () {
475
- return AmazonInstanceWriter.enableInstanceInDiscovery(instance, app);
476
- };
477
-
478
- ConfirmationModalService.confirm({
479
- header: 'Really enable ' + instance.instanceId + ' in discovery?',
480
- buttonText: 'Enable ' + instance.instanceId,
481
- account: instance.account,
482
- taskMonitorConfig: taskMonitor,
483
- submitMethod: submitMethod,
484
- });
485
- };
486
-
487
- this.disableInstanceInDiscovery = function disableInstanceInDiscovery() {
488
- const instance = $scope.instance;
489
-
490
- const taskMonitor = {
491
- application: app,
492
- title: 'Disabling ' + instance.instanceId + ' in discovery',
493
- };
494
-
495
- const submitMethod = function () {
496
- return AmazonInstanceWriter.disableInstanceInDiscovery(instance, app);
497
- };
498
-
499
- ConfirmationModalService.confirm({
500
- header: 'Really disable ' + instance.instanceId + ' in discovery?',
501
- buttonText: 'Disable ' + instance.instanceId,
502
- account: instance.account,
503
- taskMonitorConfig: taskMonitor,
504
- submitMethod: submitMethod,
505
- });
506
- };
507
-
508
- this.hasHealthState = function hasHealthState(healthProviderType, state) {
509
- const instance = $scope.instance;
510
- const healthMetrics = instance.health || [];
511
- return healthMetrics.some(function (health) {
512
- return health.type === healthProviderType && health.state === state;
513
- });
514
- };
515
-
516
- const constructInstanceActions = (instance) => {
517
- const constantActions = [
518
- { label: 'Reboot', triggerAction: this.rebootInstance },
519
- { label: 'Terminate', triggerAction: this.terminateInstance },
520
- { label: 'Terminate and Shrink Server Group', triggerAction: this.terminateInstanceAndShrinkServerGroup },
521
- ];
522
- const conditionalActions = [];
523
-
524
- if (this.canRegisterWithDiscovery() && !instance.serverGroupDisabled) {
525
- conditionalActions.push({
526
- label: 'Enable In Discovery',
527
- triggerAction: this.enableInstanceInDiscovery,
528
- });
529
- }
530
-
531
- if (this.hasHealthState('Discovery', 'Up') || this.hasHealthState('Discovery', 'Down')) {
532
- conditionalActions.push({
533
- label: 'Disable in Discovery',
534
- triggerAction: this.disableInstanceInDiscovery,
535
- });
536
- }
537
-
538
- if (this.canRegisterWithLoadBalancer()) {
539
- conditionalActions.push({
540
- label: 'Register with Load Balancer',
541
- triggerAction: this.registerInstanceWithLoadBalancer,
542
- });
543
- }
544
-
545
- if (this.canDeregisterFromLoadBalancer()) {
546
- conditionalActions.push({
547
- label: 'Deregister from Load Balancer',
548
- triggerAction: this.deregisterInstanceFromLoadBalancer,
549
- });
550
- }
551
-
552
- if (this.canRegisterWithTargetGroup()) {
553
- conditionalActions.push({
554
- label: 'Register with Target Group',
555
- triggerAction: this.registerInstanceWithTargetGroup,
556
- });
557
- }
558
-
559
- if (this.canDeregisterFromTargetGroup()) {
560
- conditionalActions.push({
561
- label: 'Deregister from Target Group',
562
- triggerAction: this.deregisterInstanceFromTargetGroup,
563
- });
564
- }
565
- return conditionalActions.concat(constantActions);
566
- };
567
-
568
- const initialize = app.isStandalone
569
- ? retrieveInstance()
570
- : $q.all([app.serverGroups.ready(), app.loadBalancers.ready()]).then(retrieveInstance);
571
-
572
- initialize.then(() => {
573
- $scope.instanceActions = constructInstanceActions($scope.instance);
574
- // Two things to look out for here:
575
- // 1. If the retrieveInstance call completes *after* the user has navigated away from the view, there
576
- // is no point in subscribing to the refresh
577
- // 2. If this is a standalone instance, there is no application that will refresh
578
- if (!$scope.$$destroyed && !app.isStandalone) {
579
- app.serverGroups.onRefresh($scope, retrieveInstance);
580
- }
581
- });
582
-
583
- $scope.account = instance.account;
584
- },
585
- ],
586
- );