Skip to content

Commit b1f2fd5

Browse files
authored
Merge pull request KscSDK#5 from KscSDK/master
merged from base
2 parents 00dcd79 + 1c27ff7 commit b1f2fd5

File tree

10 files changed

+793
-24
lines changed

10 files changed

+793
-24
lines changed

README.rst

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,8 @@ Service 服务
7979
+-------------------+------------+
8080
| monitor | |
8181
+-------------------+------------+
82+
| offline | |
83+
+-------------------+------------+
8284

8385
----------------
8486
Method 方法
@@ -164,6 +166,50 @@ Examples 示例
164166

165167
print json.dumps(m,sort_keys=True,indent=4)
166168

169+
+ OFFLINE
170+
171+
::
172+
173+
from kscore.session import get_session
174+
import json
175+
176+
if __name__=="__main__":
177+
178+
#初始化
179+
s = get_session()
180+
client = s.create_client("offline", "cn-beijing-6", use_ssl=False)
181+
182+
#创建模板接口调用示例 : preset
183+
presetname = 'testpreset'
184+
description = 'just a demo'
185+
presetType = 'avop'
186+
param = {
187+
"preset": presetname,
188+
"description": description,
189+
"presettype": presetType,
190+
"param": {
191+
"f": "mp4",
192+
"AUDIO": {
193+
"acodec": "aac",
194+
"ar":"44100",
195+
"ab":"64k"
196+
},
197+
"VIDEO": {
198+
"vr": 25,
199+
"vb": "500k",
200+
"vcodec": "h264",
201+
"width": 640,
202+
"height": 360
203+
}
204+
}
205+
}
206+
res = client.preset(**param)
207+
print json.dumps(res)
208+
209+
#获取模板信息接口调用示例 : get_preset_detail
210+
res = client.get_preset_detail(preset = presetname)
211+
print json.dumps(res)
212+
167213
+ 更多
168214

169215
--------------------

