pybioos 0.0.17__py3-none-any.whl → 0.0.18__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.

Potentially problematic release.


This version of pybioos might be problematic. Click here for more details.

bioos/__about__.py CHANGED
@@ -1,4 +1,4 @@
1
1
  # coding:utf-8
2
2
 
3
3
  # Package version
4
- __version__ = "0.0.17"
4
+ __version__ = "0.0.18"
bioos/bioos.py CHANGED
@@ -1,7 +1,7 @@
1
1
  from pandas import DataFrame
2
2
  from volcengine.const.Const import REGION_CN_NORTH1
3
3
 
4
- from bioos.config import Config
4
+ from bioos.config import Config,DEFAULT_ENDPOINT
5
5
  from bioos.resource.utility import UtilityResource
6
6
  from bioos.resource.workspaces import Workspace
7
7
 
@@ -22,7 +22,7 @@ def status() -> Config.LoginInfo:
22
22
 
23
23
  def login(access_key: str,
24
24
  secret_key: str,
25
- endpoint: str = None,
25
+ endpoint: str = DEFAULT_ENDPOINT,
26
26
  region: str = REGION_CN_NORTH1) -> bool:
27
27
  """Login to the given endpoint using specified account and password.
28
28
 
@@ -73,6 +73,28 @@ def list_workspaces() -> DataFrame:
73
73
  }).get("Items"))
74
74
 
75
75
 
76
+ def create_workspace(name: str, description: str) -> dict:
77
+ """Creates a new workspace in the login environment.
78
+
79
+ *Example*:
80
+ ::
81
+
82
+ bioos.create_workspace(name="My Workspace", description="This is my new workspace")
83
+
84
+ :param name: Name of the workspace to create
85
+ :type name: str
86
+ :param description: Description of the workspace
87
+ :type description: str
88
+ :return: Creation result containing workspace information
89
+ :rtype: dict
90
+ """
91
+ params = {
92
+ "Name": name,
93
+ "Description": description
94
+ }
95
+ return Config.service().create_workspace(params)
96
+
97
+
76
98
  def workspace(id_: str) -> Workspace: # 这里是workspace的入口
77
99
  """Returns the workspace for the given name .
78
100
 
bioos/bioos_workflow.py CHANGED
@@ -178,7 +178,8 @@ class Bioos_workflow:
178
178
  data_model_name: str = "dm",
179
179
  submission_desc: str = "Submit by pybioos",
180
180
  call_caching: bool = True,
181
- force_reupload: bool = False):
181
+ force_reupload: bool = False,
182
+ mount_tos: bool = False):
182
183
  if not os.path.isfile(input_json_file):
183
184
  raise ParameterError('Input_json_file is not found.')
184
185
  #给每一个data_model加一个uuid,保证不重复
@@ -229,6 +230,7 @@ class Bioos_workflow:
229
230
  "outputs": "{}",
230
231
  "submission_desc": submission_desc,
231
232
  "call_caching": call_caching,
233
+ "mount_tos": mount_tos,
232
234
  }
233
235
 
234
236
  # if the input json is a batch or singleton submission
@@ -363,6 +365,12 @@ def bioos_workflow():
363
365
  action='store_true',
364
366
  help="Force reupolad tos existed files.")
365
367
 
368
+ parser.add_argument(
369
+ "--mount_tos",
370
+ action='store_true',
371
+ help="是否挂载tos",
372
+ default=False)
373
+
366
374
  parser.add_argument(
367
375
  "--monitor",
368
376
  action='store_true',
@@ -394,7 +402,8 @@ def bioos_workflow():
394
402
  data_model_name=parsed_args.data_model_name,
395
403
  submission_desc=parsed_args.submission_desc,
396
404
  call_caching=parsed_args.call_caching,
397
- force_reupload=parsed_args.force_reupload)
405
+ force_reupload=parsed_args.force_reupload,
406
+ mount_tos=parsed_args.mount_tos)
398
407
  bw.submit_workflow_bioosapi()
399
408
 
400
409
  # moniter
@@ -795,7 +795,8 @@ class Workflow(metaclass=SingletonType):
795
795
  call_caching: bool,
796
796
  submission_name_suffix: str = "",
797
797
  row_ids: List[str] = [],
