Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
aws
GitHub Repository: aws/aws-cli
Path: blob/develop/tests/functional/eks/test_util.py
1567 views
1
# Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
#
3
# Licensed under the Apache License, Version 2.0 (the "License"). You
4
# may not use this file except in compliance with the License. A copy of
5
# the License is located at
6
#
7
# http://aws.amazon.com/apache2.0/
8
#
9
# or in the "license" file accompanying this file. This file is
10
# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
11
# ANY KIND, either express or implied. See the License for the specific
12
# language governing permissions and limitations under the License.
13
14
"""This module contains some helpers for mocking eks clusters"""
15
16
import os
17
18
19
EXAMPLE_NAME = "ExampleCluster"
20
21
def get_testdata(file_name):
22
"""Get the path of a specific fixture"""
23
return os.path.join(
24
os.path.dirname(os.path.realpath(__file__)), "testdata", file_name
25
)
26
27
28
def list_cluster_response():
29
"""Get an example list_cluster call (For mocking)"""
30
return {
31
"clusters": [
32
EXAMPLE_NAME
33
]
34
}
35
36
37
def describe_cluster_response():
38
"""Get an example describe_cluster call (For mocking)"""
39
return {
40
"cluster": {
41
"status": "ACTIVE",
42
"endpoint": "https://endpoint.amazonaws.com",
43
"name": EXAMPLE_NAME,
44
"certificateAuthority": {
45
"data": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tDQpWR1Z6ZEdsdVp5QkVZWFJoRFFwVVpYTjBhVzVuSUVSaGRHRU5DbFJsYzNScGJtY2dSR0YwWVEwS2EzVmlaWEp1WlhSbGN6QWVGdzBLVkdWemRHbHVaeUJFWVhSaERRcFVaWE4wYVc1bklFUmhkR0ZWQkFNVERRcHJkV0psY201bGRHVnpNQUVpTUEwS1ZHVnpkR2x1WnlCRVlYUmhEUXBVWlhOMGFXNW5JRVJoZEdFTkNsUmxjM1JwYm1jZ1JHRjBZY3UvR1FnbmFTcDNZaHBDTWhGVVpYTjBhVzVuSUVSaGRHRXl3clZqeEpWNjNwNFVHRmpZdHdGR1drUldJVkV1VkdWemRHbHVaeUJFWVhSaGJzT0MxSVJiTDhPd0lpMVhiWGg2VkdWemRHbHVaeUJFWVhSaFpXVndTTk9VVUZKNmN5QWJaaFpnWVNkTUV3MEtGMVJsYzNScGJtY2dSR0YwWVFZRFZSMFBBUUVFQkFNQ0FsUmxjM1JwYm1jZ1JHRjBZUUV3RFFvR0NTcElEUXBVWlhOMGFXNW5JRVJoZEdGcEgxc1pPRTNMa3lrMU9DWUNHUloyTEZjM3paOCtHell3WEZSbGMzUnBibWNnUkdGMFlYMUR5NjFNMVlGV1AxWVRIMVJsYzNScGJtY2dSR0YwWVd0aE5oMVphM2dWUDBGaGNSWjdKaW9oZVc4N1JsUmxjM1JwYm1jZ1JHRjBZUVpIVHd4NE9IdzZmZz09DQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t"
46
},
47
"roleArn": "arn:aws:iam::111222333444/eksRole",
48
"resourcesVpcConfig": {
49
"subnetIds": [
50
"subnet-00000000000000000",
51
"subnet-00000000000000001",
52
"subnet-00000000000000002"
53
],
54
"vpcId": "vpc-00000000000000000",
55
"securityGroupIds": [
56
"sg-00000000000000000"
57
]
58
},
59
"version": "1.10",
60
"arn": "arn:aws:eks:region:111222333444:cluster/" + EXAMPLE_NAME,
61
"createdAt": 1500000000.000
62
}
63
}
64
65
def describe_cluster_response_outpost_cluster():
66
"""Get an example describe_cluster call (For mocking)"""
67
return {
68
"cluster": {
69
"status": "ACTIVE",
70
"endpoint": "https://endpoint.amazonaws.com",
71
"name": EXAMPLE_NAME,
72
"certificateAuthority": {
73
"data": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tDQpWR1Z6ZEdsdVp5QkVZWFJoRFFwVVpYTjBhVzVuSUVSaGRHRU5DbFJsYzNScGJtY2dSR0YwWVEwS2EzVmlaWEp1WlhSbGN6QWVGdzBLVkdWemRHbHVaeUJFWVhSaERRcFVaWE4wYVc1bklFUmhkR0ZWQkFNVERRcHJkV0psY201bGRHVnpNQUVpTUEwS1ZHVnpkR2x1WnlCRVlYUmhEUXBVWlhOMGFXNW5JRVJoZEdFTkNsUmxjM1JwYm1jZ1JHRjBZY3UvR1FnbmFTcDNZaHBDTWhGVVpYTjBhVzVuSUVSaGRHRXl3clZqeEpWNjNwNFVHRmpZdHdGR1drUldJVkV1VkdWemRHbHVaeUJFWVhSaGJzT0MxSVJiTDhPd0lpMVhiWGg2VkdWemRHbHVaeUJFWVhSaFpXVndTTk9VVUZKNmN5QWJaaFpnWVNkTUV3MEtGMVJsYzNScGJtY2dSR0YwWVFZRFZSMFBBUUVFQkFNQ0FsUmxjM1JwYm1jZ1JHRjBZUUV3RFFvR0NTcElEUXBVWlhOMGFXNW5JRVJoZEdGcEgxc1pPRTNMa3lrMU9DWUNHUloyTEZjM3paOCtHell3WEZSbGMzUnBibWNnUkdGMFlYMUR5NjFNMVlGV1AxWVRIMVJsYzNScGJtY2dSR0YwWVd0aE5oMVphM2dWUDBGaGNSWjdKaW9oZVc4N1JsUmxjM1JwYm1jZ1JHRjBZUVpIVHd4NE9IdzZmZz09DQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t"
74
},
75
"roleArn": "arn:aws:iam::111222333444/eksRole",
76
"resourcesVpcConfig": {
77
"subnetIds": [
78
"subnet-00000000000000000",
79
"subnet-00000000000000001",
80
"subnet-00000000000000002"
81
],
82
"vpcId": "vpc-00000000000000000",
83
"securityGroupIds": [
84
"sg-00000000000000000"
85
]
86
},
87
"version": "1.10",
88
"arn": "arn:aws:eks:region:111222333444:cluster/" + EXAMPLE_NAME,
89
"createdAt": 1500000000.000,
90
"id": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
91
"outpostConfig": {
92
"outpostArns": [
93
"arn:aws:outposts:us-west-2:111222333444:outpost/op-00000000000000000"
94
],
95
}
96
}
97
}
98
99
def describe_cluster_no_status_response():
100
"""Get an example describe_cluster call (For mocking)"""
101
return {
102
"cluster": {
103
"endpoint": "https://endpoint.amazonaws.com",
104
"name": EXAMPLE_NAME,
105
"certificateAuthority": {
106
"data": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tDQpWR1Z6ZEdsdVp5QkVZWFJoRFFwVVpYTjBhVzVuSUVSaGRHRU5DbFJsYzNScGJtY2dSR0YwWVEwS2EzVmlaWEp1WlhSbGN6QWVGdzBLVkdWemRHbHVaeUJFWVhSaERRcFVaWE4wYVc1bklFUmhkR0ZWQkFNVERRcHJkV0psY201bGRHVnpNQUVpTUEwS1ZHVnpkR2x1WnlCRVlYUmhEUXBVWlhOMGFXNW5JRVJoZEdFTkNsUmxjM1JwYm1jZ1JHRjBZY3UvR1FnbmFTcDNZaHBDTWhGVVpYTjBhVzVuSUVSaGRHRXl3clZqeEpWNjNwNFVHRmpZdHdGR1drUldJVkV1VkdWemRHbHVaeUJFWVhSaGJzT0MxSVJiTDhPd0lpMVhiWGg2VkdWemRHbHVaeUJFWVhSaFpXVndTTk9VVUZKNmN5QWJaaFpnWVNkTUV3MEtGMVJsYzNScGJtY2dSR0YwWVFZRFZSMFBBUUVFQkFNQ0FsUmxjM1JwYm1jZ1JHRjBZUUV3RFFvR0NTcElEUXBVWlhOMGFXNW5JRVJoZEdGcEgxc1pPRTNMa3lrMU9DWUNHUloyTEZjM3paOCtHell3WEZSbGMzUnBibWNnUkdGMFlYMUR5NjFNMVlGV1AxWVRIMVJsYzNScGJtY2dSR0YwWVd0aE5oMVphM2dWUDBGaGNSWjdKaW9oZVc4N1JsUmxjM1JwYm1jZ1JHRjBZUVpIVHd4NE9IdzZmZz09DQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t"
107
},
108
"roleArn": "arn:aws:iam::111222333444/eksRole",
109
"resourcesVpcConfig": {
110
"subnetIds": [
111
"subnet-00000000000000000",
112
"subnet-00000000000000001",
113
"subnet-00000000000000002"
114
],
115
"vpcId": "vpc-00000000000000000",
116
"securityGroupIds": [
117
"sg-00000000000000000"
118
]
119
},
120
"version": "1.10",
121
"arn": "arn:aws:eks:region:111222333444:cluster/" + EXAMPLE_NAME,
122
"createdAt": 1500000000.000
123
}
124
}
125
126
def describe_cluster_creating_response():
127
"""Get an example describe_cluster call during creation"""
128
return {
129
"cluster": {
130
"status": "CREATING",
131
"name": EXAMPLE_NAME,
132
"certificateAuthority": {},
133
"roleArn": "arn:aws:iam::111222333444/eksRole",
134
"resourcesVpcConfig": {
135
"subnetIds": [
136
"subnet-00000000000000000",
137
"subnet-00000000000000001",
138
"subnet-00000000000000002"
139
],
140
"vpcId": "vpc-00000000000000000",
141
"securityGroupIds": [
142
"sg-00000000000000000"
143
]
144
},
145
"version": "1.10",
146
"arn": "arn:aws:eks:region:111222333444:cluster/" + EXAMPLE_NAME,
147
"createdAt": 1500000000.000
148
}
149
}
150
151
152
def describe_cluster_deleting_response():
153
"""Get an example describe_cluster call during deletion"""
154
return {
155
"cluster": {
156
"status": "DELETING",
157
"endpoint": "https://endpoint.amazonaws.com",
158
"name": EXAMPLE_NAME,
159
"certificateAuthority": {
160
"data": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tDQpWR1Z6ZEdsdVp5QkVZWFJoRFFwVVpYTjBhVzVuSUVSaGRHRU5DbFJsYzNScGJtY2dSR0YwWVEwS2EzVmlaWEp1WlhSbGN6QWVGdzBLVkdWemRHbHVaeUJFWVhSaERRcFVaWE4wYVc1bklFUmhkR0ZWQkFNVERRcHJkV0psY201bGRHVnpNQUVpTUEwS1ZHVnpkR2x1WnlCRVlYUmhEUXBVWlhOMGFXNW5JRVJoZEdFTkNsUmxjM1JwYm1jZ1JHRjBZY3UvR1FnbmFTcDNZaHBDTWhGVVpYTjBhVzVuSUVSaGRHRXl3clZqeEpWNjNwNFVHRmpZdHdGR1drUldJVkV1VkdWemRHbHVaeUJFWVhSaGJzT0MxSVJiTDhPd0lpMVhiWGg2VkdWemRHbHVaeUJFWVhSaFpXVndTTk9VVUZKNmN5QWJaaFpnWVNkTUV3MEtGMVJsYzNScGJtY2dSR0YwWVFZRFZSMFBBUUVFQkFNQ0FsUmxjM1JwYm1jZ1JHRjBZUUV3RFFvR0NTcElEUXBVWlhOMGFXNW5JRVJoZEdGcEgxc1pPRTNMa3lrMU9DWUNHUloyTEZjM3paOCtHell3WEZSbGMzUnBibWNnUkdGMFlYMUR5NjFNMVlGV1AxWVRIMVJsYzNScGJtY2dSR0YwWVd0aE5oMVphM2dWUDBGaGNSWjdKaW9oZVc4N1JsUmxjM1JwYm1jZ1JHRjBZUVpIVHd4NE9IdzZmZz09DQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t"
161
},
162
"roleArn": "arn:aws:iam::111222333444/eksRole",
163
"resourcesVpcConfig": {
164
"subnetIds": [
165
"subnet-00000000000000000",
166
"subnet-00000000000000001",
167
"subnet-00000000000000002"
168
],
169
"vpcId": "vpc-00000000000000000",
170
"securityGroupIds": [
171
"sg-00000000000000000"
172
]
173
},
174
"version": "1.10",
175
"arn": "arn:aws:eks:region:111222333444:cluster/" + EXAMPLE_NAME,
176
"createdAt": 1500000000.000
177
}
178
}
179
180
def assume_role_response():
181
return {
182
"Credentials": {
183
"AccessKeyId": "test-access-key",
184
"SecretAccessKey": "test-secret-key",
185
"SessionToken": "test-session-token"
186
}
187
}
188
189