examples/kcs.py

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
# -*- encoding:utf-8 -*-
2+
3+
from kscore.session import get_session
4+
5+
if __name__ == "__main__":
6+
s = get_session()
7+
8+
#确定服务名称以及机房
9+
kcsClient = s.create_client("kcs", "cn-shanghai-3", use_ssl=False)
10+
11+
# 创建缓存服务
12+
#print(kcsClient.create_cache_cluster(**{'Action': 'CreateCacheCluster', 'Version': '2016-07-01', 'Name': 'pjl_sdk_test0921', 'Capacity': 1, 'NetType': 2, 'VpcId': '3c12ccdf-9b8f-4d9b-8aa6-a523897e97a1', 'VnetId': '293c16a5-c757-405c-a693-3b2a3adead50'}))
13+
14+
# 查询缓存服务列表
15+
#print(kcsClient.describe_cache_clusters(**{'Action': 'DescribeCacheClusters', 'Version': '2016-07-01', 'Offset': 0, 'Limit': 5, 'OrderBy': 'created,desc'}))
16+
17+
# 查询缓存服务详情
18+
#print(kcsClient.describe_cache_cluster(**{'Action': 'DescribeCacheCluster', 'Version': '2016-07-01', 'CacheId': '01988fc0-6041-49d2-b6b5-e2385e5d5edb'}))
19+
20+
# 重命名缓存服务
21+
#print(kcsClient.rename_cache_cluster(**{'Action': 'RenameCacheCluster', 'Version': '2016-07-01', 'Name': 'pjl_test_sdk', 'CacheId': '01988fc0-6041-49d2-b6b5-e2385e5d5edb'}))
22+
23+
# 清空缓存服务
24+
#print(kcsClient.flush_cache_cluster(**{'Action': 'FlushCacheCluster', 'Version': '2016-07-01', 'CacheId': '01988fc0-6041-49d2-b6b5-e2385e5d5edb'}))
25+
26+
# 锁定缓存服务
27+
#print(kcsClient.lock_cache_cluster(**{'Action': 'LockCacheCluster', 'Version': '2016-07-01', 'CacheId': '01988fc0-6041-49d2-b6b5-e2385e5d5edb'}))
28+
29+
# 解锁缓存服务
30+
#print(kcsClient.unlock_cache_cluster(**{'Action': 'UnlockCacheCluster', 'Version': '2016-07-01', 'CacheId': '01988fc0-6041-49d2-b6b5-e2385e5d5edb'}))
31+
32+
# 更配缓存服务
33+
#print(kcsClient.resize_cache_cluster(**{'Action': 'ResizeCacheCluster', 'Version': '2016-07-01', 'CacheId': '01988fc0-6041-49d2-b6b5-e2385e5d5edb', 'Capacity': 2}))
34+
35+
# 删除缓存服务
36+
#print(kcsClient.delete_cache_cluster(**{'Action': 'DeleteCacheCluster', 'Version': '2016-07-01', 'CacheId': 'b80ef266-dd52-47b2-9377-6a4a73626c19'}))
37+
38+
# 查询缓存服务参数
39+
#print(kcsClient.describe_cache_parameters(**{'Action': 'DescribeCacheParameters', 'Version': '2016-07-01', 'CacheId': '01988fc0-6041-49d2-b6b5-e2385e5d5edb'}))
40+
41+
# 设置缓存服务参数
42+
#print(kcsClient.set_cache_parameters(**{'Action': 'SetCacheParameters', 'Version': '2016-07-01', 'CacheId': '01988fc0-6041-49d2-b6b5-e2385e5d5edb', 'Parameters.ParameterName.1': 'maxmemory-policy', 'Parameters.ParameterValue.1': 'allkeys-lru', 'ResetAllParameters': 'true'}))
43+
44+
# 查询缓存服务安全规则
45+
#print(kcsClient.describe_cache_security_rules(**{'Action': 'DescribeCacheSecurityRules', 'Version': '2016-07-01', 'CacheId': '01988fc0-6041-49d2-b6b5-e2385e5d5edb'}))
46+
47+
# 设置缓存服务安全规则
48+
#print(kcsClient.set_cache_security_rules(**{'Action': 'SetCacheSecurityRules', 'Version': '2016-07-01', 'CacheId': '01988fc0-6041-49d2-b6b5-e2385e5d5edb', 'SecurityRules.Cidr.1': '192.168.18.17/21'}))
49+
50+
# 删除缓存服务安全规则
51+
#print(kcsClient.delete_cache_security_rule(**{'Action': 'DeleteCacheSecurityRule', 'Version': '2016-07-01', 'CacheId': '01988fc0-6041-49d2-b6b5-e2385e5d5edb', 'SecurityRuleId': 105}))

examples/network.py

100644100755
Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,23 +23,24 @@
2323
allInstances=kecClient.describe_instances()
2424
allEips=eipClient.describe_addresses(**{'Filter.1.Name':'instance-type','Filter.1.Value.1':'Slb'})
2525
allListeners=slbClient.describe_listeners(**{'Filter.1.Name':'load-balancer-id','Filter.1.Value.1':'5acac037-531c-414e-bb6f-c639c8948a57'})
26-
givenListeners=slbClient.describe_listeners(**{'ListenerId.1':'ca2717c8-9bc0-4955-a2f1-2b53b24301b9'})
27-
#slbClient.deregister_instances_from_listener(**{'RegisterId':'b74b0d7f-79f2-4601-980f-326804f22f42'})
26+
#slbClient.register_instances_with_listener(**{'ListenerId':'9b465945-5214-4038-8436-c1764b8298f5','RealServerIp':'10.0.0.2','RealServerPort':'80','RealServerType':'host'})
27+
givenListeners=slbClient.describe_listeners(**{'ListenerId.1':'9b465945-5214-4038-8436-c1764b8298f5'})
28+
prettyPrinter().pprint(givenListeners)
29+
#slbClient.deregister_instances_from_listener(**{'RegisterId':'cf0245b2-b847-462a-a777-7f680f6e48b8'})
2830

2931
#pprint.pprint(allEips)
3032