798
- data_model_name: str = '') -> List[Run]:
798
+ data_model_name: str = '',
799
+ mount_tos: bool = False) -> List[Run]:
799
800
  """Submit an existed workflow.
800
801
 
801
802
  *Example*:
@@ -846,6 +847,7 @@ class Workflow(metaclass=SingletonType):
846
847
  'Inputs': inputs,
847
848
  'ExposedOptions': {
848
849
  "ReadFromCache": call_caching,
850
+ "MountTOS": mount_tos,
849
851
  # TODO this may change in the future
850
852
  "ExecutionRootDir": f"s3://{self.bucket}"
851
853
  },
@@ -121,3 +121,8 @@ class Workspace(metaclass=SingletonType):
121
121
  if not self._bucket:
122
122
  self._bucket = self.basic_info.get("s3_bucket")
123
123
  return Workflow(name, self._id, self._bucket)
124
+
125
+ def bind_cluster(self, cluster_id: str, type_: str = "workflow") -> dict:
126
+ """把当前 Workspace 绑定到指定集群"""
127
+ params = {"ClusterID": cluster_id, "Type": type_, "ID": self._id}
128
+ return Config.service().bind_cluster_to_workspace(params)
@@ -47,6 +47,11 @@ class BioOsService(Service):
47
47
  'Action': 'ListWorkspaces',
48
48
  'Version': '2021-03-04'
49
49
  }, {}, {}),
50
+ 'CreateWorkspace':
51
+ ApiInfo('POST', '/', {
52
+ 'Action': 'CreateWorkspace',
53
+ 'Version': '2021-03-04'
54
+ }, {}, {}),
50
55
  'CreateDataModel':
51
56
  ApiInfo('POST', '/', {
52
57
  'Action': 'CreateDataModel',
@@ -127,12 +132,19 @@ class BioOsService(Service):
127
132
  'Action': 'DeleteWorkflow',
128
133
  'Version': '2021-03-04'
129
134
  }, {}, {}),
135
+ 'BindClusterToWorkspace':
136
+ ApiInfo('POST', '/', {
137
+ 'Action': 'BindClusterToWorkspace',
138
+ 'Version': '2021-03-04'
139
+ }, {}, {}),
130
140
  }
131
141
  return api_info
132
142
 
133
143
  def list_workspaces(self, params): # 以下各方法的params需要在外部使用时构建
134
144
  return self.__request('ListWorkspaces', params)
135
145
 
146
+ def create_workspace(self, params):
147
+ return self.__request('CreateWorkspace', params)
136
148
  def create_data_model(self, params):
137
149
  return self.__request('CreateDataModel', params)
138
150
 
@@ -181,6 +193,9 @@ class BioOsService(Service):
181
193
  def delete_workflow(self, params):
182
194
  return self.__request("DeleteWorkflow", params)
183
195
 
196
+ def bind_cluster_to_workspace(self, params):
197
+ return self.__request("BindClusterToWorkspace", params)
198
+
184
199
  def __request(self, action, params):
185
200
  res = self.json(
186
201
  action, dict(),
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pybioos
3
- Version: 0.0.17
3
+ Version: 0.0.18
4
4
  Summary: BioOS SDK for Python
5
5
  Home-page: https://github.com/GBA-BI/pybioos
6
6
  Author: Jilong Liu
@@ -1,7 +1,7 @@
1
- bioos/__about__.py,sha256=FvqUBfyX_OkxcuTYr1_lcBcEd13i1ew8F8tEpRfcor8,57
1
+ bioos/__about__.py,sha256=YQNxIWM75-mGePypUWLizOs5j9z-3m-wmI5X1hBjL0g,57
2
2
  bioos/__init__.py,sha256=4GZKi13lDTD25YBkGakhZyEQZWTER_OWQMNPoH_UM2c,22
3
- bioos/bioos.py,sha256=yhaWaJMwP23fMtid2mNWUetGwDUbUtCKwugXt27OLTs,2600
4
- bioos/bioos_workflow.py,sha256=LRzYxuNnbF3R7urrMRjMRwR2hGDmH_4kP52D2Gger8k,15259
3
+ bioos/bioos.py,sha256=fFnbtwOyF5U3N_D41jXPYB2H4xKBsI931nS-qBUFW70,3231
4
+ bioos/bioos_workflow.py,sha256=s_5lEFclHf3ZAtmIPRYcizQU5sEsc-Zm6FGP89_wL8g,15525
5
5
  bioos/bw_import.py,sha256=kYS4BDbyIXyaFIOCUyOnAzIbLdHvY3l3KLPDVfAnFSM,5829
6
6
  bioos/bw_import_status_check.py,sha256=x9Y_0I8huoC7aBgObuox-0z6foSr99TXQB7jozyQ7Eo,2972
7
7
  bioos/bw_status_check.py,sha256=Etj_zp6tS0cj4t-nksUq221pPIWUFS0Lz0q0Uqflpes,3094
@@ -18,9 +18,9 @@ bioos/resource/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
18
18
  bioos/resource/data_models.py,sha256=enKp8yyQI8IbRqe--0Xtyg1XzOwQQPQzoQsx_hNuZ6E,5089
19
19
  bioos/resource/files.py,sha256=1HY0IHvq8H843VM2XZIHDdCuXXNcMrlEFhSNqWXmFzE,8456
20
20
  bioos/resource/utility.py,sha256=emY7qVLLLvGmQYlVj-_bLAxU7i1GfQOUybdRkfEDwVA,1300
21
- bioos/resource/workflows.py,sha256=RZkREd7EzyRqk3gP09HSzeuI3i7Cn7VMhqjp4jj_cjg,29418
22
- bioos/resource/workspaces.py,sha256=Gmr8y_sjK7TQbhMhQ_7rxqR1KFcwU72I95YYCFrrLBQ,3995
23
- bioos/service/BioOsService.py,sha256=HuYUEwomHCLpA1MYgVqGyWAQWHM-_BHB-jmy9VsOlnQ,6724
21
+ bioos/resource/workflows.py,sha256=OZ1RRedls4wirri_Ts5dP9IX0XqJA2pwA-_UxORrc-M,29497
22
+ bioos/resource/workspaces.py,sha256=HZCdMzfpSZMm6x9cHDuAXCv-CTCoaVjfQ6EGz-Rek1g,4269
23
+ bioos/service/BioOsService.py,sha256=yXUo6PKaMv8V-SleIwedKtV8aTC3dhESWH2lxL7jY7A,7299
24
24
  bioos/service/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
25
25
  bioos/service/api.py,sha256=Khihn187bACEfBcJ-tRS9JO29-VCBsH0-9qq-i5WxkQ,8737
26
26
  bioos/service/config.py,sha256=FbBsb6CpcLsQZH7n8uuUbFVhkpqYOEnOe0xGkA7ZrjA,1009
@@ -35,9 +35,9 @@ bioos/tests/workspaces.py,sha256=LuuRrTs2XqfE5mGQyJNl9RBtuMb4NZHBJFoO8HMZVYQ,522
35
35
  bioos/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
36
36
  bioos/utils/common_tools.py,sha256=fgMoE_-qZjgfQtUj_pmCTyYDtbJasyfH4Gm3VQsbgBQ,1651
37
37
  bioos/utils/workflows.py,sha256=zRbwTUigoM5V5LFOgzQPm3kwxt5Ogz95OFfefJc6Fjo,133
38
- pybioos-0.0.17.dist-info/LICENSE,sha256=cPkGXsgfPgEhIns7Lt3Avxx0Uy-VbdsoP8jvNGuj3cE,1063
39
- pybioos-0.0.17.dist-info/METADATA,sha256=thfygW7I6xtSkuKrMuzRw00fzmtPRtvFB5yfNIHRoj8,830
40
- pybioos-0.0.17.dist-info/WHEEL,sha256=OqRkF0eY5GHssMorFjlbTIq072vpHpF60fIQA6lS9xA,92
41
- pybioos-0.0.17.dist-info/entry_points.txt,sha256=Sc5H0_X7r03Mef4Qd70bebqgdIbVAxLU7nV7qP7cKD4,328
42
- pybioos-0.0.17.dist-info/top_level.txt,sha256=llpzydkKVDSaWZgz3bsTUsQmhoQpc_JcRJg2-H-5a2U,6
43
- pybioos-0.0.17.dist-info/RECORD,,
38
+ pybioos-0.0.18.dist-info/LICENSE,sha256=cPkGXsgfPgEhIns7Lt3Avxx0Uy-VbdsoP8jvNGuj3cE,1063
39
+ pybioos-0.0.18.dist-info/METADATA,sha256=XJyGrHDGUm0WmQ4hGLx4l59ImW38IpFplODIlLHZCPI,830
40
+ pybioos-0.0.18.dist-info/WHEEL,sha256=OqRkF0eY5GHssMorFjlbTIq072vpHpF60fIQA6lS9xA,92
41
+ pybioos-0.0.18.dist-info/entry_points.txt,sha256=Sc5H0_X7r03Mef4Qd70bebqgdIbVAxLU7nV7qP7cKD4,328
42
+ pybioos-0.0.18.dist-info/top_level.txt,sha256=llpzydkKVDSaWZgz3bsTUsQmhoQpc_JcRJg2-H-5a2U,6
43
+ pybioos-0.0.18.dist-info/RECORD,,