@spinnaker/tencentcloud 0.0.0-2025.1-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 (92) hide show
  1. package/CHANGELOG.md +751 -0
  2. package/LICENSE.txt +203 -0
  3. package/dist/domain/IKeyPair.d.ts +8 -0
  4. package/dist/domain/IScalingPolicy.d.ts +44 -0
  5. package/dist/domain/IScalingProcess.d.ts +10 -0
  6. package/dist/domain/ITargetTrackingPolicy.d.ts +21 -0
  7. package/dist/domain/ITencentcloudCertificate.d.ts +5 -0
  8. package/dist/domain/ITencentcloudHealth.d.ts +18 -0
  9. package/dist/domain/ITencentcloudInstance.d.ts +4 -0
  10. package/dist/domain/ITencentcloudLoadBalancer.d.ts +278 -0
  11. package/dist/domain/ITencentcloudLoadBalancerSourceData.d.ts +171 -0
  12. package/dist/domain/ITencentcloudScalingPolicy.d.ts +19 -0
  13. package/dist/domain/ITencentcloudServerGroup.d.ts +43 -0
  14. package/dist/domain/index.d.ts +11 -0
  15. package/dist/help/tencentcloud.help.d.ts +1 -0
  16. package/dist/image/image.reader.d.ts +35 -0
  17. package/dist/image/index.d.ts +1 -0
  18. package/dist/index.d.ts +2 -0
  19. package/dist/index.js +553 -0
  20. package/dist/index.js.map +1 -0
  21. package/dist/keyPairs/KeyPairsReader.d.ts +4 -0
  22. package/dist/keyPairs/index.d.ts +1 -0
  23. package/dist/pipeline/stages/disableCluster/DisableClusterConfig.d.ts +3 -0
  24. package/dist/pipeline/stages/disableCluster/DisableClusterStageForm.d.ts +3 -0
  25. package/dist/pipeline/stages/disableCluster/disableClusterStage.d.ts +1 -0
  26. package/dist/pipeline/stages/disableCluster/disableClusterValidators.d.ts +2 -0
  27. package/dist/pipeline/stages/rollbackCluster/RollbackClusterConfig.d.ts +3 -0
  28. package/dist/pipeline/stages/rollbackCluster/RollbackClusterStageForm.d.ts +3 -0
  29. package/dist/pipeline/stages/rollbackCluster/rollbackClusterStage.d.ts +1 -0
  30. package/dist/pipeline/stages/rollbackCluster/rollbackClusterValidators.d.ts +2 -0
  31. package/dist/pipeline/stages/scaleDownCluster/ScaleDownClusterConfig.d.ts +3 -0
  32. package/dist/pipeline/stages/scaleDownCluster/ScaleDownClusterStageForm.d.ts +3 -0
  33. package/dist/pipeline/stages/scaleDownCluster/scaleDownClusterStage.d.ts +1 -0
  34. package/dist/pipeline/stages/scaleDownCluster/scaledownClusterValidators.d.ts +2 -0
  35. package/dist/pipeline/stages/shrinkCluster/ShrinkClusterConfig.d.ts +3 -0
  36. package/dist/pipeline/stages/shrinkCluster/ShrinkClusterStageForm.d.ts +3 -0
  37. package/dist/pipeline/stages/shrinkCluster/shrinkClusterStage.d.ts +1 -0
  38. package/dist/pipeline/stages/shrinkCluster/shrinkClusterValidators.d.ts +2 -0
  39. package/dist/reactShims/index.d.ts +2 -0
  40. package/dist/reactShims/tencentcloud.ngReact.d.ts +8 -0
  41. package/dist/reactShims/tencentcloud.react.injector.d.ts +7 -0
  42. package/dist/reactShims/tencentcloud.react.module.d.ts +1 -0
  43. package/dist/search/searchResultFormatter.d.ts +1 -0
  44. package/dist/tencentcloud.module.d.ts +7 -0
  45. package/dist/tencentcloud.settings.d.ts +26 -0
  46. package/dist/validation/ApplicationNameValidator.d.ts +1 -0
  47. package/package.json +37 -0
  48. package/src/domain/IKeyPair.ts +8 -0
  49. package/src/domain/IScalingPolicy.ts +84 -0
  50. package/src/domain/IScalingProcess.ts +11 -0
  51. package/src/domain/ITargetTrackingPolicy.ts +26 -0
  52. package/src/domain/ITencentcloudCertificate.ts +6 -0
  53. package/src/domain/ITencentcloudHealth.ts +21 -0
  54. package/src/domain/ITencentcloudInstance.ts +5 -0
  55. package/src/domain/ITencentcloudLoadBalancer.ts +326 -0
  56. package/src/domain/ITencentcloudLoadBalancerSourceData.ts +189 -0
  57. package/src/domain/ITencentcloudScalingPolicy.ts +23 -0
  58. package/src/domain/ITencentcloudServerGroup.ts +46 -0
  59. package/src/domain/index.ts +11 -0
  60. package/src/help/tencentcloud.help.ts +5 -0
  61. package/src/image/image.reader.ts +53 -0
  62. package/src/image/index.ts +1 -0
  63. package/src/index.ts +2 -0
  64. package/src/keyPairs/KeyPairsReader.ts +11 -0
  65. package/src/keyPairs/index.ts +1 -0
  66. package/src/logo/tencentcloud.icon.svg +24 -0
  67. package/src/logo/tencentcloud.logo.less +5 -0
  68. package/src/logo/tencentcloud.logo.svg +53 -0
  69. package/src/pipeline/stages/disableCluster/DisableClusterConfig.tsx +27 -0
  70. package/src/pipeline/stages/disableCluster/DisableClusterStageForm.tsx +87 -0
  71. package/src/pipeline/stages/disableCluster/disableClusterStage.ts +12 -0
  72. package/src/pipeline/stages/disableCluster/disableClusterValidators.ts +10 -0
  73. package/src/pipeline/stages/rollbackCluster/RollbackClusterConfig.tsx +27 -0
  74. package/src/pipeline/stages/rollbackCluster/RollbackClusterStageForm.tsx +74 -0
  75. package/src/pipeline/stages/rollbackCluster/rollbackClusterStage.ts +12 -0
  76. package/src/pipeline/stages/rollbackCluster/rollbackClusterValidators.ts +10 -0
  77. package/src/pipeline/stages/scaleDownCluster/ScaleDownClusterConfig.tsx +27 -0
  78. package/src/pipeline/stages/scaleDownCluster/ScaleDownClusterStageForm.tsx +102 -0
  79. package/src/pipeline/stages/scaleDownCluster/scaleDownClusterStage.ts +12 -0
  80. package/src/pipeline/stages/scaleDownCluster/scaledownClusterValidators.ts +10 -0
  81. package/src/pipeline/stages/shrinkCluster/ShrinkClusterConfig.tsx +27 -0
  82. package/src/pipeline/stages/shrinkCluster/ShrinkClusterStageForm.tsx +104 -0
  83. package/src/pipeline/stages/shrinkCluster/shrinkClusterStage.ts +12 -0
  84. package/src/pipeline/stages/shrinkCluster/shrinkClusterValidators.ts +10 -0
  85. package/src/reactShims/index.ts +2 -0
  86. package/src/reactShims/tencentcloud.ngReact.ts +21 -0
  87. package/src/reactShims/tencentcloud.react.injector.ts +14 -0
  88. package/src/reactShims/tencentcloud.react.module.ts +14 -0
  89. package/src/search/searchResultFormatter.js +10 -0
  90. package/src/tencentcloud.module.ts +32 -0
  91. package/src/tencentcloud.settings.ts +35 -0
  92. package/src/validation/ApplicationNameValidator.ts +71 -0
