-
Notifications
You must be signed in to change notification settings - Fork 17
/
Copy pathACS::ECS::AttachKeyPairOnline.json
108 lines (108 loc) · 2.71 KB
/
ACS::ECS::AttachKeyPairOnline.json
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
{
"FormatVersion": "OOS-2019-06-01",
"Description": {
"name-en": "ACS::ECS::AttachKeyPairOnline",
"name-zh-cn": "在线绑定密钥对",
"en": "Attach key pair to Linux instance without reboot",
"zh-cn": "在线为Linux实例绑定密钥对,无需重启"
},
"Parameters": {
"regionId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::RegionId",
"Label": {
"en": "RegionId",
"zh-cn": "地域ID"
},
"Default": "{{ ACS::RegionId }}"
},
"instanceId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::Instance::InstanceId",
"Label": {
"en": "ECS Instance ID",
"zh-cn": "ECS实例ID"
}
},
"keyPairName": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::KeyPair::KeyPairName",
"Label": {
"en": "Key pair name",
"zh-cn": "密钥对名称"
}
}
},
"Tasks": [
{
"Name": "getKeyPairPublicKey",
"Action": "ACS::ExecuteApi",
"Description": {
"en": "Get Key Pair Public Key",
"zh-cn": "获取密钥对Public Key"
},
"Properties": {
"Service": "ecs",
"API": "DescribeKeyPairs",
"Parameters": {
"RegionId": "{{ regionId }}",
"KeyPairName": "{{ keyPairName }}",
"IncludePublicKey": true
}
},
"Outputs": {
"publicKey": {
"Type": "String",
"ValueSelector": ".KeyPairs.KeyPair[].PublicKey"
}
}
},
{
"Name": "addSshPublicKey",
"Action": "ACS::ECS::InvokeCommand",
"Description": {
"en": "Add ssh public key",
"zh-cn": "添加 ssh public key"
},
"Properties": {
"regionId": "{{ regionId }}",
"instanceId": "{{ instanceId }}",
"commandId": "ACS-ECS-AddSshPublicKey-for-linux.sh",
"parameters": {
"user": "root",
"ssh_pub_key": "{{ getKeyPairPublicKey.publicKey }}",
"mode": "renew"
}
},
"Outputs": {
"commandOutput": {
"Type": "String",
"ValueSelector": "invocationOutput"
}
}
},
{
"Name": "attachKeyPair",
"Action": "ACS::ExecuteApi",
"Description": {
"en": "Attach key pair",
"zh-cn": "绑定密钥对"
},
"Properties": {
"Service": "ecs",
"API": "AttachKeyPair",
"Parameters": {
"RegionId": "{{ regionId }}",
"KeyPairName": "{{ keyPairName }}",
"InstanceIds": "[\"{{ instanceId }}\"]"
}
}
}
],
"Outputs": {
"commandOutput": {
"Type": "String",
"Value": "{{ addSshPublicKey.commandOutput }}"
}
}
}