@spinnaker/google 0.0.0-main-2

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 (438) hide show
  1. package/CHANGELOG.md +1198 -0
  2. package/LICENSE.txt +203 -0
  3. package/dist/address/address.reader.d.ts +15 -0
  4. package/dist/autoscalingPolicy/GceAutoScalingFieldLayout.d.ts +4 -0
  5. package/dist/autoscalingPolicy/IGceAutoscalingPolicy.d.ts +19 -0
  6. package/dist/autoscalingPolicy/autoscalingPolicy.write.service.d.ts +2 -0
  7. package/dist/autoscalingPolicy/components/basicSettings/basicSettings.component.d.ts +2 -0
  8. package/dist/autoscalingPolicy/components/metricSettings/GcePredictiveAutoscaling.d.ts +1 -0
  9. package/dist/autoscalingPolicy/components/metricSettings/metricSettings.component.d.ts +2 -0
  10. package/dist/autoscalingPolicy/components/scalingSchedules/scalingSchedules.component.d.ts +2 -0
  11. package/dist/autoscalingPolicy/components/scalingSchedules/timeZoneSelect.d.ts +13 -0
  12. package/dist/autoscalingPolicy/index.d.ts +2 -0
  13. package/dist/backendService/backendService.reader.d.ts +2 -0
  14. package/dist/cache/cacheConfigurer.service.d.ts +2 -0
  15. package/dist/cache/cacheRefresh.component.d.ts +1 -0
  16. package/dist/certificate/certificate.reader.d.ts +10 -0
  17. package/dist/common/footer.directive.d.ts +2 -0
  18. package/dist/common/xpnNaming.gce.service.d.ts +2 -0
  19. package/dist/domain/autoHealingPolicy.d.ts +12 -0
  20. package/dist/domain/backendService.d.ts +13 -0
  21. package/dist/domain/disk.d.ts +10 -0
  22. package/dist/domain/healthCheck.d.ts +18 -0
  23. package/dist/domain/index.d.ts +8 -0
  24. package/dist/domain/loadBalancer.d.ts +42 -0
  25. package/dist/domain/network.d.ts +10 -0
  26. package/dist/domain/serverGroup.d.ts +5 -0
  27. package/dist/domain/subnet.d.ts +12 -0
  28. package/dist/gce.logo2ae85d8704b1d6b8.png +0 -0
  29. package/dist/gce.module.d.ts +3 -0
  30. package/dist/gce.settings.d.ts +14 -0
  31. package/dist/gceNetworkSelectField.directive.d.ts +2 -0
  32. package/dist/gceRegionSelectField.directive.d.ts +2 -0
  33. package/dist/healthCheck/healthCheck.read.service.d.ts +5 -0
  34. package/dist/healthCheck/healthCheckUtils.d.ts +13 -0
  35. package/dist/help/gce.help.d.ts +1 -0
  36. package/dist/image/ImageSelect.d.ts +14 -0
  37. package/dist/image/image.reader.d.ts +11 -0
  38. package/dist/image/index.d.ts +2 -0
  39. package/dist/index.d.ts +1 -0
  40. package/dist/index.js +17717 -0
  41. package/dist/index.js.map +1 -0
  42. package/dist/instance/custom/customInstance.filter.d.ts +2 -0
  43. package/dist/instance/custom/customInstanceBuilder.gce.service.d.ts +2 -0
  44. package/dist/instance/details/instance.details.controller.d.ts +2 -0
  45. package/dist/instance/gceInstanceType.service.d.ts +2 -0
  46. package/dist/instance/gceInstanceTypeDisks.d.ts +15 -0
  47. package/dist/instance/gceMultiInstanceTask.transformer.d.ts +2 -0
  48. package/dist/interceptors/iap.interceptor.d.ts +8 -0
  49. package/dist/loadBalancer/configure/choice/gceLoadBalancerChoice.modal.d.ts +1 -0
  50. package/dist/loadBalancer/configure/choice/loadBalancerTypeToWizardMap.constant.d.ts +10 -0
  51. package/dist/loadBalancer/configure/common/addressSelector.component.d.ts +1 -0
  52. package/dist/loadBalancer/configure/common/commonLoadBalancer.controller.d.ts +17 -0
  53. package/dist/loadBalancer/configure/common/commonLoadBalancerCommandBuilder.service.d.ts +23 -0
  54. package/dist/loadBalancer/configure/common/healthCheck.component.d.ts +1 -0
  55. package/dist/loadBalancer/configure/common/sessionAffinityNameMaps.d.ts +5 -0
  56. package/dist/loadBalancer/configure/http/backendService/backendService.component.d.ts +2 -0
  57. package/dist/loadBalancer/configure/http/basicSettings/basicSettings.component.d.ts +2 -0
  58. package/dist/loadBalancer/configure/http/commandBuilder.service.d.ts +2 -0
  59. package/dist/loadBalancer/configure/http/createHttpLoadBalancer.controller.d.ts +2 -0
  60. package/dist/loadBalancer/configure/http/healthCheck/healthCheck.component.d.ts +2 -0
  61. package/dist/loadBalancer/configure/http/hostRule/hostRule.component.d.ts +2 -0
  62. package/dist/loadBalancer/configure/http/httpLoadBalancer.write.service.d.ts +2 -0
  63. package/dist/loadBalancer/configure/http/listeners/listener.component.d.ts +2 -0
  64. package/dist/loadBalancer/configure/http/pathRule/pathRule.component.d.ts +2 -0
  65. package/dist/loadBalancer/configure/http/templates.d.ts +42 -0
  66. package/dist/loadBalancer/configure/http/transformer.service.d.ts +2 -0
  67. package/dist/loadBalancer/configure/internal/gceCreateInternalLoadBalancer.controller.d.ts +1 -0
  68. package/dist/loadBalancer/configure/internalhttp/createInternalHttpLoadBalancer.controller.d.ts +3 -0
  69. package/dist/loadBalancer/configure/network/createLoadBalancer.controller.d.ts +2 -0
  70. package/dist/loadBalancer/configure/ssl/gceCreateSslLoadBalancer.controller.d.ts +1 -0
  71. package/dist/loadBalancer/configure/tcp/gceCreateTcpLoadBalancer.controller.d.ts +1 -0
  72. package/dist/loadBalancer/details/backendService/backendService.component.d.ts +1 -0
  73. package/dist/loadBalancer/details/backendService/sessionAffinity.filter.d.ts +1 -0
  74. package/dist/loadBalancer/details/deleteModal/deleteModal.controller.d.ts +1 -0
  75. package/dist/loadBalancer/details/healthCheck/healthCheck.component.d.ts +2 -0
  76. package/dist/loadBalancer/details/hostAndPathRules/hostAndPathRules.controller.d.ts +2 -0
  77. package/dist/loadBalancer/details/hostAndPathRules/hostAndPathRules.service.d.ts +2 -0
  78. package/dist/loadBalancer/details/hostAndPathRules/hostAndPathRulesButton.component.d.ts +2 -0
  79. package/dist/loadBalancer/details/loadBalancerDetail.controller.d.ts +2 -0
  80. package/dist/loadBalancer/details/loadBalancerType/loadBalancerType.component.d.ts +2 -0
  81. package/dist/loadBalancer/httpLoadBalancerUtils.service.d.ts +7 -0
  82. package/dist/loadBalancer/loadBalancer.setTransformer.d.ts +11 -0
  83. package/dist/loadBalancer/loadBalancer.transformer.d.ts +2 -0
  84. package/dist/pipeline/stages/bake/bakeExecutionDetails.controller.d.ts +2 -0
  85. package/dist/pipeline/stages/bake/gceBakeStage.d.ts +2 -0
  86. package/dist/pipeline/stages/cloneServerGroup/gceCloneServerGroupStage.d.ts +2 -0
  87. package/dist/pipeline/stages/destroyAsg/gceDestroyAsgStage.d.ts +2 -0
  88. package/dist/pipeline/stages/disableAsg/gceDisableAsgStage.d.ts +2 -0
  89. package/dist/pipeline/stages/disableCluster/gceDisableClusterStage.d.ts +2 -0
  90. package/dist/pipeline/stages/enableAsg/gceEnableAsgStage.d.ts +2 -0
  91. package/dist/pipeline/stages/findAmi/gceFindAmiStage.d.ts +2 -0
  92. package/dist/pipeline/stages/findImageFromTags/gceFindImageFromTagsStage.d.ts +2 -0
  93. package/dist/pipeline/stages/resizeAsg/gceResizeAsgStage.d.ts +2 -0
  94. package/dist/pipeline/stages/scaleDownCluster/gceScaleDownClusterStage.d.ts +2 -0
  95. package/dist/pipeline/stages/shrinkCluster/gceShrinkClusterStage.d.ts +2 -0
  96. package/dist/pipeline/stages/tagImage/gceTagImageStage.d.ts +2 -0
  97. package/dist/securityGroup/clone/cloneSecurityGroup.controller.d.ts +2 -0
  98. package/dist/securityGroup/configure/ConfigSecurityGroupMixin.controller.d.ts +2 -0
  99. package/dist/securityGroup/configure/createSecurityGroup.controller.d.ts +2 -0
  100. package/dist/securityGroup/configure/editSecurityGroup.controller.d.ts +2 -0
  101. package/dist/securityGroup/details/securityGroupDetail.controller.d.ts +2 -0
  102. package/dist/securityGroup/securityGroup.reader.d.ts +2 -0
  103. package/dist/securityGroup/securityGroup.transformer.d.ts +2 -0
  104. package/dist/securityGroup/securityGroupHelpText.service.d.ts +13 -0
  105. package/dist/serverGroup/configure/serverGroup.configure.gce.module.d.ts +2 -0
  106. package/dist/serverGroup/configure/serverGroupCommandBuilder.service.d.ts +2 -0
  107. package/dist/serverGroup/configure/serverGroupConfiguration.service.d.ts +2 -0
  108. package/dist/serverGroup/configure/wizard/advancedSettings/GceAcceleratorConfigurer.d.ts +16 -0
  109. package/dist/serverGroup/configure/wizard/advancedSettings/advancedSettingsSelector.directive.d.ts +2 -0
  110. package/dist/serverGroup/configure/wizard/advancedSettings/diskConfigurer.component.d.ts +1 -0
  111. package/dist/serverGroup/configure/wizard/advancedSettings/gceAccelerator.service.d.ts +25 -0
  112. package/dist/serverGroup/configure/wizard/autoHealingPolicy/autoHealingPolicySelector.component.d.ts +1 -0
  113. package/dist/serverGroup/configure/wizard/autoScalingPolicy/autoScalingPolicySelector.component.d.ts +1 -0
  114. package/dist/serverGroup/configure/wizard/capacity/advancedCapacitySelector.component.d.ts +2 -0
  115. package/dist/serverGroup/configure/wizard/capacity/simpleCapacitySelector.component.d.ts +2 -0
  116. package/dist/serverGroup/configure/wizard/cloneServerGroup.gce.controller.d.ts +2 -0
  117. package/dist/serverGroup/configure/wizard/customInstance/CustomInstanceConfigurer.d.ts +26 -0
  118. package/dist/serverGroup/configure/wizard/customInstance/customInstanceConfigurer.component.d.ts +1 -0
  119. package/dist/serverGroup/configure/wizard/hiddenMetadataKeys.value.d.ts +2 -0
  120. package/dist/serverGroup/configure/wizard/loadBalancers/elSevenOptions/backendServiceSelector.component.d.ts +2 -0
  121. package/dist/serverGroup/configure/wizard/loadBalancers/elSevenOptions/elSevenOptionsGenerator.component.d.ts +2 -0
  122. package/dist/serverGroup/configure/wizard/loadBalancers/loadBalancerSelector.directive.d.ts +2 -0
  123. package/dist/serverGroup/configure/wizard/loadBalancingPolicy/loadBalancingPolicySelector.component.d.ts +2 -0
  124. package/dist/serverGroup/configure/wizard/location/basicSettings.controller.d.ts +2 -0
  125. package/dist/serverGroup/configure/wizard/securityGroups/securityGroupSelector.directive.d.ts +2 -0
  126. package/dist/serverGroup/configure/wizard/securityGroups/securityGroupsRemoved.directive.d.ts +2 -0
  127. package/dist/serverGroup/configure/wizard/securityGroups/tagManager.service.d.ts +2 -0
  128. package/dist/serverGroup/configure/wizard/securityGroups/tagSelector.component.d.ts +2 -0
  129. package/dist/serverGroup/configure/wizard/securityGroups/tagSelectorGenerator.component.d.ts +2 -0
  130. package/dist/serverGroup/configure/wizard/zones/regionalSelector.directive.d.ts +2 -0
  131. package/dist/serverGroup/configure/wizard/zones/targetShapeSelector.directive.d.ts +1 -0
  132. package/dist/serverGroup/configure/wizard/zones/zoneSelector.directive.d.ts +2 -0
  133. package/dist/serverGroup/details/ServerGroupDiskDescriptions.d.ts +1 -0
  134. package/dist/serverGroup/details/autoHealingPolicy/addAutoHealingPolicyButton.component.d.ts +1 -0
  135. package/dist/serverGroup/details/autoHealingPolicy/autoHealingPolicy.component.d.ts +1 -0
  136. package/dist/serverGroup/details/autoHealingPolicy/modal/upsertAutoHealingPolicy.modal.controller.d.ts +2 -0
  137. package/dist/serverGroup/details/autoscalingPolicy/addAutoscalingPolicyButton.component.d.ts +2 -0
  138. package/dist/serverGroup/details/autoscalingPolicy/autoscalingPolicy.directive.d.ts +2 -0
  139. package/dist/serverGroup/details/autoscalingPolicy/modal/GceScaleInControls.d.ts +1 -0
  140. package/dist/serverGroup/details/autoscalingPolicy/modal/upsertAutoscalingPolicy.modal.controller.d.ts +2 -0
  141. package/dist/serverGroup/details/resize/resizeAutoscalingPolicy.component.d.ts +2 -0
  142. package/dist/serverGroup/details/resize/resizeCapacity.component.d.ts +2 -0
  143. package/dist/serverGroup/details/resize/resizeServerGroup.controller.d.ts +2 -0
  144. package/dist/serverGroup/details/rollback/rollbackServerGroup.controller.d.ts +2 -0
  145. package/dist/serverGroup/details/serverGroup.details.gce.module.d.ts +2 -0
  146. package/dist/serverGroup/details/serverGroupDetails.gce.controller.d.ts +2 -0
  147. package/dist/serverGroup/details/stateful/MarkDiskStatefulButton.d.ts +10 -0
  148. package/dist/serverGroup/details/stateful/StatefulMIGService.d.ts +7 -0
  149. package/dist/serverGroup/details/stateful/UpdateBootImageButton.d.ts +10 -0
  150. package/dist/serverGroup/serverGroup.transformer.d.ts +2 -0
  151. package/dist/subnet/subnet.renderer.d.ts +2 -0
  152. package/dist/subnet/subnetSelectField.directive.d.ts +2 -0
  153. package/dist/validation/applicationName.validator.d.ts +2 -0
  154. package/package.json +45 -0
  155. package/src/address/address.reader.ts +61 -0
  156. package/src/applicationProviderFields/gceFields.html +13 -0
  157. package/src/autoscalingPolicy/GceAutoScalingFieldLayout.tsx +31 -0
  158. package/src/autoscalingPolicy/IGceAutoscalingPolicy.ts +22 -0
  159. package/src/autoscalingPolicy/autoscalingPolicy.write.service.js +83 -0
  160. package/src/autoscalingPolicy/components/basicSettings/basicSettings.component.html +71 -0
  161. package/src/autoscalingPolicy/components/basicSettings/basicSettings.component.js +20 -0
  162. package/src/autoscalingPolicy/components/metricSettings/GcePredictiveAutoscaling.tsx +54 -0
  163. package/src/autoscalingPolicy/components/metricSettings/metricSettings.component.html +208 -0
  164. package/src/autoscalingPolicy/components/metricSettings/metricSettings.component.js +108 -0
  165. package/src/autoscalingPolicy/components/scalingSchedules/scalingSchedules.component.html +84 -0
  166. package/src/autoscalingPolicy/components/scalingSchedules/scalingSchedules.component.js +61 -0
  167. package/src/autoscalingPolicy/components/scalingSchedules/standardTimezone.json +596 -0
  168. package/src/autoscalingPolicy/components/scalingSchedules/timeZoneSelect.tsx +63 -0
  169. package/src/autoscalingPolicy/gceAutoscalingFieldLayout.less +7 -0
  170. package/src/autoscalingPolicy/index.ts +2 -0
  171. package/src/backendService/backendService.reader.js +28 -0
  172. package/src/cache/cacheConfigurer.service.js +41 -0
  173. package/src/cache/cacheRefresh.component.html +17 -0
  174. package/src/cache/cacheRefresh.component.ts +53 -0
  175. package/src/cache/cacheRefreshTooltip.html +3 -0
  176. package/src/certificate/certificate.reader.ts +31 -0
  177. package/src/common/footer.directive.html +7 -0
  178. package/src/common/footer.directive.js +22 -0
  179. package/src/common/xpnNaming.gce.service.js +35 -0
  180. package/src/domain/autoHealingPolicy.ts +14 -0
  181. package/src/domain/backendService.ts +15 -0
  182. package/src/domain/disk.ts +10 -0
  183. package/src/domain/healthCheck.ts +19 -0
  184. package/src/domain/index.ts +8 -0
  185. package/src/domain/loadBalancer.ts +49 -0
  186. package/src/domain/network.ts +10 -0
  187. package/src/domain/serverGroup.ts +8 -0
  188. package/src/domain/subnet.ts +12 -0
  189. package/src/gce.module.ts +155 -0
  190. package/src/gce.settings.ts +23 -0
  191. package/src/gceNetworkSelectField.directive.js +22 -0
  192. package/src/gceRegionSelectField.directive.js +22 -0
  193. package/src/healthCheck/healthCheck.read.service.ts +55 -0
  194. package/src/healthCheck/healthCheckUtils.spec.ts +80 -0
  195. package/src/healthCheck/healthCheckUtils.ts +47 -0
  196. package/src/help/gce.help.ts +225 -0
  197. package/src/image/ImageSelect.tsx +66 -0
  198. package/src/image/image.reader.ts +19 -0
  199. package/src/image/index.ts +2 -0
  200. package/src/index.ts +1 -0
  201. package/src/instance/custom/customInstance.filter.js +26 -0
  202. package/src/instance/custom/customInstanceBuilder.gce.service.js +153 -0
  203. package/src/instance/details/instance.details.controller.js +518 -0
  204. package/src/instance/details/instance.details.controller.spec.js +27 -0
  205. package/src/instance/details/instanceDetails.html +248 -0
  206. package/src/instance/gceInstanceType.service.js +432 -0
  207. package/src/instance/gceInstanceType.service.spec.js +19 -0
  208. package/src/instance/gceInstanceTypeDisks.ts +261 -0
  209. package/src/instance/gceMultiInstanceTask.transformer.js +32 -0
  210. package/src/interceptors/iap.interceptor.ts +36 -0
  211. package/src/loadBalancer/configure/choice/gceLoadBalancerChoice.modal.html +33 -0
  212. package/src/loadBalancer/configure/choice/gceLoadBalancerChoice.modal.ts +49 -0
  213. package/src/loadBalancer/configure/choice/loadBalancerTypeToWizardMap.constant.ts +58 -0
  214. package/src/loadBalancer/configure/common/addressSelector.component.ts +47 -0
  215. package/src/loadBalancer/configure/common/commonAdvancedSettingsPage.html +32 -0
  216. package/src/loadBalancer/configure/common/commonCreateLoadBalancer.html +41 -0
  217. package/src/loadBalancer/configure/common/commonEditLoadBalancer.html +38 -0
  218. package/src/loadBalancer/configure/common/commonHealthCheckPage.html +16 -0
  219. package/src/loadBalancer/configure/common/commonLoadBalancer.controller.ts +56 -0
  220. package/src/loadBalancer/configure/common/commonLoadBalancerCommandBuilder.service.ts +87 -0
  221. package/src/loadBalancer/configure/common/healthCheck.component.html +164 -0
  222. package/src/loadBalancer/configure/common/healthCheck.component.ts +82 -0
  223. package/src/loadBalancer/configure/common/sessionAffinityNameMaps.ts +18 -0
  224. package/src/loadBalancer/configure/http/backendService/backendService.component.html +157 -0
  225. package/src/loadBalancer/configure/http/backendService/backendService.component.js +80 -0
  226. package/src/loadBalancer/configure/http/backendService/backendServices.html +57 -0
  227. package/src/loadBalancer/configure/http/basicSettings/basicSettings.component.html +105 -0
  228. package/src/loadBalancer/configure/http/basicSettings/basicSettings.component.js +46 -0
  229. package/src/loadBalancer/configure/http/basicSettings/basicSettings.html +6 -0
  230. package/src/loadBalancer/configure/http/commandBuilder.service.js +404 -0
  231. package/src/loadBalancer/configure/http/createHttpLoadBalancer.controller.js +162 -0
  232. package/src/loadBalancer/configure/http/createHttpLoadBalancer.html +39 -0
  233. package/src/loadBalancer/configure/http/defaultService/defaultService.html +24 -0
  234. package/src/loadBalancer/configure/http/editHttpLoadBalancer.html +36 -0
  235. package/src/loadBalancer/configure/http/healthCheck/healthCheck.component.html +169 -0
  236. package/src/loadBalancer/configure/http/healthCheck/healthCheck.component.js +69 -0
  237. package/src/loadBalancer/configure/http/healthCheck/healthChecks.html +55 -0
  238. package/src/loadBalancer/configure/http/hostRule/hostRule.component.html +60 -0
  239. package/src/loadBalancer/configure/http/hostRule/hostRule.component.js +35 -0
  240. package/src/loadBalancer/configure/http/hostRule/hostRules.html +16 -0
  241. package/src/loadBalancer/configure/http/httpLoadBalancer.write.service.js +56 -0
  242. package/src/loadBalancer/configure/http/httpLoadBalancerWizard.component.less +24 -0
  243. package/src/loadBalancer/configure/http/listeners/listener.component.html +190 -0
  244. package/src/loadBalancer/configure/http/listeners/listener.component.js +82 -0
  245. package/src/loadBalancer/configure/http/listeners/listeners.html +17 -0
  246. package/src/loadBalancer/configure/http/pathRule/pathRule.component.html +51 -0
  247. package/src/loadBalancer/configure/http/pathRule/pathRule.component.js +16 -0
  248. package/src/loadBalancer/configure/http/templates.ts +48 -0
  249. package/src/loadBalancer/configure/http/transformer.service.js +176 -0
  250. package/src/loadBalancer/configure/internal/createLoadBalancerProperties.html +98 -0
  251. package/src/loadBalancer/configure/internal/gceCreateInternalLoadBalancer.controller.ts +276 -0
  252. package/src/loadBalancer/configure/internal/listener.html +41 -0
  253. package/src/loadBalancer/configure/internalhttp/createInternalHttpLoadBalancer.controller.ts +173 -0
  254. package/src/loadBalancer/configure/network/advancedSettings.html +54 -0
  255. package/src/loadBalancer/configure/network/createLoadBalancer.controller.js +224 -0
  256. package/src/loadBalancer/configure/network/createLoadBalancer.controller.spec.js +76 -0
  257. package/src/loadBalancer/configure/network/createLoadBalancer.html +25 -0
  258. package/src/loadBalancer/configure/network/createLoadBalancerProperties.html +86 -0
  259. package/src/loadBalancer/configure/network/editLoadBalancer.html +29 -0
  260. package/src/loadBalancer/configure/network/healthCheck.html +36 -0
  261. package/src/loadBalancer/configure/network/listeners.html +55 -0
  262. package/src/loadBalancer/configure/ssl/backendService.html +31 -0
  263. package/src/loadBalancer/configure/ssl/createLoadBalancerProperties.html +86 -0
  264. package/src/loadBalancer/configure/ssl/gceCreateSslLoadBalancer.controller.ts +236 -0
  265. package/src/loadBalancer/configure/ssl/listener.html +43 -0
  266. package/src/loadBalancer/configure/tcp/backendService.html +31 -0
  267. package/src/loadBalancer/configure/tcp/createLoadBalancerProperties.html +86 -0
  268. package/src/loadBalancer/configure/tcp/gceCreateTcpLoadBalancer.controller.ts +226 -0
  269. package/src/loadBalancer/configure/tcp/listener.html +15 -0
  270. package/src/loadBalancer/details/backendService/backendService.component.ts +23 -0
  271. package/src/loadBalancer/details/backendService/sessionAffinity.filter.ts +11 -0
  272. package/src/loadBalancer/details/deleteModal/deleteModal.controller.ts +105 -0
  273. package/src/loadBalancer/details/deleteModal/deleteModal.html +31 -0
  274. package/src/loadBalancer/details/healthCheck/healthCheck.component.html +14 -0
  275. package/src/loadBalancer/details/healthCheck/healthCheck.component.js +13 -0
  276. package/src/loadBalancer/details/hostAndPathRules/hostAndPathRules.controller.js +23 -0
  277. package/src/loadBalancer/details/hostAndPathRules/hostAndPathRules.modal.html +40 -0
  278. package/src/loadBalancer/details/hostAndPathRules/hostAndPathRules.service.js +41 -0
  279. package/src/loadBalancer/details/hostAndPathRules/hostAndPathRulesButton.component.js +39 -0
  280. package/src/loadBalancer/details/loadBalancerDetail.controller.js +260 -0
  281. package/src/loadBalancer/details/loadBalancerDetail.controller.spec.js +41 -0
  282. package/src/loadBalancer/details/loadBalancerDetails.html +202 -0
  283. package/src/loadBalancer/details/loadBalancerType/loadBalancerType.component.js +29 -0
  284. package/src/loadBalancer/httpLoadBalancerUtils.service.ts +42 -0
  285. package/src/loadBalancer/loadBalancer.setTransformer.ts +55 -0
  286. package/src/loadBalancer/loadBalancer.transformer.js +168 -0
  287. package/src/logo/gce.logo.less +6 -0
  288. package/src/logo/gce.logo.png +0 -0
  289. package/src/logo/gce.logo.svg +30 -0
  290. package/src/networkSelectField.directive.html +14 -0
  291. package/src/pipeline/stages/bake/bakeExecutionDetails.controller.js +40 -0
  292. package/src/pipeline/stages/bake/bakeExecutionDetails.html +60 -0
  293. package/src/pipeline/stages/bake/bakeStage.html +117 -0
  294. package/src/pipeline/stages/bake/gceBakeStage.js +171 -0
  295. package/src/pipeline/stages/cloneServerGroup/cloneServerGroupStage.html +99 -0
  296. package/src/pipeline/stages/cloneServerGroup/cloneServerGroupStepLabel.html +1 -0
  297. package/src/pipeline/stages/cloneServerGroup/gceCloneServerGroupStage.js +83 -0
  298. package/src/pipeline/stages/destroyAsg/destroyAsgStage.html +9 -0
  299. package/src/pipeline/stages/destroyAsg/destroyAsgStepLabel.html +1 -0
  300. package/src/pipeline/stages/destroyAsg/gceDestroyAsgStage.js +62 -0
  301. package/src/pipeline/stages/disableAsg/disableAsgStage.html +11 -0
  302. package/src/pipeline/stages/disableAsg/disableAsgStepLabel.html +1 -0
  303. package/src/pipeline/stages/disableAsg/gceDisableAsgStage.js +68 -0
  304. package/src/pipeline/stages/disableCluster/disableClusterStage.html +26 -0
  305. package/src/pipeline/stages/disableCluster/gceDisableClusterStage.js +79 -0
  306. package/src/pipeline/stages/enableAsg/enableAsgStage.html +11 -0
  307. package/src/pipeline/stages/enableAsg/enableAsgStepLabel.html +1 -0
  308. package/src/pipeline/stages/enableAsg/gceEnableAsgStage.js +65 -0
  309. package/src/pipeline/stages/findAmi/findAmiStage.html +20 -0
  310. package/src/pipeline/stages/findAmi/gceFindAmiStage.js +79 -0
  311. package/src/pipeline/stages/findImageFromTags/findImageFromTagsExecutionDetails.html +40 -0
  312. package/src/pipeline/stages/findImageFromTags/findImageFromTagsStage.html +8 -0
  313. package/src/pipeline/stages/findImageFromTags/gceFindImageFromTagsStage.js +35 -0
  314. package/src/pipeline/stages/resizeAsg/gceResizeAsgStage.js +125 -0
  315. package/src/pipeline/stages/resizeAsg/resizeAsgStage.html +97 -0
  316. package/src/pipeline/stages/resizeAsg/resizeAsgStepLabel.html +1 -0
  317. package/src/pipeline/stages/scaleDownCluster/gceScaleDownClusterStage.js +78 -0
  318. package/src/pipeline/stages/scaleDownCluster/scaleDownClusterStage.html +35 -0
  319. package/src/pipeline/stages/shrinkCluster/gceShrinkClusterStage.js +73 -0
  320. package/src/pipeline/stages/shrinkCluster/shrinkClusterStage.html +34 -0
  321. package/src/pipeline/stages/tagImage/gceTagImageStage.js +36 -0
  322. package/src/pipeline/stages/tagImage/tagImageExecutionDetails.html +39 -0
  323. package/src/pipeline/stages/tagImage/tagImageStage.html +14 -0
  324. package/src/regionSelectField.directive.html +18 -0
  325. package/src/securityGroup/clone/cloneSecurityGroup.controller.js +85 -0
  326. package/src/securityGroup/clone/cloneSecurityGroup.html +25 -0
  327. package/src/securityGroup/configure/ConfigSecurityGroupMixin.controller.js +318 -0
  328. package/src/securityGroup/configure/createSecurityGroup.controller.js +62 -0
  329. package/src/securityGroup/configure/createSecurityGroup.html +25 -0
  330. package/src/securityGroup/configure/createSecurityGroupIngress.html +81 -0
  331. package/src/securityGroup/configure/createSecurityGroupProperties.html +70 -0
  332. package/src/securityGroup/configure/createSecurityGroupSourceFilters.html +56 -0
  333. package/src/securityGroup/configure/createSecurityGroupTargets.html +43 -0
  334. package/src/securityGroup/configure/editSecurityGroup.controller.js +132 -0
  335. package/src/securityGroup/configure/editSecurityGroup.html +26 -0
  336. package/src/securityGroup/configure/securityGroup.configure.less +22 -0
  337. package/src/securityGroup/details/securityGroupDetail.controller.js +258 -0
  338. package/src/securityGroup/details/securityGroupDetail.html +171 -0
  339. package/src/securityGroup/securityGroup.reader.js +15 -0
  340. package/src/securityGroup/securityGroup.transformer.js +18 -0
  341. package/src/securityGroup/securityGroupHelpText.service.spec.ts +102 -0
  342. package/src/securityGroup/securityGroupHelpText.service.ts +83 -0
  343. package/src/serverGroup/configure/serverGroup.configure.gce.module.js +59 -0
  344. package/src/serverGroup/configure/serverGroupCommandBuilder.service.js +620 -0
  345. package/src/serverGroup/configure/serverGroupConfiguration.service.js +781 -0
  346. package/src/serverGroup/configure/wizard/advancedSettings/GceAcceleratorConfigurer.tsx +222 -0
  347. package/src/serverGroup/configure/wizard/advancedSettings/advancedSettings.directive.html +277 -0
  348. package/src/serverGroup/configure/wizard/advancedSettings/advancedSettings.html +9 -0
  349. package/src/serverGroup/configure/wizard/advancedSettings/advancedSettingsSelector.directive.js +71 -0
  350. package/src/serverGroup/configure/wizard/advancedSettings/advancedSettingsSelector.directive.spec.js +58 -0
  351. package/src/serverGroup/configure/wizard/advancedSettings/diskConfigurer.component.ts +199 -0
  352. package/src/serverGroup/configure/wizard/advancedSettings/gceAccelerator.service.spec.ts +108 -0
  353. package/src/serverGroup/configure/wizard/advancedSettings/gceAccelerator.service.ts +74 -0
  354. package/src/serverGroup/configure/wizard/autoHealingPolicy/autoHealingPolicy.html +20 -0
  355. package/src/serverGroup/configure/wizard/autoHealingPolicy/autoHealingPolicySelector.component.html +90 -0
  356. package/src/serverGroup/configure/wizard/autoHealingPolicy/autoHealingPolicySelector.component.ts +70 -0
  357. package/src/serverGroup/configure/wizard/autoScalingPolicy/autoScalingPolicy.html +20 -0
  358. package/src/serverGroup/configure/wizard/autoScalingPolicy/autoScalingPolicySelector.component.html +21 -0
  359. package/src/serverGroup/configure/wizard/autoScalingPolicy/autoScalingPolicySelector.component.js +47 -0
  360. package/src/serverGroup/configure/wizard/autoScalingPolicy/autoScalingPolicySelector.less +15 -0
  361. package/src/serverGroup/configure/wizard/capacity/advancedCapacitySelector.component.html +42 -0
  362. package/src/serverGroup/configure/wizard/capacity/advancedCapacitySelector.component.js +16 -0
  363. package/src/serverGroup/configure/wizard/capacity/capacity.html +16 -0
  364. package/src/serverGroup/configure/wizard/capacity/simpleCapacitySelector.component.html +14 -0
  365. package/src/serverGroup/configure/wizard/capacity/simpleCapacitySelector.component.js +22 -0
  366. package/src/serverGroup/configure/wizard/capacity/simpleCapacitySelector.component.spec.js +31 -0
  367. package/src/serverGroup/configure/wizard/capacity/zones.html +7 -0
  368. package/src/serverGroup/configure/wizard/cloneServerGroup.gce.controller.js +476 -0
  369. package/src/serverGroup/configure/wizard/customInstance/CustomInstanceConfigurer.tsx +166 -0
  370. package/src/serverGroup/configure/wizard/customInstance/customInstanceBuilder.html +13 -0
  371. package/src/serverGroup/configure/wizard/customInstance/customInstanceConfigurer.component.less +9 -0
  372. package/src/serverGroup/configure/wizard/customInstance/customInstanceConfigurer.component.ts +21 -0
  373. package/src/serverGroup/configure/wizard/hiddenMetadataKeys.value.js +15 -0
  374. package/src/serverGroup/configure/wizard/instanceType/instanceType.html +11 -0
  375. package/src/serverGroup/configure/wizard/loadBalancers/elSevenOptions/backendServiceSelector.component.html +21 -0
  376. package/src/serverGroup/configure/wizard/loadBalancers/elSevenOptions/backendServiceSelector.component.js +33 -0
  377. package/src/serverGroup/configure/wizard/loadBalancers/elSevenOptions/elSevenOptionsGenerator.component.js +42 -0
  378. package/src/serverGroup/configure/wizard/loadBalancers/loadBalancerSelector.directive.html +53 -0
  379. package/src/serverGroup/configure/wizard/loadBalancers/loadBalancerSelector.directive.js +55 -0
  380. package/src/serverGroup/configure/wizard/loadBalancers/loadBalancers.html +5 -0
  381. package/src/serverGroup/configure/wizard/loadBalancingPolicy/loadBalancingPolicySelector.component.html +182 -0
  382. package/src/serverGroup/configure/wizard/loadBalancingPolicy/loadBalancingPolicySelector.component.less +11 -0
  383. package/src/serverGroup/configure/wizard/loadBalancingPolicy/loadBalancingPolicySelector.component.ts +149 -0
  384. package/src/serverGroup/configure/wizard/location/basicSettings.controller.js +139 -0
  385. package/src/serverGroup/configure/wizard/location/basicSettings.html +167 -0
  386. package/src/serverGroup/configure/wizard/securityGroups/securityGroupSelector.directive.html +66 -0
  387. package/src/serverGroup/configure/wizard/securityGroups/securityGroupSelector.directive.js +48 -0
  388. package/src/serverGroup/configure/wizard/securityGroups/securityGroups.html +4 -0
  389. package/src/serverGroup/configure/wizard/securityGroups/securityGroupsRemoved.directive.html +14 -0
  390. package/src/serverGroup/configure/wizard/securityGroups/securityGroupsRemoved.directive.js +25 -0
  391. package/src/serverGroup/configure/wizard/securityGroups/tagManager.service.js +208 -0
  392. package/src/serverGroup/configure/wizard/securityGroups/tagSelector.component.html +26 -0
  393. package/src/serverGroup/configure/wizard/securityGroups/tagSelector.component.js +31 -0
  394. package/src/serverGroup/configure/wizard/securityGroups/tagSelectorGenerator.component.js +44 -0
  395. package/src/serverGroup/configure/wizard/serverGroupWizard.html +52 -0
  396. package/src/serverGroup/configure/wizard/templateSelection/templateSelection.html +9 -0
  397. package/src/serverGroup/configure/wizard/zones/regionalSelector.directive.html +13 -0
  398. package/src/serverGroup/configure/wizard/zones/regionalSelector.directive.js +21 -0
  399. package/src/serverGroup/configure/wizard/zones/targetShapeSelector.directive.html +13 -0
  400. package/src/serverGroup/configure/wizard/zones/targetShapeSelector.directive.ts +20 -0
  401. package/src/serverGroup/configure/wizard/zones/zoneSelector.directive.html +24 -0
  402. package/src/serverGroup/configure/wizard/zones/zoneSelector.directive.js +21 -0
  403. package/src/serverGroup/details/ServerGroupDiskDescriptions.tsx +97 -0
  404. package/src/serverGroup/details/autoHealingPolicy/addAutoHealingPolicyButton.component.ts +38 -0
  405. package/src/serverGroup/details/autoHealingPolicy/autoHealingPolicy.component.ts +73 -0
  406. package/src/serverGroup/details/autoHealingPolicy/modal/upsertAutoHealingPolicy.modal.controller.ts +88 -0
  407. package/src/serverGroup/details/autoHealingPolicy/modal/upsertAutoHealingPolicy.modal.html +29 -0
  408. package/src/serverGroup/details/autoHealingPolicy/modal/upsertAutoHealingPolicy.modal.less +13 -0
  409. package/src/serverGroup/details/autoscalingPolicy/addAutoscalingPolicyButton.component.js +38 -0
  410. package/src/serverGroup/details/autoscalingPolicy/autoscalingPolicy.directive.html +49 -0
  411. package/src/serverGroup/details/autoscalingPolicy/autoscalingPolicy.directive.js +138 -0
  412. package/src/serverGroup/details/autoscalingPolicy/modal/GceScaleInControls.tsx +137 -0
  413. package/src/serverGroup/details/autoscalingPolicy/modal/upsertAutoscalingPolicy.modal.controller.js +56 -0
  414. package/src/serverGroup/details/autoscalingPolicy/modal/upsertAutoscalingPolicy.modal.html +38 -0
  415. package/src/serverGroup/details/autoscalingPolicy/modal/upsertAutoscalingPolicy.modal.less +17 -0
  416. package/src/serverGroup/details/resize/resizeAutoscalingPolicy.component.html +55 -0
  417. package/src/serverGroup/details/resize/resizeAutoscalingPolicy.component.js +60 -0
  418. package/src/serverGroup/details/resize/resizeCapacity.component.html +36 -0
  419. package/src/serverGroup/details/resize/resizeCapacity.component.js +46 -0
  420. package/src/serverGroup/details/resize/resizeServerGroup.controller.js +64 -0
  421. package/src/serverGroup/details/resize/resizeServerGroup.controller.spec.js +119 -0
  422. package/src/serverGroup/details/resize/resizeServerGroup.html +41 -0
  423. package/src/serverGroup/details/rollback/rollbackServerGroup.controller.js +73 -0
  424. package/src/serverGroup/details/rollback/rollbackServerGroup.html +43 -0
  425. package/src/serverGroup/details/serverGroup.details.gce.module.js +17 -0
  426. package/src/serverGroup/details/serverGroupDetails.gce.controller.js +511 -0
  427. package/src/serverGroup/details/serverGroupDetails.gce.controller.spec.js +26 -0
  428. package/src/serverGroup/details/serverGroupDetails.html +359 -0
  429. package/src/serverGroup/details/serverGroupDetails.less +3 -0
  430. package/src/serverGroup/details/stateful/MarkDiskStatefulButton.tsx +41 -0
  431. package/src/serverGroup/details/stateful/StatefulMIGService.ts +49 -0
  432. package/src/serverGroup/details/stateful/UpdateBootImageButton.tsx +108 -0
  433. package/src/serverGroup/serverGroup.transformer.js +64 -0
  434. package/src/serverGroup/serverGroup.transformer.spec.js +59 -0
  435. package/src/subnet/subnet.renderer.js +34 -0
  436. package/src/subnet/subnetSelectField.directive.html +21 -0
  437. package/src/subnet/subnetSelectField.directive.js +24 -0
  438. package/src/validation/applicationName.validator.js +114 -0
