36 lines
1.3 KiB
Python
36 lines
1.3 KiB
Python
import json
|
|
|
|
def isexist(quotas, key):
|
|
flag = False
|
|
for quota in quotas:
|
|
if quota['name'] == key:
|
|
flag = True
|
|
return flag
|
|
return flag
|
|
|
|
fspath = '/opt/docklet'
|
|
groupfile = open(fspath+"/global/sys/quota",'r')
|
|
groups = json.loads(groupfile.read())
|
|
groupfile.close()
|
|
for group in groups:
|
|
group['quotas']['portmapping'] = 8
|
|
group['quotas']['input_rate_limit'] = 10000
|
|
group['quotas']['output_rate_limit'] = 10000
|
|
groupfile = open(fspath+"/global/sys/quota",'w')
|
|
groupfile.write(json.dumps(groups))
|
|
groupfile.close()
|
|
|
|
quotafile = open(fspath+"/global/sys/quotainfo",'r')
|
|
quotas = json.loads(quotafile.read())
|
|
quotafile.close()
|
|
|
|
if not isexist(quotas['quotainfo'], 'portmapping'):
|
|
quotas['quotainfo'].append({'name':'portmapping', 'hint':'how many ports the user can map, e.g. 8'})
|
|
if not isexist(quotas['quotainfo'], 'input_rate_limit'):
|
|
quotas['quotainfo'].append({'name':'input_rate_limit', 'hint':'the ingress speed of the network, number of kbps. 0 means the rate are unlimited.'})
|
|
if not isexist(quotas['quotainfo'], 'output_rate_limit'):
|
|
quotas['quotainfo'].append({'name':'output_rate_limit', 'hint':'the egress speed of the network, number of kbps. 0 means the rate are unlimited.'})
|
|
quotafile = open(fspath+"/global/sys/quotainfo",'w')
|
|
quotafile.write(json.dumps(quotas))
|
|
quotafile.close()
|