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.
Files changed (41) hide show
  1. cloudpss/asyncio/__init__.py +8 -0
  2. cloudpss/asyncio/job/__init__.py +5 -0
  3. cloudpss/asyncio/job/job.py +116 -0
  4. cloudpss/asyncio/job/messageStreamReceiver.py +121 -0
  5. cloudpss/asyncio/job/messageStreamSender.py +45 -0
  6. cloudpss/asyncio/model/__init__.py +5 -0
  7. cloudpss/asyncio/model/model.py +257 -0
  8. cloudpss/asyncio/model/revision.py +41 -0
  9. cloudpss/asyncio/model/topology.py +34 -0
  10. cloudpss/asyncio/utils/__init__.py +6 -0
  11. cloudpss/{utils → asyncio/utils}/httpAsyncRequest.py +2 -2
  12. cloudpss/dslab/dslab.py +115 -21
  13. cloudpss/function/functionExecution.py +10 -0
  14. cloudpss/ieslab/DataManageModel.py +65 -16
  15. cloudpss/ieslab/IESLabPlan.py +78 -0
  16. cloudpss/ieslab/IESLabSimulation.py +59 -32
  17. cloudpss/ieslab/PlanModel.py +11 -7
  18. cloudpss/job/job.py +119 -132
  19. cloudpss/job/jobReceiver.py +7 -1
  20. cloudpss/job/messageStreamReceiver.py +42 -99
  21. cloudpss/job/messageStreamSender.py +5 -42
  22. cloudpss/job/view/EMTView.py +9 -11
  23. cloudpss/job/view/IESLabTypicalDayView.py +114 -5
  24. cloudpss/job/view/view.py +36 -7
  25. cloudpss/model/implements/diagram.py +113 -0
  26. cloudpss/model/jobDefinitions.py +6 -6
  27. cloudpss/model/model.py +181 -193
  28. cloudpss/model/revision.py +29 -34
  29. cloudpss/model/topology.py +12 -14
  30. cloudpss/runner/MessageStreamReceiver.py +2 -0
  31. cloudpss/utils/httprequests.py +6 -5
  32. cloudpss/version.py +1 -1
  33. {cloudpss-4.1.1b8.dist-info → cloudpss-4.1.1b9.dist-info}/METADATA +1 -1
  34. {cloudpss-4.1.1b8.dist-info → cloudpss-4.1.1b9.dist-info}/RECORD +37 -31
  35. cloudpss/job/jobMachine.py +0 -11
  36. cloudpss/job/jobPolicy.py +0 -129
  37. cloudpss/job/jobQueue.py +0 -14
  38. cloudpss/job/jobTres.py +0 -6
  39. /cloudpss/{utils → asyncio/utils}/AsyncIterable.py +0 -0
  40. {cloudpss-4.1.1b8.dist-info → cloudpss-4.1.1b9.dist-info}/WHEEL +0 -0
  41. {cloudpss-4.1.1b8.dist-info → cloudpss-4.1.1b9.dist-info}/top_level.txt +0 -0
@@ -1,12 +1,11 @@
1
- import asyncio
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 request, graphql_request
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
- async def run(self, job, config, name=None, rid='', policy=None, **kwargs):
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: 返回一个ModelRevision
74
+ :return: 返回一个运行实例
70
75
 
71
76
  >>> revision.run(revision,job,config,'')
