cloudpss 4.1.1b8__py3-none-any.whl → 4.1.1b9__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- cloudpss/asyncio/__init__.py +8 -0
- cloudpss/asyncio/job/__init__.py +5 -0
- cloudpss/asyncio/job/job.py +116 -0
- cloudpss/asyncio/job/messageStreamReceiver.py +121 -0
- cloudpss/asyncio/job/messageStreamSender.py +45 -0
- cloudpss/asyncio/model/__init__.py +5 -0
- cloudpss/asyncio/model/model.py +257 -0
- cloudpss/asyncio/model/revision.py +41 -0
- cloudpss/asyncio/model/topology.py +34 -0
- cloudpss/asyncio/utils/__init__.py +6 -0
- cloudpss/{utils → asyncio/utils}/httpAsyncRequest.py +2 -2
- cloudpss/dslab/dslab.py +115 -21
- cloudpss/function/functionExecution.py +10 -0
- cloudpss/ieslab/DataManageModel.py +65 -16
- cloudpss/ieslab/IESLabPlan.py +78 -0
- cloudpss/ieslab/IESLabSimulation.py +59 -32
- cloudpss/ieslab/PlanModel.py +11 -7
- cloudpss/job/job.py +119 -132
- cloudpss/job/jobReceiver.py +7 -1
- cloudpss/job/messageStreamReceiver.py +42 -99
- cloudpss/job/messageStreamSender.py +5 -42
- cloudpss/job/view/EMTView.py +9 -11
- cloudpss/job/view/IESLabTypicalDayView.py +114 -5
- cloudpss/job/view/view.py +36 -7
- cloudpss/model/implements/diagram.py +113 -0
- cloudpss/model/jobDefinitions.py +6 -6
- cloudpss/model/model.py +181 -193
- cloudpss/model/revision.py +29 -34
- cloudpss/model/topology.py +12 -14
- cloudpss/runner/MessageStreamReceiver.py +2 -0
- cloudpss/utils/httprequests.py +6 -5
- cloudpss/version.py +1 -1
- {cloudpss-4.1.1b8.dist-info → cloudpss-4.1.1b9.dist-info}/METADATA +1 -1
- {cloudpss-4.1.1b8.dist-info → cloudpss-4.1.1b9.dist-info}/RECORD +37 -31
- cloudpss/job/jobMachine.py +0 -11
- cloudpss/job/jobPolicy.py +0 -129
- cloudpss/job/jobQueue.py +0 -14
- cloudpss/job/jobTres.py +0 -6
- /cloudpss/{utils → asyncio/utils}/AsyncIterable.py +0 -0
- {cloudpss-4.1.1b8.dist-info → cloudpss-4.1.1b9.dist-info}/WHEEL +0 -0
- {cloudpss-4.1.1b8.dist-info → cloudpss-4.1.1b9.dist-info}/top_level.txt +0 -0
cloudpss/model/revision.py
CHANGED
@@ -1,12 +1,11 @@
|
|
1
|
-
import
|
2
|
-
from cloudpss.utils.httpAsyncRequest import graphql_fetch
|
1
|
+
from cloudpss.job.job import Job
|
3
2
|
from .topology import ModelTopology
|
4
3
|
from .implements import ModelImplement
|
5
|
-
from ..utils import
|
6
|
-
from ..runner import Runner
|
4
|
+
from ..utils import graphql_request
|
7
5
|
|
8
6
|
|
9
7
|
class ModelRevision(object):
|
8
|
+
|
10
9
|
"""
|
11
10
|
表示一个项目的版本数据
|
12
11
|
|
@@ -23,6 +22,12 @@ class ModelRevision(object):
|
|
23
22
|
|
24
23
|
|
25
24
|
"""
|
25
|
+
|
26
|
+
__createModelRevisionQuery = """
|
27
|
+
mutation($a:CreateModelRevisionInput!){createModelRevision(input:$a){
|
28
|
+
hash
|
29
|
+
}}
|
30
|
+
"""
|
26
31
|
|
27
32
|
def __init__(self, revision: dict = {}):
|
28
33
|
"""
|
@@ -56,21 +61,27 @@ class ModelRevision(object):
|
|
56
61
|
"""
|
57
62
|
|
58
63
|
return self.implements
|
59
|
-
|
60
|
-
|
64
|
+
|
65
|
+
def run(self, job, config, name=None, policy=None,stop_on_entry=None,rid=None, **kwargs):
|
61
66
|
"""
|
62
|
-
|
67
|
+
运行当前版本
|
63
68
|
|
64
69
|
:params job: 调用仿真时使用的计算方案,为空时使用项目的第一个计算方案
|
65
70
|
:params config: 调用仿真时使用的参数方案,为空时使用项目的第一个参数方案
|
66
71
|
:params name: 任务名称,为空时使用项目的参数方案名称和计算方案名称
|
67
72
|
:params rid: 项目rid,可为空
|
68
73
|
|
69
|
-
:return:
|
74
|
+
:return: 返回一个运行实例
|
70
75
|
|
71
76
|
>>> revision.run(revision,job,config,'')
|
72
77
|
"""
|
73
|
-
|
78
|
+
revision= ModelRevision.create(self)
|
79
|
+
if stop_on_entry is not None:
|
80
|
+
job['args']['stop_on_entry'] = stop_on_entry
|
81
|
+
return Job.create(
|
82
|
+
revision["hash"], job, config, name, rid, policy, **kwargs
|
83
|
+
)
|
84
|
+
|
74
85
|
|
75
86
|
@staticmethod
|
76
87
|
def create(revision, parentHash=None):
|
@@ -85,36 +96,19 @@ class ModelRevision(object):
|
|
85
96
|
{hash:'4043acbddb9ce0c6174be65573c0380415bc48186c74a459f88865313743230c'}
|
86
97
|
"""
|
87
98
|
|
88
|
-
return asyncio.run(ModelRevision.createAsync(revision, parentHash))
|
89
|
-
|
90
|
-
@staticmethod
|
91
|
-
async def createAsync(revision, parentHash=None):
|
92
|
-
"""
|
93
|
-
创建一个新版本
|
94
|
-
|
95
|
-
:params: revision 版本数据
|
96
|
-
|
97
|
-
:return: 项目版本hash
|
98
|
-
|
99
|
-
>>> ModelRevision.create(model.revision)
|
100
|
-
{hash:'4043acbddb9ce0c6174be65573c0380415bc48186c74a459f88865313743230c'}
|
101
|
-
"""
|
102
|
-
|
103
|
-
query = """
|
104
|
-
mutation($a:CreateModelRevisionInput!){createModelRevision(input:$a){
|
105
|
-
hash
|
106
|
-
}}
|
107
|
-
"""
|
108
99
|
r = revision.toJSON()
|
109
|
-
|
100
|
+
if 'hash' in r:
|
101
|
+
del r['hash']
|
110
102
|
variables = {'a': {**r, 'parent': parentHash}}
|
111
|
-
|
112
|
-
r = await graphql_fetch(query, variables)
|
103
|
+
r = graphql_request(ModelRevision.__createModelRevisionQuery, variables)
|
113
104
|
if 'errors' in r:
|
114
105
|
raise Exception(r['errors'])
|
106
|
+
|
115
107
|
return r['data']['createModelRevision']
|
108
|
+
|
109
|
+
|
116
110
|
|
117
|
-
|
111
|
+
def fetchTopology(self, implementType, config, maximumDepth):
|
118
112
|
"""
|
119
113
|
获取当前项目版本的拓扑数据
|
120
114
|
|
@@ -131,6 +125,7 @@ class ModelRevision(object):
|
|
131
125
|
"""
|
132
126
|
|
133
127
|
if self.hash is not None:
|
134
|
-
return
|
128
|
+
return ModelTopology.fetch(self.hash, implementType, config,
|
135
129
|
maximumDepth)
|
136
130
|
return None
|
131
|
+
|
cloudpss/model/topology.py
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
import asyncio
|
2
2
|
import json
|
3
3
|
|
4
|
-
from cloudpss.utils.httpAsyncRequest import graphql_fetch
|
5
4
|
from ..utils import request, graphql_request
|
6
5
|
|
7
6
|
|
@@ -19,6 +18,13 @@ class ModelTopology():
|
|
19
18
|
|
20
19
|
|
21
20
|
"""
|
21
|
+
__modelTopologyQuery = """
|
22
|
+
query($a:ModelTopologyInput!){
|
23
|
+
modelTopology(input:$a){
|
24
|
+
components
|
25
|
+
mappings
|
26
|
+
}}
|
27
|
+
"""
|
22
28
|
__All__ = ['ModelTopology']
|
23
29
|
|
24
30
|
def __init__(self, topology: dict = {}):
|
@@ -48,10 +54,6 @@ class ModelTopology():
|
|
48
54
|
|
49
55
|
@staticmethod
|
50
56
|
def fetch(hash, implementType, config, maximumDepth=None):
|
51
|
-
return asyncio.run(ModelTopology.fetchAsync(hash, implementType, config, maximumDepth))
|
52
|
-
|
53
|
-
@staticmethod
|
54
|
-
async def fetchAsync(hash, implementType, config, maximumDepth=None):
|
55
57
|
"""
|
56
58
|
获取拓扑
|
57
59
|
|
@@ -66,14 +68,6 @@ class ModelTopology():
|
|
66
68
|
|
67
69
|
"""
|
68
70
|
args = {} if config is None else config['args']
|
69
|
-
query = """
|
70
|
-
query($a:ModelTopologyInput!){
|
71
|
-
modelTopology(input:$a){
|
72
|
-
components
|
73
|
-
mappings
|
74
|
-
}}
|
75
|
-
"""
|
76
|
-
|
77
71
|
variables = {
|
78
72
|
"a": {
|
79
73
|
'hash': hash,
|
@@ -82,8 +76,12 @@ class ModelTopology():
|
|
82
76
|
'maximumDepth': maximumDepth
|
83
77
|
}
|
84
78
|
}
|
85
|
-
data =
|
79
|
+
data = graphql_request(ModelTopology.__modelTopologyQuery, variables)
|
86
80
|
if 'errors' in data:
|
87
81
|
raise Exception(data['errors'][0]['message'])
|
88
82
|
|
89
83
|
return ModelTopology(data['data']['modelTopology'])
|
84
|
+
|
85
|
+
|
86
|
+
|
87
|
+
|
cloudpss/utils/httprequests.py
CHANGED
@@ -33,12 +33,13 @@ def request(method, uri, baseUrl=None, params={}, token=None, **kwargs):
|
|
33
33
|
r.headers['X-Cloudpss-Version'] +
|
34
34
|
'.X.X)不兼容,请更换服务器地址或更换SDK版本(pip 使用 pip install -U cloudpss 命令更新, conda 使用 conda update cloudpss 命令更新)。')
|
35
35
|
|
36
|
-
if r.ok:
|
37
|
-
|
38
|
-
logging.debug(r.text)
|
39
|
-
if r.text =="":
|
40
|
-
|
36
|
+
# if r.ok:
|
37
|
+
# return r
|
38
|
+
# logging.debug(r.text)
|
39
|
+
# if r.text =="":
|
40
|
+
r.raise_for_status()
|
41
41
|
if "statusCode" in r.text:
|
42
42
|
t = json.loads(r.text)
|
43
43
|
raise Exception(str(t['statusCode']) + " "+t['message'])
|
44
|
+
return r
|
44
45
|
|
cloudpss/version.py
CHANGED
@@ -1 +1 @@
|
|
1
|
-
__version__ = '4.1.1-beta.
|
1
|
+
__version__ = '4.1.1-beta.9'
|
@@ -1,47 +1,55 @@
|
|
1
1
|
cloudpss/__init__.py,sha256=EkdgEdD_kYmiXM8cGHX5sZwBnyo-cbNYx70qpUsThgI,835
|
2
2
|
cloudpss/verify.py,sha256=KF4Gd59DGvCyIEkRD7rNnekWw22XxJpi3DW6keb6j4c,1498
|
3
|
-
cloudpss/version.py,sha256=
|
3
|
+
cloudpss/version.py,sha256=fG8qYs4NCFq_sO9Emm5U6GtkXwVKnIaGvwQWkCb68X4,29
|
4
|
+
cloudpss/asyncio/__init__.py,sha256=CJGopQl_vz3z3fJsK7NjMX5uzkzfrJrbqKVhyYqlYWc,198
|
5
|
+
cloudpss/asyncio/job/__init__.py,sha256=3UIFZYjJTzuckM61o8kim1c3PWt2SSHTL72jrGu5IzI,51
|
6
|
+
cloudpss/asyncio/job/job.py,sha256=ExA-8JVOWWW5neVvNazPk4i3Z-q8xqYBL4qXU1m3rgM,3891
|
7
|
+
cloudpss/asyncio/job/messageStreamReceiver.py,sha256=LIEBmum2IRgeME8dO460B7MyF9esQIFFAo7bSrhZI5o,3864
|
8
|
+
cloudpss/asyncio/job/messageStreamSender.py,sha256=rrSWnvveG6cP0hmGGKOwSvJsXWhVE0k1u1Z2VlPZQGo,1594
|
9
|
+
cloudpss/asyncio/model/__init__.py,sha256=SNq-bfwcQtDHtTNBYppfUEs8wkjfrQfGeywx7igmvOs,151
|
10
|
+
cloudpss/asyncio/model/model.py,sha256=vso4en-pnV2kpzNiQ9d-LyqHyM0H6MUbC5vFdvzi_aw,8627
|
11
|
+
cloudpss/asyncio/model/revision.py,sha256=pcKNErIzyftq4_1CCQxArx6OeCuNMGInJHH97EBQ1lA,1568
|
12
|
+
cloudpss/asyncio/model/topology.py,sha256=jouPmteTxpTV6mFzUGy7CiSEnBrbtCu-1shimJvC2FA,1192
|
13
|
+
cloudpss/asyncio/utils/AsyncIterable.py,sha256=AIWYrTnmjsIfOowE3asZlexdHNhpK2gm7aucfyyVoQw,781
|
14
|
+
cloudpss/asyncio/utils/__init__.py,sha256=F-rCvgRAGcV-fFO7o-dsXwooyhcVpElWoBEQM67kO7c,84
|
15
|
+
cloudpss/asyncio/utils/httpAsyncRequest.py,sha256=KIck-3uQwGcHMIJ6632_Zo0syc4GnNG2EoUXmQh54ck,2692
|
4
16
|
cloudpss/dslab/__init__.py,sha256=UdLDA9OArvLndHtumYAMMHdr5h8S6DrZCYkXIi2Mb4Y,45
|
5
17
|
cloudpss/dslab/dataManageModel.py,sha256=7sTRpAGnuSNtFsUb-VEDp5XzOlAZvidypkniHX32wLY,11527
|
6
|
-
cloudpss/dslab/dslab.py,sha256=
|
18
|
+
cloudpss/dslab/dslab.py,sha256=K-tRlNE9use-i1MzwgBAdVr0w4i03WHHEzjFOme095Q,13511
|
7
19
|
cloudpss/dslab/financialAnalysisModel.py,sha256=t9cZ03yWvLN5ojVeLp-UGgFBIFVU5wbnn5E0UHZA0ws,5062
|
8
20
|
cloudpss/dslab/files/__init__.py,sha256=l2g0VadtTiMW39zwCwHPHUC01Kbklb_nFUPVeQ16FwM,58
|
9
21
|
cloudpss/dslab/files/curveData.py,sha256=GU_DTTKjVn_ln9Hx0q9CFgfmNtokZi7b4DYSzGeP5dk,4291778
|
10
22
|
cloudpss/dslab/files/files.py,sha256=vS0VhAh1lb8oFw51E2rAsb0WpmqM9F9IprxNCAPqH1s,934
|
11
23
|
cloudpss/function/__init__.py,sha256=TNzChB-gQF6oB62F423evpUlgcp6s03D4pKKs89Lz4Q,1629
|
12
24
|
cloudpss/function/function.py,sha256=llomkfnTmKMiFJYJ2mKnmAEoIjTNVCnjCUUyiJMOV1s,29
|
13
|
-
cloudpss/function/functionExecution.py,sha256=
|
25
|
+
cloudpss/function/functionExecution.py,sha256=o5S6EK6v2lXH4CY18dl2xSNgAYywpAGAToEIPk-q6Ms,14894
|
14
26
|
cloudpss/function/job.py,sha256=LdzaTyjvBcMZIyLstSZnt79d2eREljx2HnNoilDp03A,13162
|
15
|
-
cloudpss/ieslab/DataManageModel.py,sha256=
|
27
|
+
cloudpss/ieslab/DataManageModel.py,sha256=G4FzLcEE5st9j6v679q3NxtcEfgYk2qUJt_OTSEc_b0,21921
|
16
28
|
cloudpss/ieslab/EvaluationModel.py,sha256=SD7VB81wZnebGQWpx-eTQMQxe6ekFUFycQxz6RyYwOI,6721
|
17
|
-
cloudpss/ieslab/IESLabPlan.py,sha256=
|
18
|
-
cloudpss/ieslab/IESLabSimulation.py,sha256
|
19
|
-
cloudpss/ieslab/PlanModel.py,sha256=
|
29
|
+
cloudpss/ieslab/IESLabPlan.py,sha256=fL7uiVJNOkx5HYu6XX0HPrtrOCs455ff7NE1UgJ3vG4,8329
|
30
|
+
cloudpss/ieslab/IESLabSimulation.py,sha256=-EJFkhklN9ao-nbfk7Lz6JCHboFCSDcn5R2jr3_Z7_A,4046
|
31
|
+
cloudpss/ieslab/PlanModel.py,sha256=Z_7pME2GHhBMYk9bXu8hKjP_NpM_SUAUr3-I2o_7DPo,4883
|
20
32
|
cloudpss/ieslab/__init__.py,sha256=kiyUaGRgtwqs0EI2dBBqLVK5V65u1PcY7YTFJX1T0yw,186
|
21
33
|
cloudpss/job/__init__.py,sha256=3UIFZYjJTzuckM61o8kim1c3PWt2SSHTL72jrGu5IzI,51
|
22
|
-
cloudpss/job/job.py,sha256=
|
23
|
-
cloudpss/job/
|
24
|
-
cloudpss/job/
|
25
|
-
cloudpss/job/
|
26
|
-
cloudpss/job/
|
27
|
-
cloudpss/job/jobTres.py,sha256=1wwdvwxpYKOfsZ1R95Wkhyg_QYMzqzKoaLJLdB-bD88,148
|
28
|
-
cloudpss/job/messageStreamReceiver.py,sha256=CxoGNUsRtvRDWUxaGU5c64jAB3FjvX2DPP7IZYr7dFk,6048
|
29
|
-
cloudpss/job/messageStreamSender.py,sha256=Sl4e1jCtxb62wZKm0tgwdWsg8sjOrYPRXXVz8eIO1bc,3797
|
30
|
-
cloudpss/job/view/EMTView.py,sha256=U-AF8OuKKJ9c1Q2yXJaNK6LNy_ZHpNi8tR2rn5KaocY,6838
|
34
|
+
cloudpss/job/job.py,sha256=lBOLbks-5Du8PPYNl2vqvZyufKdrsKZgXfjKKixLONA,7930
|
35
|
+
cloudpss/job/jobReceiver.py,sha256=b52Q7eQjVXi1C8xP2koix6N0GdQy_ar0YJ33KyPfsSA,919
|
36
|
+
cloudpss/job/messageStreamReceiver.py,sha256=VvrDewFjiZxMHZJUoMh2_CYC1bmcztY1TrNx0WSsQIU,4133
|
37
|
+
cloudpss/job/messageStreamSender.py,sha256=MCgMP6Epgu2md_rhZhHeGv8q8sObF_wHfL3WpANoreM,2371
|
38
|
+
cloudpss/job/view/EMTView.py,sha256=x7vNedo-RyH8Ukm5YaQSec6BPcskqopwGGyVDMVxV8U,6933
|
31
39
|
cloudpss/job/view/IESLabSimulationView.py,sha256=_hD-fdEwC6U8hQYbXliNMEii0WxiteglQZuLOSQmMOM,76
|
32
|
-
cloudpss/job/view/IESLabTypicalDayView.py,sha256=
|
40
|
+
cloudpss/job/view/IESLabTypicalDayView.py,sha256=SosMQ4D0Rom0FgPjYr5s-PPMpz49iyVNoK0K7iEyxrg,7817
|
33
41
|
cloudpss/job/view/IESView.py,sha256=yaSczWTjkEV6d6TPLkWjCq0ldN0JO-3sVurAnQR89Mo,3842
|
34
42
|
cloudpss/job/view/PowerFlowView.py,sha256=xg-KX37ENxYtEV7CRUszXfsyDmTsOKCh7agSg5K6EWQ,2089
|
35
43
|
cloudpss/job/view/__init__.py,sha256=j_X6aFeY-wa6_0r1EixE0rrvGz_67m4fIqOLmUbkxqY,1466
|
36
|
-
cloudpss/job/view/view.py,sha256=
|
44
|
+
cloudpss/job/view/view.py,sha256=JEv3uWw2DTKNmtdvviztH4Y5Hp2ucFXPNrGOkFv8byU,4280
|
37
45
|
cloudpss/model/__init__.py,sha256=SNq-bfwcQtDHtTNBYppfUEs8wkjfrQfGeywx7igmvOs,151
|
38
|
-
cloudpss/model/jobDefinitions.py,sha256=
|
39
|
-
cloudpss/model/model.py,sha256=
|
40
|
-
cloudpss/model/revision.py,sha256=
|
41
|
-
cloudpss/model/topology.py,sha256=
|
46
|
+
cloudpss/model/jobDefinitions.py,sha256=uuTwpqStlg3YDmfxbU2PVi_Tf18opa0kYLCMGaOP-qA,3749
|
47
|
+
cloudpss/model/model.py,sha256=k4TMC-l2XgXBxUhNB3aD2bCJS6RG7LWWNVypCSC0JcA,25540
|
48
|
+
cloudpss/model/revision.py,sha256=KXJ2SEQwqqrOlhXD9F4bvxjKJKmu3dqIICBKUsi0klQ,3966
|
49
|
+
cloudpss/model/topology.py,sha256=nTFq76CPmbkTgglI2Z-SlaJpymRkCXwehD_qE2K7f4I,2313
|
42
50
|
cloudpss/model/implements/__init__.py,sha256=88L_wF9SSzxsbtqwStWIPH4LxaKq7TVcssHQ62YBnls,67
|
43
51
|
cloudpss/model/implements/component.py,sha256=uNSpkZKChdXLiO40Ev4P3oQ1di2Hu4YjcBOb0I8Bf0c,734
|
44
|
-
cloudpss/model/implements/diagram.py,sha256=
|
52
|
+
cloudpss/model/implements/diagram.py,sha256=25g40EhqcFsqNeTQYEG2mqxV_oG0B0kb3xT_NvN7ia8,4582
|
45
53
|
cloudpss/model/implements/implement.py,sha256=Uld96tjXVDbVUNV8xscyy_nZWLHr3iP2DqA6S3p-XJE,954
|
46
54
|
cloudpss/project/__init__.py,sha256=fpskY-cJGmMcTg1naVzNPtJaRG1xmSc2CFjDTin64Cw,51
|
47
55
|
cloudpss/project/project.py,sha256=uFhOnM8ngo1_ZYz2uArtORKZquYNdOIVLXU_q1MDFI4,17698
|
@@ -49,23 +57,21 @@ cloudpss/runner/DSLabResult.py,sha256=xJqKA3e1KSXQmLDe9_T6fG1exdE9j7EjfIfvBMmqiJ
|
|
49
57
|
cloudpss/runner/IESLabEvaluationResult.py,sha256=uFNLiN5kzlzSGlLIq3ybuRwB-ufYytflVrXV5g7voOU,5841
|
50
58
|
cloudpss/runner/IESLabPlanResult.py,sha256=dCyTbMtITy9XDjE42knrpJrvaH7dvFgfQMZbx9hybRs,6862
|
51
59
|
cloudpss/runner/IESLabTypicalDayResult.py,sha256=3egAzmv32sr4wKaVgLxsM75ScSb08F4-iLEbuPkoi_c,8001
|
52
|
-
cloudpss/runner/MessageStreamReceiver.py,sha256=
|
60
|
+
cloudpss/runner/MessageStreamReceiver.py,sha256=w3Ur7rB7V4LJKBF28lra6EFwvCvJ3A75PRTCgnT6ZBo,5953
|
53
61
|
cloudpss/runner/__init__.py,sha256=FxiYYmssbZgRjieySzi43yPiWEF6eNos2UsoFQeD2H8,341
|
54
62
|
cloudpss/runner/receiver.py,sha256=QU0RsbCt0EK7sCLHzfj8_QQsuPNfqXxpZi5JKm6roxA,4162
|
55
63
|
cloudpss/runner/result.py,sha256=MkoTQly7FjKj9mde3bnv4vBDfGJ2U4eK-HhxxdwmemE,13125
|
56
64
|
cloudpss/runner/runner.py,sha256=DQOvHkdaI7lqcDdW2eEBY4UZPsgg__6vYFT8bUtm8Js,7820
|
57
65
|
cloudpss/runner/storage.py,sha256=zFET_zwPIOF2Cnh9sgFiS0HFxV1OmVsU34bGUQ6PpkA,4162
|
58
66
|
cloudpss/runner/transform.py,sha256=krOgTZiJSJAb5QSwerAqlbC4Ma0PKi__0WOZlAxw4O8,11613
|
59
|
-
cloudpss/utils/AsyncIterable.py,sha256=AIWYrTnmjsIfOowE3asZlexdHNhpK2gm7aucfyyVoQw,781
|
60
67
|
cloudpss/utils/IO.py,sha256=Uh1NOlBn15Jl5_aWS2QRO2-QsKlFT9o8DPtP8-8Z2PA,5314
|
61
68
|
cloudpss/utils/__init__.py,sha256=jWVHSOqJQWU0fpg2UbWSEQoLCb2Uys-vH5Uqkb0ihNA,326
|
62
69
|
cloudpss/utils/dataEncoder.py,sha256=5PUPb844eOGgFnYrMM8bdjdKH_MZz0lk-67uo8TvwEo,885
|
63
70
|
cloudpss/utils/graphqlUtil.py,sha256=swl6XT1UmUQHdHjMWw3M0i8meEmVKNQvX0SHsbgg8TU,255
|
64
|
-
cloudpss/utils/
|
65
|
-
cloudpss/utils/httprequests.py,sha256=1VtGuQAybeHAcpQfsXBPRPaNHiJfvoexmUuGmfKqoTY,1733
|
71
|
+
cloudpss/utils/httprequests.py,sha256=dNKq7Zi89OhP_tsf7B_uAYK8CpO_RJ8NusHoTx-tSY0,1750
|
66
72
|
cloudpss/utils/matlab.py,sha256=SLwVt790BjklJK2XNELt9R2n_1ej9Y8QsTIdFkKXLWE,795
|
67
73
|
cloudpss/utils/yamlLoader.py,sha256=bv_vPDK_e0n_vZ5FwpDJ_NJWqMAwfU3AbhkvQIxPCy4,2677
|
68
|
-
cloudpss-4.1.
|
69
|
-
cloudpss-4.1.
|
70
|
-
cloudpss-4.1.
|
71
|
-
cloudpss-4.1.
|
74
|
+
cloudpss-4.1.1b9.dist-info/METADATA,sha256=swtqIRBS9T-dra4Mf2gYaQek4QQq6AnWHEKWzBfgahI,2393
|
75
|
+
cloudpss-4.1.1b9.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
|
76
|
+
cloudpss-4.1.1b9.dist-info/top_level.txt,sha256=wS9qPU4-aWM9ouzMOx34Nlq-GkdQKpr9vBskwut1BD8,9
|
77
|
+
cloudpss-4.1.1b9.dist-info/RECORD,,
|
cloudpss/job/jobMachine.py
DELETED
cloudpss/job/jobPolicy.py
DELETED
@@ -1,129 +0,0 @@
|
|
1
|
-
from cloudpss.job.jobQueue import JobQueue
|
2
|
-
from cloudpss.job.jobTres import JobTres
|
3
|
-
from cloudpss.utils.graphqlUtil import graphql_request
|
4
|
-
|
5
|
-
|
6
|
-
class JobPolicy(object):
|
7
|
-
|
8
|
-
def __init__(self, id, name, users, functions, tres, minPriority,
|
9
|
-
maxPriority, maxDuration, createTime, updateTime, visibility,
|
10
|
-
queue):
|
11
|
-
self.id = id
|
12
|
-
self.name = name
|
13
|
-
self.users = users
|
14
|
-
self.functions = functions
|
15
|
-
print(tres)
|
16
|
-
self.tres = []
|
17
|
-
for tre in tres:
|
18
|
-
self.tres.append(JobTres(**tre)) # type: ignore
|
19
|
-
self.minPriority = minPriority
|
20
|
-
self.maxPriority = maxPriority
|
21
|
-
self.maxDuration = maxDuration
|
22
|
-
self.createTime = createTime
|
23
|
-
self.updateTime = updateTime
|
24
|
-
self.visibility = visibility
|
25
|
-
self.queue = JobQueue(**queue) # type: ignore
|
26
|
-
|
27
|
-
@staticmethod
|
28
|
-
def fetch(id):
|
29
|
-
query = '''query($input:JobPolicyInput!)
|
30
|
-
{
|
31
|
-
jobPolicy(input:$input)
|
32
|
-
{
|
33
|
-
id
|
34
|
-
name
|
35
|
-
users
|
36
|
-
functions
|
37
|
-
tres {
|
38
|
-
cpu
|
39
|
-
ecpu
|
40
|
-
mem
|
41
|
-
}
|
42
|
-
minPriority
|
43
|
-
maxPriority
|
44
|
-
maxDuration
|
45
|
-
createTime
|
46
|
-
updateTime
|
47
|
-
visibility
|
48
|
-
queue {
|
49
|
-
id
|
50
|
-
name
|
51
|
-
scheduler
|
52
|
-
machines {
|
53
|
-
id
|
54
|
-
name
|
55
|
-
tres {
|
56
|
-
cpu
|
57
|
-
ecpu
|
58
|
-
mem
|
59
|
-
}
|
60
|
-
valid
|
61
|
-
}
|
62
|
-
createTime
|
63
|
-
updateTime
|
64
|
-
load
|
65
|
-
}
|
66
|
-
}
|
67
|
-
|
68
|
-
}'''
|
69
|
-
variables = {'input': {'id': id}}
|
70
|
-
r = graphql_request(query, variables)
|
71
|
-
print (r)
|
72
|
-
if 'errors' in r:
|
73
|
-
raise Exception(r['errors'])
|
74
|
-
return JobPolicy(**r['data']['jobPolicy'])
|
75
|
-
|
76
|
-
@staticmethod
|
77
|
-
def fetchMany(input):
|
78
|
-
query = '''query($input:JobPoliciesInput!)
|
79
|
-
{
|
80
|
-
jobPolicies(input:$input)
|
81
|
-
{
|
82
|
-
items {
|
83
|
-
id
|
84
|
-
name
|
85
|
-
users
|
86
|
-
functions
|
87
|
-
tres {
|
88
|
-
cpu
|
89
|
-
ecpu
|
90
|
-
mem
|
91
|
-
}
|
92
|
-
minPriority
|
93
|
-
maxPriority
|
94
|
-
maxDuration
|
95
|
-
createTime
|
96
|
-
updateTime
|
97
|
-
visibility
|
98
|
-
queue {
|
99
|
-
id
|
100
|
-
name
|
101
|
-
scheduler
|
102
|
-
machines {
|
103
|
-
id
|
104
|
-
name
|
105
|
-
tres {
|
106
|
-
cpu
|
107
|
-
ecpu
|
108
|
-
mem
|
109
|
-
}
|
110
|
-
valid
|
111
|
-
}
|
112
|
-
createTime
|
113
|
-
updateTime
|
114
|
-
load
|
115
|
-
}
|
116
|
-
}
|
117
|
-
cursor
|
118
|
-
count
|
119
|
-
total
|
120
|
-
}
|
121
|
-
}'''
|
122
|
-
variables = {'input': input}
|
123
|
-
r = graphql_request(query, variables)
|
124
|
-
if 'errors' in r:
|
125
|
-
raise Exception(r['errors'])
|
126
|
-
policies = []
|
127
|
-
for policy in r['data']['jobPolicies']['items']:
|
128
|
-
policies.append(JobPolicy(**policy))
|
129
|
-
return policies
|
cloudpss/job/jobQueue.py
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
from cloudpss.job.jobMachine import JobMachine
|
2
|
-
|
3
|
-
|
4
|
-
class JobQueue(object):
|
5
|
-
|
6
|
-
def __init__(self, id, name, scheduler, machines, createTime, updateTime,
|
7
|
-
load):
|
8
|
-
self.id = id
|
9
|
-
self.name = name
|
10
|
-
self.scheduler = scheduler
|
11
|
-
self.machines = [JobMachine(**m) for m in machines]
|
12
|
-
self.createTime = createTime
|
13
|
-
self.updateTime = updateTime
|
14
|
-
self.load = load
|
cloudpss/job/jobTres.py
DELETED
File without changes
|
File without changes
|
File without changes
|