@@ -0,0 +1,17 @@
1
+ .gce-scaling-policy-modal {
2
+ .error-message {
3
+ margin-top: 4px;
4
+ }
5
+
6
+ input.form-control,
7
+ select.form-control {
8
+ margin-bottom: 2px;
9
+ width: 100%;
10
+ }
11
+
12
+ .collapsible-subsection {
13
+ .content-body {
14
+ padding-left: 0;
15
+ }
16
+ }
17
+ }
@@ -0,0 +1,55 @@
1
+ <ng-form name="resizeAutoscalingPolicyForm">
2
+ <div class="form-group">
3
+ <div class="col-md-12">
4
+ <p>
5
+ Sets min and max instance counts for this server group's autoscaling policy.
6
+ <help-field key="gce.serverGroup.resizeWithAutoscalingPolicy" placement="right"></help-field>
7
+ </p>
8
+ </div>
9
+ </div>
10
+ <div class="form-group">
11
+ <div class="col-md-2 col-md-offset-3"><b>Min</b></div>
12
+ <div class="col-md-2"><b>Max</b></div>
13
+ </div>
14
+ <div class="form-group">
15
+ <div class="col-md-3 sm-label-right">Current</div>
16
+ <div class="col-md-2">
17
+ <input
18
+ type="number"
19
+ class="form-control input-sm"
20
+ ng-model="$ctrl.serverGroup.autoscalingPolicy.minNumReplicas"
21
+ readonly
22
+ />
23
+ </div>
24
+ <div class="col-md-2">
25
+ <input
26
+ type="number"
27
+ class="form-control input-sm"
28
+ ng-model="$ctrl.serverGroup.autoscalingPolicy.maxNumReplicas"
29
+ readonly
30
+ />
31
+ </div>
32
+ </div>
33
+ <div class="form-group">
34
+ <div class="col-md-3 sm-label-right">Resize to</div>
35
+ <div class="col-md-2">
36
+ <input
37
+ type="number"
38
+ class="form-control input-sm"
39
+ ng-model="$ctrl.command.newMinNumReplicas"
40
+ min="0"
41
+ required
42
+ max="{{ $ctrl.command.newMaxNumReplicas }}"
43
+ />
44
+ </div>
45
+ <div class="col-md-2">
46
+ <input
47
+ type="number"
48
+ class="form-control input-sm"
49
+ ng-model="$ctrl.command.newMaxNumReplicas"
50
+ required
51
+ min="{{ $ctrl.command.newMinNumReplicas }}"
52
+ />
53
+ </div>
54
+ </div>
55
+ </ng-form>
@@ -0,0 +1,60 @@
1
+ 'use strict';
2
+
3
+ import * as angular from 'angular';
4
+ import _ from 'lodash';
5
+
6
+ import { GOOGLE_AUTOSCALINGPOLICY_AUTOSCALINGPOLICY_WRITE_SERVICE } from '../../../autoscalingPolicy/autoscalingPolicy.write.service';
7
+
8
+ export const GOOGLE_SERVERGROUP_DETAILS_RESIZE_RESIZEAUTOSCALINGPOLICY_COMPONENT =
9
+ 'spinnaker.deck.gce.serverGroup.details.resizeAutoscalingPolicy.component';
10
+ export const name = GOOGLE_SERVERGROUP_DETAILS_RESIZE_RESIZEAUTOSCALINGPOLICY_COMPONENT; // for backwards compatibility
11
+ angular
12
+ .module(GOOGLE_SERVERGROUP_DETAILS_RESIZE_RESIZEAUTOSCALINGPOLICY_COMPONENT, [
13
+ GOOGLE_AUTOSCALINGPOLICY_AUTOSCALINGPOLICY_WRITE_SERVICE,
14
+ ])
15
+ .component('gceResizeAutoscalingPolicy', {
16
+ bindings: {
17
+ serverGroup: '=',
18
+ command: '=',
19
+ formMethods: '=',
20
+ application: '=',
21
+ },
22
+ templateUrl: require('./resizeAutoscalingPolicy.component.html'),
23
+ controller: [
24
+ '$scope',
25
+ 'gceAutoscalingPolicyWriter',
26
+ function ($scope, gceAutoscalingPolicyWriter) {
27
+ // In Angular 1.7 Directive bindings were removed in the constructor, default values now must be instantiated within $onInit
28
+ // See https://docs.angularjs.org/guide/migration#-compile- and https://docs.angularjs.org/guide/migration#migrate1.5to1.6-ng-services-$compile
29
+ this.$onInit = () => {
30
+ const newPolicyBounds = ['newMinNumReplicas', 'newMaxNumReplicas'];
31
+ newPolicyBounds.forEach((prop) => (this.command[prop] = null));
32
+
33
+ angular.extend(this.formMethods, {
34
+ formIsValid: () =>
35
+ _.every([
36
+ _.chain(newPolicyBounds)
37
+ .map((bound) => this.command[bound] !== null)
38
+ .every()
39
+ .value(),
40
+ $scope.resizeAutoscalingPolicyForm.$valid,
41
+ ]),
42
+ submitMethod: () => {
43
+ return gceAutoscalingPolicyWriter.upsertAutoscalingPolicy(
44
+ this.application,
45
+ this.serverGroup,
46
+ {
47
+ minNumReplicas: this.command.newMinNumReplicas,
48
+ maxNumReplicas: this.command.newMaxNumReplicas,
49
+ },
50
+ {
51
+ reason: this.command.reason,
52
+ interestingHealthProviderNames: this.command.interestingHealthProviderNames,
53
+ },
54
+ );
55
+ },
56
+ });
57
+ };
58
+ },
59
+ ],
60
+ });
@@ -0,0 +1,36 @@
1
+ <ng-form name="resizeCapacityForm">
2
+ <div>
3
+ <div class="form-group">
4
+ <div class="col-md-12">
5
+ <p>Sets desired instance count for this server group.</p>
6
+ </div>
7
+ </div>
8
+ <div class="form-group form-inline">
9
+ <div class="col-md-3 sm-label-right">Current size</div>
10
+ <div class="col-md-6">
11
+ <input
12
+ type="number"
13
+ class="form-control input-sm"
14
+ ng-model="$ctrl.serverGroup.asg.desiredCapacity"
15
+ style="width: 60px"
16
+ readonly
17
+ />
18
+ instance<span ng-if="$ctrl.currentSize.desired > 1">s</span>
19
+ </div>
20
+ </div>
21
+ <div class="form-group form-inline">
22
+ <div class="col-md-3 sm-label-right">Resize to</div>
23
+ <div class="col-md-6">
24
+ <input
25
+ type="number"
26
+ class="form-control input-sm highlight-pristine"
27
+ ng-model="$ctrl.command.newSize"
28
+ min="0"
29
+ required
30
+ style="width: 60px"
31
+ />
32
+ instances
33
+ </div>
34
+ </div>
35
+ </div>
36
+ </ng-form>
@@ -0,0 +1,46 @@
1
+ 'use strict';
2
+
3
+ import * as angular from 'angular';
4
+ import _ from 'lodash';
5
+
6
+ import { SERVER_GROUP_WRITER } from '@spinnaker/core';
7
+
8
+ export const GOOGLE_SERVERGROUP_DETAILS_RESIZE_RESIZECAPACITY_COMPONENT =
9
+ 'spinnaker.google.serverGroup.details.resize.capacity.component';
10
+ export const name = GOOGLE_SERVERGROUP_DETAILS_RESIZE_RESIZECAPACITY_COMPONENT; // for backwards compatibility
11
+ angular
12
+ .module(GOOGLE_SERVERGROUP_DETAILS_RESIZE_RESIZECAPACITY_COMPONENT, [SERVER_GROUP_WRITER])
13
+ .component('gceResizeCapacity', {
14
+ bindings: {
15
+ command: '=',
16
+ application: '=',
17
+ serverGroup: '=',
18
+ formMethods: '=',
19
+ },
20
+ templateUrl: require('./resizeCapacity.component.html'),
21
+ controller: [
22
+ '$scope',
23
+ 'serverGroupWriter',
24
+ function ($scope, serverGroupWriter) {
25
+ // In Angular 1.7 Directive bindings were removed in the constructor, default values now must be instantiated within $onInit
26
+ // See https://docs.angularjs.org/guide/migration#-compile- and https://docs.angularjs.org/guide/migration#migrate1.5to1.6-ng-services-$compile
27
+ this.$onInit = () => {
28
+ this.command.newSize = null;
29
+
30
+ angular.extend(this.formMethods, {
31
+ formIsValid: () => _.every([this.command.newSize !== null, $scope.resizeCapacityForm.$valid]),
32
+ submitMethod: () => {
33
+ return serverGroupWriter.resizeServerGroup(this.serverGroup, this.application, {
34
+ capacity: { min: this.command.newSize, max: this.command.newSize, desired: this.command.newSize },
35
+ serverGroupName: this.serverGroup.name,
36
+ targetSize: this.command.newSize,
37
+ region: this.serverGroup.region,
38
+ interestingHealthProviderNames: this.command.interestingHealthProviderNames,
39
+ reason: this.command.reason,
40
+ });
41
+ },
42
+ });
43
+ };
44
+ },
45
+ ],
46
+ });
@@ -0,0 +1,64 @@
1
+ 'use strict';
2
+
3
+ import { module } from 'angular';
4
+
5
+ import { TaskMonitor } from '@spinnaker/core';
6
+
7
+ import { GOOGLE_COMMON_FOOTER_DIRECTIVE } from '../../../common/footer.directive';
8
+ import { GOOGLE_SERVERGROUP_DETAILS_RESIZE_RESIZEAUTOSCALINGPOLICY_COMPONENT } from './resizeAutoscalingPolicy.component';
9
+ import { GOOGLE_SERVERGROUP_DETAILS_RESIZE_RESIZECAPACITY_COMPONENT } from './resizeCapacity.component';
10
+
11
+ export const GOOGLE_SERVERGROUP_DETAILS_RESIZE_RESIZESERVERGROUP_CONTROLLER =
12
+ 'spinnaker.google.serverGroup.details.resize.controller';
13
+ export const name = GOOGLE_SERVERGROUP_DETAILS_RESIZE_RESIZESERVERGROUP_CONTROLLER; // for backwards compatibility
14
+ module(GOOGLE_SERVERGROUP_DETAILS_RESIZE_RESIZESERVERGROUP_CONTROLLER, [
15
+ GOOGLE_SERVERGROUP_DETAILS_RESIZE_RESIZECAPACITY_COMPONENT,
16
+ GOOGLE_SERVERGROUP_DETAILS_RESIZE_RESIZEAUTOSCALINGPOLICY_COMPONENT,
17
+ GOOGLE_COMMON_FOOTER_DIRECTIVE,
18
+ ]).controller('gceResizeServerGroupCtrl', [
19
+ '$scope',
20
+ '$uibModalInstance',
21
+ 'application',
22
+ 'serverGroup',
23
+ function ($scope, $uibModalInstance, application, serverGroup) {
24
+ $scope.serverGroup = serverGroup;
25
+ $scope.application = application;
26
+ $scope.verification = {};
27
+ $scope.command = {};
28
+ $scope.formMethods = {};
29
+
30
+ if (application && application.attributes) {
31
+ if (application.attributes.platformHealthOnlyShowOverride && application.attributes.platformHealthOnly) {
32
+ $scope.command.interestingHealthProviderNames = ['Google'];
33
+ }
34
+
35
+ $scope.command.platformHealthOnlyShowOverride = application.attributes.platformHealthOnlyShowOverride;
36
+ }
37
+
38
+ this.isValid = function () {
39
+ if (!$scope.verification.verified) {
40
+ return false;
41
+ }
42
+ return $scope.formMethods.formIsValid();
43
+ };
44
+
45
+ $scope.taskMonitor = new TaskMonitor({
46
+ application: application,
47
+ title: 'Resizing ' + serverGroup.name,
48
+ modalInstance: $uibModalInstance,
49
+ });
50
+
51
+ this.resize = function () {
52
+ this.submitting = true;
53
+ if (!this.isValid()) {
54
+ return;
55
+ }
56
+
57
+ $scope.taskMonitor.submit($scope.formMethods.submitMethod);
58
+ };
59
+
60
+ this.cancel = function () {
61
+ $uibModalInstance.dismiss();
62
+ };
63
+ },
64
+ ]);
@@ -0,0 +1,119 @@
1
+ 'use strict';
2
+
3
+ import { SERVER_GROUP_WRITER } from '@spinnaker/core';
4
+
5
+ const template = require('./resizeServerGroup.html');
6
+
7
+ // template dependencies
8
+ require('../../../common/footer.directive.html');
9
+
10
+ describe('Controller: gceResizeServerGroupCtrl', function () {
11
+ let $controller, scope, gceAutoscalingPolicyWriter, serverGroupWriter, $compile, $templateCache, $q;
12
+
13
+ beforeEach(
14
+ window.module(
15
+ require('./resizeServerGroup.controller').name,
16
+ require('../../../autoscalingPolicy/autoscalingPolicy.write.service').name,
17
+ SERVER_GROUP_WRITER,
18
+ ),
19
+ );
20
+
21
+ beforeEach(
22
+ window.inject(function (
23
+ _$controller_,
24
+ _$q_,
25
+ _$compile_,
26
+ _$templateCache_,
27
+ $rootScope,
28
+ _gceAutoscalingPolicyWriter_,
29
+ _serverGroupWriter_,
30
+ ) {
31
+ scope = $rootScope.$new();
32
+ gceAutoscalingPolicyWriter = _gceAutoscalingPolicyWriter_;
33
+ serverGroupWriter = _serverGroupWriter_;
34
+ $controller = _$controller_;
35
+ $compile = _$compile_;
36
+ $templateCache = _$templateCache_;
37
+ $q = _$q_;
38
+ }),
39
+ );
40
+
41
+ it('should instantiate the controller', function () {
42
+ const controller = $controller('gceResizeServerGroupCtrl', {
43
+ $scope: scope,
44
+ $uibModalInstance: { result: { then: angular.noop } },
45
+ application: {},
46
+ serverGroup: {
47
+ asg: {
48
+ minSize: 0,
49
+ },
50
+ },
51
+ });
52
+
53
+ expect(controller).toBeDefined();
54
+ });
55
+
56
+ describe('behavior for server group with autoscaler', function () {
57
+ let controller;
58
+ beforeEach(function () {
59
+ controller = $controller('gceResizeServerGroupCtrl', {
60
+ $scope: scope,
61
+ $uibModalInstance: {
62
+ result: $q.resolve(),
63
+ },
64
+ application: {},
65
+ serverGroup: {
66
+ autoscalingPolicy: {
67
+ minNumReplicas: 1,
68
+ maxNumReplicas: 10,
69
+ },
70
+ },
71
+ });
72
+
73
+ $compile($templateCache.get(template))(scope);
74
+ scope.$digest();
75
+ spyOn(controller, 'isValid').and.returnValue(true);
76
+ });
77
+
78
+ it('controller.resize() should call gceAutoscalingPolicyWriter.upsertAutoscalingPolicy', function () {
79
+ spyOn(serverGroupWriter, 'resizeServerGroup').and.callThrough();
80
+ spyOn(gceAutoscalingPolicyWriter, 'upsertAutoscalingPolicy').and.callThrough();
81
+
82
+ controller.resize();
83
+
84
+ expect(serverGroupWriter.resizeServerGroup).not.toHaveBeenCalled();
85
+ expect(gceAutoscalingPolicyWriter.upsertAutoscalingPolicy).toHaveBeenCalled();
86
+ });
87
+ });
88
+
89
+ describe('behavior for server group without autoscaler', function () {
90
+ let controller;
91
+ beforeEach(function () {
92
+ controller = $controller('gceResizeServerGroupCtrl', {
93
+ $scope: scope,
94
+ $uibModalInstance: {
95
+ result: $q.resolve(),
96
+ },
97
+ application: {},
98
+ serverGroup: {
99
+ asg: {
100
+ desiredCapacity: 10,
101
+ },
102
+ },
103
+ });
104
+
105
+ $compile($templateCache.get(template))(scope);
106
+ scope.$digest();
107
+ spyOn(controller, 'isValid').and.returnValue(true);
108
+ });
109
+
110
+ it('controller.resize() should call serverGroupWriter.resizeServerGroup', function () {
111
+ spyOn(serverGroupWriter, 'resizeServerGroup').and.callThrough();
112
+ spyOn(gceAutoscalingPolicyWriter, 'upsertAutoscalingPolicy').and.callThrough();
113
+ controller.resize();
114
+
115
+ expect(serverGroupWriter.resizeServerGroup).toHaveBeenCalled();
116
+ expect(gceAutoscalingPolicyWriter.upsertAutoscalingPolicy).not.toHaveBeenCalled();
117
+ });
118
+ });
119
+ });
@@ -0,0 +1,41 @@
1
+ <div modal-page class="confirmation-modal">
2
+ <task-monitor monitor="taskMonitor"></task-monitor>
3
+ <form role="form" ng-if="!ctrl.submitting">
4
+ <modal-close dismiss="$dismiss()"></modal-close>
5
+ <div class="modal-header">
6
+ <h4 class="modal-title">Resize {{serverGroup.name}}</h4>
7
+ </div>
8
+ <div class="modal-body confirmation-modal">
9
+ <div class="form-horizontal">
10
+ <gce-resize-capacity
11
+ ng-if="!serverGroup.autoscalingPolicy"
12
+ server-group="serverGroup"
13
+ form-methods="formMethods"
14
+ application="application"
15
+ command="command"
16
+ ></gce-resize-capacity>
17
+ <gce-resize-autoscaling-policy
18
+ ng-if="serverGroup.autoscalingPolicy"
19
+ server-group="serverGroup"
20
+ form-methods="formMethods"
21
+ application="application"
22
+ command="command"
23
+ ></gce-resize-autoscaling-policy>
24
+ </div>
25
+ <div class="row" ng-if="command.platformHealthOnlyShowOverride">
26
+ <div class="col-sm-10 col-sm-offset-1">
27
+ <platform-health-override command="command" platform-health-type="'Google'" show-help-details="true">
28
+ </platform-health-override>
29
+ </div>
30
+ </div>
31
+ <task-reason command="command"></task-reason>
32
+ </div>
33
+ <gce-footer
34
+ action="ctrl.resize()"
35
+ cancel="ctrl.cancel()"
36
+ is-valid="ctrl.isValid()"
37
+ account="serverGroup.account"
38
+ verification="verification"
39
+ ></gce-footer>
40
+ </form>
41
+ </div>
@@ -0,0 +1,73 @@
1
+ 'use strict';
2
+
3
+ import { module } from 'angular';
4
+
5
+ import { SERVER_GROUP_WRITER, TaskMonitor } from '@spinnaker/core';
6
+ import { GOOGLE_COMMON_FOOTER_DIRECTIVE } from '../../../common/footer.directive';
7
+
8
+ export const GOOGLE_SERVERGROUP_DETAILS_ROLLBACK_ROLLBACKSERVERGROUP_CONTROLLER =
9
+ 'spinnaker.google.serverGroup.details.rollback.controller';
10
+ export const name = GOOGLE_SERVERGROUP_DETAILS_ROLLBACK_ROLLBACKSERVERGROUP_CONTROLLER; // for backwards compatibility
11
+ module(GOOGLE_SERVERGROUP_DETAILS_ROLLBACK_ROLLBACKSERVERGROUP_CONTROLLER, [
12
+ SERVER_GROUP_WRITER,
13
+ GOOGLE_COMMON_FOOTER_DIRECTIVE,
14
+ ]).controller('gceRollbackServerGroupCtrl', [
15
+ '$scope',
16
+ '$uibModalInstance',
17
+ 'serverGroupWriter',
18
+ 'application',
19
+ 'serverGroup',
20
+ 'disabledServerGroups',
21
+ function ($scope, $uibModalInstance, serverGroupWriter, application, serverGroup, disabledServerGroups) {
22
+ $scope.serverGroup = serverGroup;
23
+ $scope.disabledServerGroups = disabledServerGroups.sort((a, b) => b.name.localeCompare(a.name));
24
+ $scope.verification = {};
25
+
26
+ $scope.command = {
27
+ rollbackType: 'EXPLICIT',
28
+ rollbackContext: {
29
+ rollbackServerGroupName: serverGroup.name,
30
+ },
31
+ };
32
+
33
+ if (application && application.attributes) {
34
+ if (application.attributes.platformHealthOnlyShowOverride && application.attributes.platformHealthOnly) {
35
+ $scope.command.interestingHealthProviderNames = ['Google'];
36
+ }
37
+
38
+ $scope.command.platformHealthOnlyShowOverride = application.attributes.platformHealthOnlyShowOverride;
39
+ }
40
+
41
+ this.isValid = function () {
42
+ const command = $scope.command;
43
+ if (!$scope.verification.verified) {
44
+ return false;
45
+ }
46
+
47
+ return command.rollbackContext.restoreServerGroupName !== undefined;
48
+ };
49
+
50
+ $scope.taskMonitor = new TaskMonitor({
51
+ application: application,
52
+ title: 'Rollback ' + serverGroup.name,
53
+ modalInstance: $uibModalInstance,
54
+ });
55
+
56
+ this.rollback = function () {
57
+ this.submitting = true;
58
+ if (!this.isValid()) {
59
+ return;
60
+ }
61
+
62
+ const submitMethod = function () {
63
+ return serverGroupWriter.rollbackServerGroup(serverGroup, application, $scope.command);
64
+ };
65
+
66
+ $scope.taskMonitor.submit(submitMethod);
67
+ };
68
+
69
+ this.cancel = function () {
70
+ $uibModalInstance.dismiss();
71
+ };
72
+ },
73
+ ]);
@@ -0,0 +1,43 @@
1
+ <div modal-page class="confirmation-modal">
2
+ <task-monitor monitor="taskMonitor"></task-monitor>
3
+ <form role="form" ng-if="!ctrl.submitting">
4
+ <modal-close dismiss="$dismiss()"></modal-close>
5
+ <div class="modal-header">
6
+ <h4 class="modal-title">Rollback {{serverGroup.name}}</h4>
7
+ </div>
8
+ <div class="modal-body confirmation-modal">
9
+ <div class="row">
10
+ <div class="col-sm-3 sm-label-right">Restore to</div>
11
+ <div class="col-sm-6">
12
+ <ui-select ng-model="command.rollbackContext.restoreServerGroupName" class="form-control input-sm">
13
+ <ui-select-match placeholder="Select...">{{$select.selected.name}}</ui-select-match>
14
+ <ui-select-choices repeat="serverGroup.name as serverGroup in disabledServerGroups">
15
+ <span ng-bind-html="serverGroup.name"></span>
16
+ </ui-select-choices>
17
+ </ui-select>
18
+ </div>
19
+ </div>
20
+
21
+ <div class="row" ng-if="command.platformHealthOnlyShowOverride">
22
+ <div class="col-sm-10 col-sm-offset-1">
23
+ <platform-health-override
24
+ command="command"
25
+ platform-health-type="'Google'"
26
+ show-help-details="true"
27
+ field-columns="12"
28
+ >
29
+ </platform-health-override>
30
+ </div>
31
+ </div>
32
+
33
+ <task-reason command="command"></task-reason>
34
+ </div>
35
+ <gce-footer
36
+ action="ctrl.rollback()"
37
+ cancel="ctrl.cancel()"
38
+ is-valid="ctrl.isValid()"
39
+ account="serverGroup.account"
40
+ verification="verification"
41
+ ></gce-footer>
42
+ </form>
43
+ </div>
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ import { module } from 'angular';
4
+
5
+ import { GCE_ADD_AUTOHEALING_POLICY_BUTTON } from './autoHealingPolicy/addAutoHealingPolicyButton.component';
6
+ import { GCE_AUTOHEALING_POLICY_DETAILS } from './autoHealingPolicy/autoHealingPolicy.component';
7
+ import { GCE_UPSERT_AUTOHEALING_POLICY_MODAL_CTRL } from './autoHealingPolicy/modal/upsertAutoHealingPolicy.modal.controller';
8
+ import { GOOGLE_SERVERGROUP_DETAILS_SERVERGROUPDETAILS_GCE_CONTROLLER } from './serverGroupDetails.gce.controller';
9
+
10
+ export const GOOGLE_SERVERGROUP_DETAILS_SERVERGROUP_DETAILS_GCE_MODULE = 'spinnaker.serverGroup.details.gce';
11
+ export const name = GOOGLE_SERVERGROUP_DETAILS_SERVERGROUP_DETAILS_GCE_MODULE; // for backwards compatibility
12
+ module(GOOGLE_SERVERGROUP_DETAILS_SERVERGROUP_DETAILS_GCE_MODULE, [
13
+ GOOGLE_SERVERGROUP_DETAILS_SERVERGROUPDETAILS_GCE_CONTROLLER,
14
+ GCE_ADD_AUTOHEALING_POLICY_BUTTON,
15
+ GCE_UPSERT_AUTOHEALING_POLICY_MODAL_CTRL,
16
+ GCE_AUTOHEALING_POLICY_DETAILS,
17
+ ]);