72
77
  """
73
- return await ModelRevision.createAsync(self)
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
- del r['hash']
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
- async def fetchTopology(self, implementType, config, maximumDepth):
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 await ModelTopology.fetch(self.hash, implementType, config,
128
+ return ModelTopology.fetch(self.hash, implementType, config,
135
129
  maximumDepth)
136
130
  return None
131
+
@@ -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 = await graphql_fetch(query, variables)
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
+
@@ -157,6 +157,8 @@ class MessageStreamReceiver(object):
157
157
  if "when" not in msg:
158
158
  msg['when']= datetime.datetime.now()
159
159
  self.db.storeMessage(msg)
160
+ if(msg['type']=='terminate'):
161
+ self.close(self.ws)
160
162
 
161
163
  def on_error(self, ws, error):
162
164
  msg = {
@@ -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
- return r
38
- logging.debug(r.text)
39
- if r.text =="":
40
- r.raise_for_status()
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.8'
1
+ __version__ = '4.1.1-beta.9'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cloudpss
3
- Version: 4.1.1b8
3
+ Version: 4.1.1b9
4
4
  Summary: cloudpss sdk
5
5
  Home-page: https://www.cloudpss.net
6
6
  Author: cloudpss
@@ -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=mogZeFwsT4HuCNqNb9b_s8HBY_IVBp1ICK-qzBLMisw,28
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=oErLt0OQkCySLj0bqVGFRQ1Y8MyQSHG5pQDwNDOrKbc,8856
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=YnuBl9dLoVYlPUrfse8_O-4uIAG0QrCIyQdDP2zaQt4,14645
25
+ cloudpss/function/functionExecution.py,sha256=o5S6EK6v2lXH4CY18dl2xSNgAYywpAGAToEIPk-q6Ms,14894
14
26
  cloudpss/function/job.py,sha256=LdzaTyjvBcMZIyLstSZnt79d2eREljx2HnNoilDp03A,13162
15
- cloudpss/ieslab/DataManageModel.py,sha256=YMpwp04GmkaK1gCnzp5tNAoPwkVfa9AkJPviqNOat7s,19445
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=vWRExT0AE5VbR1DaQSINE65sbg0F6cXC7meXNT6Ap6Q,4940
18
- cloudpss/ieslab/IESLabSimulation.py,sha256=IzbcPYWihatXLNduojH9r-guaqnyiWF8sivSjrrZoLY,3090
19
- cloudpss/ieslab/PlanModel.py,sha256=Dk5ZS_8IASqzMlLeN_gIDk76Gm_ybXjGY4pULBsWvEw,4790
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=1CKhsB4zKCstdZ7PSep9K-M0yGptRN1ULZ_8M7z3HDs,8600
23
- cloudpss/job/jobMachine.py,sha256=wtJ7X9Cu-4KGpYvxLbvCVWv5Ku0CvsgmfThK8knLfoI,268
24
- cloudpss/job/jobPolicy.py,sha256=k5Ur9LYvTnWNgI9yqeCjs5E499DSOrYbYgywU8-zpC4,4083
25
- cloudpss/job/jobQueue.py,sha256=31Q7NCjb_51d1JOokVyxIfP1r6S_A-ObySJKwt8MxR8,416
26
- cloudpss/job/jobReceiver.py,sha256=kX59JLky86AXwgCWw0abfKu-yDWQ97YAV-sOObF5Kgk,740
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=Za57f9TYcBxYeKo8fnEcOjl517v1LMDN0ua537fxcjc,1168
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=VJBy56BZ1avhF7gKHWbcW-ohT9my_VW48NqND_c0gSw,3453
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=XqjaaWOLU7zlVHM7TQJbZ3rNBWfBY7eT-5aE6EAatcQ,3770
39
- cloudpss/model/model.py,sha256=PnbjGHz4bql9kXYUc9UA7H2h3fC5LDPLj4P-xxQY_nE,26562
40
- cloudpss/model/revision.py,sha256=bVF-nux2WdJkBCji5LIyo3Wcngla9YbFG8oyp4HATXs,4183
41
- cloudpss/model/topology.py,sha256=W24pAQV9lJNOsx7QgRuf0O7KQxwurIgbE08DemfpDcM,2516
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=N5RrrywmxOmc2KvP0nC-NiECT1tEhgJZPtiNCfvYPuc,1063
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=MBc1HLU_3SOBKvi8rlEiEqhUSiBsQRzMVhEmS4MCKj8,5883
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/httpAsyncRequest.py,sha256=jMV1yMpx6jkAoh93Syn9vedmmt2IR86F8_-0xqf9SGU,2689
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.1b8.dist-info/METADATA,sha256=wWJJG-Ze24wFUIvTk7BMhoxRIkh1sxnjMqzxND3TpuU,2393
69
- cloudpss-4.1.1b8.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
70
- cloudpss-4.1.1b8.dist-info/top_level.txt,sha256=wS9qPU4-aWM9ouzMOx34Nlq-GkdQKpr9vBskwut1BD8,9
71
- cloudpss-4.1.1b8.dist-info/RECORD,,
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,,
@@ -1,11 +0,0 @@
1
- from cloudpss.job.jobTres import JobTres
2
-
3
-
4
- class JobMachine(object):
5
- '''job machine'''
6
-
7
- def __init__(self, id, name, tres, valid=None):
8
- self.id = id
9
- self.name = name
10
- self.tres = JobTres(**tres) # type: ignore
11
- self.valid = valid
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
@@ -1,6 +0,0 @@
1
- class JobTres(object):
2
- '''tres'''
3
- def __init__(self, cpu, mem, ecpu):
4
- self.cpu = cpu
5
- self.mem = mem
6
- self.ecpu = ecpu
File without changes