3133
#prettyPrinter().pprint(allVpcs)
3234
#prettyPrinter().pprint(allEips)
3335
#prettyPrinter().pprint(allNics)
34-
prettyPrinter().pprint(allInstances)
36+
#prettyPrinter().pprint(allInstances)
3537
for item in allEips['AddressesSet']:
3638
print item['PublicIp']
3739
print item['AllocationId']
38-
eipClient.associate_address(**{'AllocationId':'1cd0da05-8a3e-4c8e-8230-e6d39b85331e','InstanceType':'Ipfwd','InstanceId':'bede9a1c-d3a7-4b31-82e6-6699790ad1a3', 'NetworkInterfaceId':'fec81567-a4c7-4460-a998-54f407e77c0a'})
39-
eipClient.disassociate_address(**{'AllocationId':'1cd0da05-8a3e-4c8e-8230-e6d39b85331e'})
40+
#eipClient.associate_address(**{'AllocationId':'1cd0da05-8a3e-4c8e-8230-e6d39b85331e','InstanceType':'Ipfwd','InstanceId':'bede9a1c-d3a7-4b31-82e6-6699790ad1a3', 'NetworkInterfaceId':'fec81567-a4c7-4460-a998-54f407e77c0a'})
41+
#eipClient.disassociate_address(**{'AllocationId':'1cd0da05-8a3e-4c8e-8230-e6d39b85331e'})
4042
for item in allListeners['ListenerSet']:
4143
print item['ListenerName']
4244
print item['ListenerId']
43-
prettyPrinter().pprint(givenListeners)
4445
#availableIps=vpcClient.describe_subnet_available_addresses()
4546
#availableIps=vpcClient.describe_subnet_available_addresses(**{'Filter.1.Name':'subnet-id','Filter.1.Value.1':'0d238ac1-69b0-4602-893b-8da5862069e0'})

examples/offline.py

Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
# -*- encoding:utf-8 -*-
2+
from kscore.session import get_session
3+
import json
4+
5+
#初始化
6+
s = get_session()
7+
#注:参数不能改变
8+
client = s.create_client("offline", "cn-beijing-6", use_ssl=False)
9+
10+
#创建模板接口调用示例 : preset
11+
presetname = 'testpreset'
12+
description = 'just a demo'
13+
presetType = 'avop'
14+
15+
#具体的格式请参考官网说明
16+
param = {
17+
"preset": presetname,
18+
"description": description,
19+
"presettype": presetType,
20+
"param": {
21+
"f": "mp4",
22+
"AUDIO": {
23+
"acodec": "aac",
24+
"ar":"44100",
25+
"ab":"64k"
26+
},
27+
"VIDEO": {
28+
"vr": 25,
29+
"vb": "500k",
30+
"vcodec": "h264",
31+
"width": 640,
32+
"height": 360
33+
}
34+
}
35+
}
36+
37+
#该接口需要输入json格式数据,并且在参数前面加上"**"
38+
res = client.preset(**param)
39+
print json.dumps(res)
40+
41+
42+
#更新模板接口调用示例 : update_preset
43+
#该接口需要输入json格式数据,并且在参数前面加上"**"
44+
res = client.update_preset(**param)
45+
print json.dumps(res)
46+
47+
#获取模板列表接口调用示例 : get_preset_list
48+
res = client.get_preset_list()
49+
print json.dumps(res)
50+
51+
#获取模板信息接口调用示例 : get_preset_detail
52+
res = client.get_preset_detail(preset = presetname)
53+
print json.dumps(res)
54+
55+
#删除模板接口调用示例 : del_preset
56+
res = client.del_preset(preset = presetname)
57+
print json.dumps(res)
58+
59+
60+
#创建任务接口调用示例 : create_task
61+
#具体参数请参考官方文档
62+
task = {
63+
"dstDir": "",
64+
"dstObjectKey": "4.mp4",
65+
"dstBucket": "autotestoffline",
66+
"dstAcl": "public-read",
67+
"preset": presetname,
68+
"srcInfo": [
69+
{
70+
"path": "/autotestoffline/11.mp4",
71+
"type": "video",
72+
"index": 0
73+
}
74+
],
75+
"cbMethod": "POST",
76+
"cbUrl": "http://10.4.2.38:19090/"
77+
}
78+
79+
#该接口需要输入json格式数据,并且在参数前面加上"**"
80+
res = client.create_task(**task)
81+
print json.dumps(res)
82+
83+
#查看任务状态接口调用示例 : get_task_by_task_id
84+
taskid = "40d309d3b2bf373cd3f08e5b5e1bddf720160816"
85+
res = client.get_task_by_task_id(taskid = taskid)
86+
print json.dumps(res)
87+
88+
#获取任务列表接口调用示例 : get_task_list
89+
res = client.get_task_list()
90+
print json.dumps(res)
91+
92+
#删除任务接口调用示例 : del_task_by_task_id
93+
res = client.del_task_by_task_id(taskid = taskid)
94+
print json.dumps(res)
95+
96+
#任务置顶接口调用示例 : top_task_by_task_id
97+
res = client.top_task_by_task_id(taskid = taskid)
98+
print json.dumps(res)
99+
100+
#查询任务META列表接口调用示例 : get_task_meta_info
101+
res = client.get_task_meta_info(taskid = taskid)
102+
print json.dumps(res)

