-
Notifications
You must be signed in to change notification settings - Fork 17
/
ACS-CN-PrePostUpgradeServiceInstance.yml
202 lines (202 loc) · 5.79 KB
/
ACS-CN-PrePostUpgradeServiceInstance.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
FormatVersion: OOS-2019-06-01
Description:
en: Run command in ComputeNest service instance‘s Pre/PostUpgrade stage
zh-cn: 计算巢服务实例Pre/PostUpgrade阶段运行云助手命令
name-en: ACS-CN-PrePostUpgradeServiceInstance
name-zh-cn: 执行Pre/PostUpgrade阶段命令
categories:
- run_command
Parameters:
regionId:
Type: String
Label:
en: RegionId
zh-cn: 地域ID
AssociationProperty: RegionId
Default: '{{ ACS::RegionId }}'
serviceInstanceId:
Description:
en: The ID of the ComputeNest service instance
zh-cn: 计算巢服务实例ID
Type: String
resourceName:
Description:
en: The resource name of ECS instance
zh-cn: 运行命令的ECS实例资源名称
Type: String
Default: ''
applicationGroupName:
Description:
en: The application group name of ECS instance
zh-cn: 运行命令的ECS实例应用分组名称
Type: String
Default: ''
commandType:
Label:
en: CommandType
zh-cn: 命令类型
AssociationPropertyMetadata:
LocaleKey: ECSCommandType
Type: String
AllowedValues:
- RunShellScript
- RunPythonScript
- RunPerlScript
- RunBatScript
- RunPowerShellScript
Default: RunShellScript
commandContent:
Label:
en: CommandContent
zh-cn: 命令内容
Type: String
MaxLength: 16384
AssociationProperty: 'ALIYUN::OOS::Command::CommandContent'
AssociationPropertyMetadata:
CommandType: '${commandType}'
workingDir:
Description:
en: >-
Linux instances: under the home directory of the administrator (root
user): /root.Windows instances: under the directory where the process of
the Cloud Assistant client is located, such asC:\Windows\System32
zh-cn: >-
Linux系统实例默认在管理员(root用户)的home目录下,即/root。Windows系统实例默认在云助手客户端进程所在目录,例如C:\Windows\System32
Label:
en: WorkingDir
zh-cn: 运行目录
Type: String
Default: ''
AssociationPropertyMetadata:
Value:
- Condition:
'Fn::Or':
- 'Fn::Equals':
- '${commandType}'
- RunShellScript
- 'Fn::Equals':
- '${commandType}'
- RunPythonScript
- 'Fn::Equals':
- '${commandType}'
- RunPerlScript
Value: /root
- Condition:
'Fn::Or':
- 'Fn::Equals':
- '${commandType}'
- RunBatScript
- 'Fn::Equals':
- '${commandType}'
- RunPowerShellScript
Value: 'C:\\Windows\\System32'
timeout:
Label:
en: Timeout
zh-cn: 超时时间
Type: Number
Default: 600
enableParameter:
Label:
en: EnableParameter
zh-cn: 命令中是否包含加密参数或自定义参数
Type: Boolean
Default: false
parameters:
Description:
en: The parameters of the command
zh-cn: 命令参数
Type: Json
Default: {}
OOSAssumeRole:
Label:
en: OOSAssumeRole
zh-cn: OOS扮演的RAM角色
Type: String
Default: ''
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: getInstance
Description:
en: Views the ECS instances
zh-cn: 获取ECS实例
Action: 'ACS::SelectTargets'
Properties:
ResourceType: 'ALIYUN::ECS::Instance'
RegionId: '{{ regionId }}'
Filters:
- Type: Tags
RegionId: '{{ regionId }}'
Tags:
Fn::If:
- Fn::Equals:
- ''
- '{{ resourceName }}'
- Fn::If:
- Fn::Equals:
- ''
- '{{ applicationGroupName }}'
- - Key: acs:computenest:serviceInstanceId
Value: '{{ serviceInstanceId }}'
- - Key: acs:computenest:serviceInstanceId
Value: '{{ serviceInstanceId }}'
- Key: acs:computenest:applicationGroup
Value: '{{ applicationGroupName }}'
- - Key: acs:computenest:serviceInstanceId
Value: '{{ serviceInstanceId }}'
- Key: acs:computenest:resourceName
Value: '{{ resourceName }}'
Outputs:
instanceId:
Type: String
ValueSelector: 'Instances.Instance[0].InstanceId'
- Name: runCommand
Action: 'ACS::ECS::RunCommand'
Description:
en: Execute cloud assistant command
zh-cn: 执行云助手命令
Properties:
regionId: '{{ regionId }}'
commandContent: '{{ commandContent }}'
instanceId: '{{ getInstance.instanceId }}'
commandType: '{{ commandType }}'
workingDir: '{{ workingDir }}'
timeout: '{{ timeout }}'
enableParameter: '{{ enableParameter }}'
parameters: '{{ parameters }}'
Outputs:
commandOutput:
Type: String
ValueSelector: invocationOutput
Outputs:
commandOutput:
Type: String
Value: '{{ runCommand.commandOutput }}'
Metadata:
'ALIYUN::OOS::Interface':
ParameterGroups:
- Parameters:
- commandType
- commandContent
- workingDir
- timeout
- enableParameter
- parameters
Label:
default:
zh-cn: 执行命令选型
en: run command options
- Parameters:
- regionId
- serviceInstanceId
- resourceName
Label:
default:
zh-cn: 选择实例
en: Select Ecs Instances
- Parameters:
- OOSAssumeRole
Label:
default:
zh-cn: 高级选项
en: Control Options