@@ -0,0 +1,171 @@
1
+ import type { ILoadBalancerSourceData } from '@spinnaker/core';
2
+ import type { IListenerAction, NLBListenerProtocol } from './ITencentcloudLoadBalancer';
3
+ import type { IListenerRule } from './ITencentcloudLoadBalancer';
4
+ export interface ITencentcloudContainerServerGroupSourceData {
5
+ detachedInstances: string[];
6
+ isDisabled: boolean;
7
+ name: string;
8
+ region: string;
9
+ }
10
+ export interface ITencentcloudLoadBalancerServerGroupSourceData extends ITencentcloudContainerServerGroupSourceData {
11
+ instances: ITencentcloudLoadBalancerInstanceSourceData[];
12
+ }
13
+ export interface ITencentcloudTargetGroupServerGroupSourceData extends ITencentcloudContainerServerGroupSourceData {
14
+ instances: ITencentcloudTargetGroupInstanceSourceData[];
15
+ }
16
+ export interface ITencentcloudInstanceHealthSourceData {
17
+ type: string;
18
+ state: 'InService' | 'OutOfService' | 'Unknown';
19
+ reasonCode: 'ELB' | 'Instance' | 'N/A';
20
+ description: string;
21
+ }
22
+ export interface ITencentcloudTargetHealthSourceData {
23
+ description: string;
24
+ reason: string;
25
+ state: 'initial' | 'healthy' | 'unhealthy' | 'unused' | 'draining';
26
+ }
27
+ export interface IClassicListenerSourceData {
28
+ instancePort: number;
29
+ instanceProtocol: string;
30
+ loadBalancerPort: number;
31
+ protocol: string;
32
+ }
33
+ export interface ITencentcloudLoadBalancerSourceData extends ILoadBalancerSourceData {
34
+ id?: string;
35
+ account: string;
36
+ availabilityZones: string[];
37
+ cloudProvider: string;
38
+ createdTime: number;
39
+ dnsname: string;
40
+ loadBalancerName: string;
41
+ loadBalancerType?: string;
42
+ name: string;
43
+ region: string;
44
+ scheme: 'internal' | 'internet-facing';
45
+ securityGroups: string[];
46
+ serverGroups: ITencentcloudLoadBalancerServerGroupSourceData[];
47
+ subnets: string[];
48
+ type: string;
49
+ vpcId: string;
50
+ vpcid?: string;
51
+ }
52
+ export interface ITencentcloudLoadBalancerInstanceSourceData {
53
+ id: string;
54
+ zone: string;
55
+ health: ITencentcloudInstanceHealthSourceData;
56
+ }
57
+ export interface ITencentcloudTargetGroupInstanceSourceData {
58
+ id: string;
59
+ zone: string;
60
+ health: ITencentcloudTargetHealthSourceData;
61
+ }
62
+ export interface ITencentcloudTargetGroupSourceData {
63
+ account: string;
64
+ attributes: {
65
+ 'deregistration_delay.timeout_seconds': number;
66
+ 'stickiness.enabled': boolean;
67
+ 'stickiness.lb_cookie.duration_seconds': number;
68
+ 'stickiness.type': 'lb_cookie';
69
+ 'lambda.multi_value_headers.enabled': boolean;
70
+ };
71
+ cloudProvider: string;
72
+ healthCheckIntervalSeconds: number;
73
+ healthCheckPath: string;
74
+ healthCheckPort: string;
75
+ healthCheckProtocol: string;
76
+ healthCheckTimeoutSeconds: number;
77
+ healthyThresholdCount: number;
78
+ instances: string[];
79
+ loadBalancerNames: string[];
80
+ matcher: {
81
+ httpCode: string;
82
+ };
83
+ name: string;
84
+ port: number;
85
+ protocol: string;
86
+ region: string;
87
+ serverGroups: ITencentcloudTargetGroupServerGroupSourceData[];
88
+ targetGroupArn: string;
89
+ targetGroupName: string;
90
+ targetType: string;
91
+ type: string;
92
+ unhealthyThresholdCount: number;
93
+ vpcId: string;
94
+ }
95
+ export interface IApplicationLoadBalancerCertificateSourceData {
96
+ certificateArn: string;
97
+ }
98
+ export interface IApplicationLoadBalancerListenerSourceData {
99
+ certificates?: IApplicationLoadBalancerCertificateSourceData[];
100
+ defaultActions: IListenerAction[];
101
+ listenerArn: string;
102
+ loadBalancerName: string;
103
+ port: number;
104
+ protocol: 'HTTP' | 'HTTPS';
105
+ rules: IListenerRule[];
106
+ sslPolicy?: string;
107
+ }
108
+ export interface IApplicationLoadBalancerSourceData extends ITencentcloudLoadBalancerSourceData {
109
+ ipAddressType: 'ipv4' | 'dualstack';
110
+ listeners: IApplicationLoadBalancerListenerSourceData[];
111
+ loadBalancerArn: string;
112
+ loadBalancerType: 'application';
113
+ state: {
114
+ code: 'active' | 'provisioning' | 'failed';
115
+ reason?: string;
116
+ };
117
+ targetGroups: ITencentcloudTargetGroupSourceData[];
118
+ }
119
+ export interface INetworkLoadBalancerListenerSourceData {
120
+ certificates?: IApplicationLoadBalancerCertificateSourceData[];
121
+ defaultActions: Array<{
122
+ targetGroupName: string;
123
+ type: 'forward';
124
+ }>;
125
+ listenerArn: string;
126
+ loadBalancerName: string;
127
+ port: number;
128
+ protocol: NLBListenerProtocol;
129
+ rules: IListenerRule[];
130
+ sslPolicy?: string;
131
+ }
132
+ export interface INetworkLoadBalancerSourceData extends ITencentcloudLoadBalancerSourceData {
133
+ ipAddressType: 'ipv4' | 'dualstack';
134
+ listeners: INetworkLoadBalancerListenerSourceData[];
135
+ loadBalancerArn: string;
136
+ loadBalancerType: 'network';
137
+ state: {
138
+ code: 'active' | 'provisioning' | 'failed';
139
+ reason?: string;
140
+ };
141
+ targetGroups: ITencentcloudTargetGroupSourceData[];
142
+ }
143
+ export interface IClassicLoadBalancerSourceData extends ITencentcloudLoadBalancerSourceData {
144
+ healthCheck: {
145
+ healthyThreshold: number;
146
+ interval: number;
147
+ target: string;
148
+ timeout: number;
149
+ unhealthyThreshold: number;
150
+ };
151
+ instances: string[];
152
+ listenerDescriptions: Array<{
153
+ listener: IClassicListenerSourceData;
154
+ policyNames: string[];
155
+ }>;
156
+ policies: {
157
+ appCookieStickinessPolicies: Array<{
158
+ CookieName: string;
159
+ PolicyName: string;
160
+ }>;
161
+ lbcookieStickinessPolicies: Array<{
162
+ CookieExpirationPeriod: string;
163
+ PolicyName: string;
164
+ }>;
165
+ otherPolicies: any[];
166
+ };
167
+ sourceSecurityGroup: {
168
+ groupName: string;
169
+ ownerAlias: string;
170
+ };
171
+ }
@@ -0,0 +1,19 @@
1
+ import type { IScalingPolicy, IScalingPolicyAlarm, IStepAdjustment } from './IScalingPolicy';
2
+ export interface IScalingAdjustmentView extends IStepAdjustment {
3
+ operator: string;
4
+ absAdjustment: number;
5
+ }
6
+ export interface IScalingPolicyAlarmView extends IScalingPolicyAlarm {
7
+ name?: string;
8
+ description?: string;
9
+ comparator?: '&lt;' | '&gt;' | '&le;' | '&ge;';
10
+ }
11
+ export interface IScalingPolicyView extends IScalingPolicy, IScalingAdjustmentView {
12
+ alarms: IScalingPolicyAlarmView[];
13
+ stepAdjustments: IStepAdjustmentView[];
14
+ operator: string;
15
+ }
16
+ export interface IStepAdjustmentView extends IScalingAdjustmentView, IStepAdjustment {
17
+ metricIntervalLowerBound: number;
18
+ metricIntervalUpperBound: number;
19
+ }
@@ -0,0 +1,43 @@
1
+ import type { IAccountDetails, IAsg, IServerGroup } from '@spinnaker/core';
2
+ import type { IScalingPolicyView, ISuspendedProcess } from '.';
3
+ import type { IScalingPolicy } from './IScalingPolicy';
4
+ export interface ITencentcloudAsg extends IAsg {
5
+ availabilityZones: string[];
6
+ defaultCooldown: number;
7
+ terminationPolicies: string[];
8
+ enabledMetrics: Array<{
9
+ metric: string;
10
+ }>;
11
+ vpczoneIdentifier?: string;
12
+ suspendedProcesses?: ISuspendedProcess[];
13
+ zoneSet?: string[];
14
+ terminationPolicySet: string[];
15
+ vpcId: string;
16
+ subnetIdSet: string[];
17
+ instanceCount?: string;
18
+ }
19
+ export interface ITencentcloudServerGroup extends IServerGroup {
20
+ [x: string]: any;
21
+ vpcName?: any;
22
+ image?: any;
23
+ scalingPolicies?: IScalingPolicy[];
24
+ targetGroups?: string[];
25
+ asg?: ITencentcloudAsg;
26
+ accountName?: string;
27
+ instanceCount?: number;
28
+ }
29
+ export interface IScheduledAction {
30
+ scheduledActionId?: string;
31
+ scheduledActionName?: string;
32
+ startTime?: string;
33
+ endTime?: string;
34
+ recurrence: number;
35
+ minSize: number;
36
+ maxSize: number;
37
+ desiredCapacity: number;
38
+ }
39
+ export interface ITencentcloudServerGroupView extends ITencentcloudServerGroup {
40
+ accountDetails?: IAccountDetails;
41
+ scalingPolicies: IScalingPolicyView[];
42
+ scheduledActions?: IScheduledAction[];
43
+ }
@@ -0,0 +1,11 @@
1
+ export * from './ITencentcloudCertificate';
2
+ export * from './ITencentcloudInstance';
3
+ export * from './ITencentcloudLoadBalancer';
4
+ export * from './ITencentcloudLoadBalancerSourceData';
5
+ export * from './ITencentcloudHealth';
6
+ export * from './ITencentcloudScalingPolicy';
7
+ export * from './ITencentcloudServerGroup';
8
+ export * from './IKeyPair';
9
+ export * from './IScalingPolicy';
10
+ export * from './IScalingProcess';
11
+ export * from './ITargetTrackingPolicy';
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,35 @@
1
+ export interface ITencentcloudSnapshot {
2
+ diskSize: string;
3
+ diskType: string;
4
+ diskUsage: 'SYSTEM_DISK' | 'DATA_DISK';
5
+ snapshotId: string;
6
+ }
7
+ export interface ITencentcloudImage {
8
+ accounts: string[];
9
+ images: {
10
+ [region: string]: string[];
11
+ };
12
+ imgIds: {
13
+ [region: string]: string[];
14
+ };
15
+ attributes: {
16
+ createdTime?: string;
17
+ creationDate?: string;
18
+ snapshotSet?: ITencentcloudSnapshot[];
19
+ osPlatform: string;
20
+ };
21
+ imageName: string;
22
+ tags: {
23
+ [tag: string]: string;
24
+ };
25
+ tagsByImageId: {
26
+ [imageId: string]: ITencentcloudImage['tags'];
27
+ };
28
+ }
29
+ export declare class TencentcloudImageReader {
30
+ findImages(params: {
31
+ q: string;
32
+ region?: string;
33
+ }): PromiseLike<ITencentcloudImage[]>;
34
+ getImage(name: string, region: string, credentials: string): PromiseLike<ITencentcloudImage>;
35
+ }
@@ -0,0 +1 @@
1
+ export * from './image.reader';
@@ -0,0 +1,2 @@
1
+ export { TENCENTCLOUD_MODULE } from './tencentcloud.module';
2
+ export * from './tencentcloud.settings';