kscore/data/eip/2016-03-04/service-2.yaml

Lines changed: 27 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -16,19 +16,43 @@ operations:
1616
method: GET
1717
input:
1818
shape: Empty
19-
20-
DescribeAddresses:
21-
name: DescribeAddresses
19+
GetLines:
20+
name: GetLines
2221
http:
2322
method: GET
23+
AllocateAddress:
24+
name: AllocateAddress
25+
http:
26+
method: GET
27+
ReleaseAddress:
28+
name: ReleaseAddress
29+
http:
30+
method: GET
2431
AssociateAddress:
2532
name: AssociateAddress
2633
http:
2734
method: GET
2835
DisassociateAddress:
2936
name: DisassociateAddress
37+
http:
38+
method: GET
39+
DescribeAddresses:
40+
name: DescribeAddresses
3041
http:
3142
method: GET
43+
AssociateAddressPortfwd:
44+
name: AssociateAddressPortfwd
45+
http:
46+
method: GET
47+
DisassociateAddressPortfwd:
48+
name: DisassociateAddressPortfwd
49+
http:
50+
method: GET
51+
DescribeAddressPortfwds:
52+
name: DescribeAddressPortfwds
53+
http:
54+
method: GET
55+
3256

3357
shapes:
3458
Id:
@@ -63,11 +87,3 @@ shapes:
6387
id:
6488
shape: Id
6589
documentation: ""
66-
67-
DescribeAddresses:
68-
type: structure
69-
members:
70-
NextToken:
71-
shape: NonEmptyString
72-
MaxResults:
73-
shape: Int

kscore/data/endpoints.yaml

Lines changed: 44 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,18 @@ partitions:
2525

2626
cn-beijing-5:
2727
description: China Beijing (ZaoJunMiao)
28+
29+
cn-beijing-1:
30+
description: China Beijing (YiZhuang)
31+
32+
cn-beijing-3:
33+
description: China Beijing
34+
35+
cn-shanghai-1:
36+
description: China ShangHai
37+
38+
cn-shanghai-3:
39+
description: China ShangHai (PengBoShiVPC)
2840
# services
2941
services:
3042

@@ -88,5 +100,36 @@ partitions:
88100
protocols:
89101
- http
90102
- https
103+
offline:
104+
defaults:
105+
credentialScope:
106+
service: offline
107+
EndpointRegion: cn-beijing-6
108+
endpoints:
109+
cn-beijing-6:
110+
protocols:
111+
- http
91112

92-
113+
kcs:
114+
defaults:
115+
credentialScope:
116+
service: kcs
117+
endpoints:
118+
cn-shanghai-3:
119+
protocols:
120+
- http
121+
cn-beijing-1:
122+
protocols:
123+
- http
124+
cn-beijing-3:
125+
protocols:
126+
- http
127+
cn-beijing-6:
128+
protocols:
129+
- http
130+
cn-shanghai-1:
131+
protocols:
132+
- http
133+
cn-shanghai-2:
134+
protocols:
135+
- http

0 commit comments

Comments
 (0)