cloudos-cli 2.21.0__tar.gz → 2.22.0__tar.gz

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 (51) hide show
  1. {cloudos_cli-2.21.0/cloudos_cli.egg-info → cloudos_cli-2.22.0}/PKG-INFO +55 -5
  2. cloudos_cli-2.21.0/PKG-INFO → cloudos_cli-2.22.0/README.md +52 -37
  3. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/cloudos_cli/__main__.py +516 -266
  4. cloudos_cli-2.22.0/cloudos_cli/_version.py +1 -0
  5. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/cloudos_cli/configure/configure.py +112 -25
  6. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/cloudos_cli/jobs/job.py +59 -15
  7. cloudos_cli-2.21.0/README.md → cloudos_cli-2.22.0/cloudos_cli.egg-info/PKG-INFO +87 -2
  8. cloudos_cli-2.22.0/cloudos_cli.egg-info/SOURCES.txt +24 -0
  9. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/cloudos_cli.egg-info/requires.txt +1 -1
  10. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/setup.py +2 -2
  11. cloudos_cli-2.21.0/cloudos_cli/_version.py +0 -1
  12. cloudos_cli-2.21.0/cloudos_cli.egg-info/SOURCES.txt +0 -47
  13. cloudos_cli-2.21.0/tests/test_clos/__init__.py +0 -0
  14. cloudos_cli-2.21.0/tests/test_clos/test_abort_job.py +0 -68
  15. cloudos_cli-2.21.0/tests/test_clos/test_create_cromwell_header.py +0 -35
  16. cloudos_cli-2.21.0/tests/test_clos/test_cromwell_switch.py +0 -77
  17. cloudos_cli-2.21.0/tests/test_clos/test_detect_workflow.py +0 -47
  18. cloudos_cli-2.21.0/tests/test_clos/test_get_cromwell_status.py +0 -77
  19. cloudos_cli-2.21.0/tests/test_clos/test_get_curated_workflow_list.py +0 -72
  20. cloudos_cli-2.21.0/tests/test_clos/test_get_job_list.py +0 -79
  21. cloudos_cli-2.21.0/tests/test_clos/test_get_job_status.py +0 -75
  22. cloudos_cli-2.21.0/tests/test_clos/test_get_project_list.py +0 -79
  23. cloudos_cli-2.21.0/tests/test_clos/test_get_user_info.py +0 -68
  24. cloudos_cli-2.21.0/tests/test_clos/test_get_workflow_list.py +0 -87
  25. cloudos_cli-2.21.0/tests/test_clos/test_is_module.py +0 -48
  26. cloudos_cli-2.21.0/tests/test_clos/test_process_job_list.py +0 -74
  27. cloudos_cli-2.21.0/tests/test_clos/test_process_project_list.py +0 -36
  28. cloudos_cli-2.21.0/tests/test_clos/test_process_workflow_list.py +0 -36
  29. cloudos_cli-2.21.0/tests/test_clos/test_wait_job_completion.py +0 -40
  30. cloudos_cli-2.21.0/tests/test_clos/test_workflow_import.py +0 -77
  31. cloudos_cli-2.21.0/tests/test_jobs/__init__.py +0 -0
  32. cloudos_cli-2.21.0/tests/test_jobs/test_convert_nextflow_to_json.py +0 -104
  33. cloudos_cli-2.21.0/tests/test_jobs/test_project_id.py +0 -67
  34. cloudos_cli-2.21.0/tests/test_jobs/test_send_job.py +0 -86
  35. cloudos_cli-2.21.0/tests/test_jobs/test_workflow_id.py +0 -67
  36. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/LICENSE +0 -0
  37. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/cloudos_cli/__init__.py +0 -0
  38. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/cloudos_cli/clos.py +0 -0
  39. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/cloudos_cli/configure/__init__.py +0 -0
  40. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/cloudos_cli/jobs/__init__.py +0 -0
  41. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/cloudos_cli/queue/__init__.py +0 -0
  42. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/cloudos_cli/queue/queue.py +0 -0
  43. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/cloudos_cli/utils/__init__.py +0 -0
  44. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/cloudos_cli/utils/errors.py +0 -0
  45. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/cloudos_cli/utils/requests.py +0 -0
  46. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/cloudos_cli.egg-info/dependency_links.txt +0 -0
  47. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/cloudos_cli.egg-info/entry_points.txt +0 -0
  48. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/cloudos_cli.egg-info/top_level.txt +0 -0
  49. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/setup.cfg +0 -0
  50. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/tests/__init__.py +0 -0
  51. {cloudos_cli-2.21.0 → cloudos_cli-2.22.0}/tests/functions_for_pytest.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cloudos_cli
3
- Version: 2.21.0
3
+ Version: 2.22.0
4
4
  Summary: Python package for interacting with CloudOS
5
5
  Home-page: https://github.com/lifebit-ai/cloudos-cli
6
6
  Author: David Piñeyro
@@ -8,13 +8,13 @@ Author-email: david.pineyro@lifebit.ai
8
8
  Classifier: Programming Language :: Python :: 3
9
9
  Classifier: Operating System :: POSIX :: Linux
10
10
  Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
11
- Requires-Python: >=3.7
11
+ Requires-Python: >=3.9
12
12
  Description-Content-Type: text/markdown
13
13
  License-File: LICENSE
14
14
  Requires-Dist: click>=8.0.1
15
15
  Requires-Dist: rich-click>=1.8.2
16
16
  Requires-Dist: pandas>=1.3.4
17
- Requires-Dist: numpy==1.26.4
17
+ Requires-Dist: numpy>=1.26.4
18
18
  Requires-Dist: requests>=2.26.0
19
19
  Provides-Extra: test
20
20
  Requires-Dist: pytest; extra == "test"
@@ -41,12 +41,12 @@ Python package for interacting with CloudOS
41
41
 
42
42
  ## Requirements
43
43
 
44
- The package requires Python >= 3.7 and the following python packages:
44
+ The package requires Python >= 3.9 and the following python packages:
45
45
 
46
46
  ```
47
47
  click>=8.0.1
48
48
  pandas>=1.3.4
49
- numpy==1.26.4
49
+ numpy>=1.26.4
50
50
  requests>=2.26.0
51
51
  rich_click>=1.8.2
52
52
  ```
@@ -399,6 +399,56 @@ Executing run...
399
399
  Your job took 420 seconds to complete successfully.
400
400
  ```
401
401
 
402
+ #### Send a bash job to CloudOS (sequential sample processing)
403
+
404
+ A bash job can be sent to CloudOS using the command `bash` and the subcommand `job`. In this case, the `--workflow-name` must be a bash job already
405
+ present in the platform. Bash jobs are identified by bash icon (unlike Nextflow jobs, which are identified with Nextflow icon).
406
+
407
+ ```bash
408
+ WORKFLOW_NAME="ubuntu" # This should be a bash workflow
409
+ cloudos bash job \
410
+ --cloudos-url $CLOUDOS \
411
+ --apikey $MY_API_KEY \
412
+ --workspace-id $WORKSPACE_ID \
413
+ --project-name "$PROJECT_NAME" \
414
+ --workflow-name $WORKFLOW_NAME \
415
+ --parameter -test_variable=value \
416
+ --parameter --flag=activate \
417
+ --parameter send="yes" \
418
+ --job-name $JOB_NAME \
419
+ --command "echo 'send' > new_file.txt" \
420
+ --resumable
421
+ ```
422
+ The `--command` parameter is required and will setup the command for the parameters to run.
423
+
424
+ Each `--parameter` can have a different prefix, either '--', '-', or '', depending on the use case. These can be used as many times as needed.
425
+
426
+ > [!NOTE]
427
+ > At the moment only string values are allowed to the `--parameter` options, adding a filepath at the moment does not upload/download the file. This feature will be available in a future implementation.
428
+
429
+ If everything went well, you should see something like:
430
+
431
+ ```console
432
+ CloudOS bash functionality.
433
+
434
+ Job successfully launched to CloudOS, please check the following link: https://cloudos.lifebit.ai/app/advanced-analytics/analyses/682622d09f305de717327334
435
+ Your assigned job id is: 682622d09f305de717327334
436
+
437
+ Your current job status is: initializing
438
+ To further check your job status you can either go to https://cloudos.lifebit.ai/app/advanced-analytics/analyses/682622d09f305de717327334 or use the following command:
439
+ cloudos job status \
440
+ --apikey $MY_API_KEY \
441
+ --cloudos-url https://cloudos.lifebit.ai \
442
+ --job-id 682622d09f305de717327334
443
+ ```
444
+
445
+ As you can see, the current status is `initializing`. This will change
446
+ while the job progresses. To check the status, just apply the suggested
447
+ command.
448
+
449
+ Other options like `--wait-completion` are also available and work in the same way as for the `cloudos job run` command.
450
+ Check `cloudos bash job --help` for more details.
451
+
402
452
  #### Abort single or multiple jobs from CloudOS
403
453
 
404
454
  Aborts jobs in the CloudOS workspace that are either running or initialising. It can be used with one or more job IDs provided as a comma separated string using the `--job-ids` parameter.
@@ -1,38 +1,3 @@
1
- Metadata-Version: 2.4
2
- Name: cloudos_cli
3
- Version: 2.21.0
4
- Summary: Python package for interacting with CloudOS
5
- Home-page: https://github.com/lifebit-ai/cloudos-cli
6
- Author: David Piñeyro
7
- Author-email: david.pineyro@lifebit.ai
8
- Classifier: Programming Language :: Python :: 3
9
- Classifier: Operating System :: POSIX :: Linux
10
- Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
11
- Requires-Python: >=3.7
12
- Description-Content-Type: text/markdown
13
- License-File: LICENSE
14
- Requires-Dist: click>=8.0.1
15
- Requires-Dist: rich-click>=1.8.2
16
- Requires-Dist: pandas>=1.3.4
17
- Requires-Dist: numpy==1.26.4
18
- Requires-Dist: requests>=2.26.0
19
- Provides-Extra: test
20
- Requires-Dist: pytest; extra == "test"
21
- Requires-Dist: mock; extra == "test"
22
- Requires-Dist: responses; extra == "test"
23
- Requires-Dist: requests_mock; extra == "test"
24
- Dynamic: author
25
- Dynamic: author-email
26
- Dynamic: classifier
27
- Dynamic: description
28
- Dynamic: description-content-type
29
- Dynamic: home-page
30
- Dynamic: license-file
31
- Dynamic: provides-extra
32
- Dynamic: requires-dist
33
- Dynamic: requires-python
34
- Dynamic: summary
35
-
36
1
  # cloudos-cli
37
2
 
38
3
  [![CI_tests](https://github.com/lifebit-ai/cloudos-cli/actions/workflows/ci.yml/badge.svg)](https://github.com/lifebit-ai/cloudos-cli/actions/workflows/ci.yml)
@@ -41,12 +6,12 @@ Python package for interacting with CloudOS
41
6
 
42
7
  ## Requirements
43
8
 
44
- The package requires Python >= 3.7 and the following python packages:
9
+ The package requires Python >= 3.9 and the following python packages:
45
10
 
46
11
  ```
47
12
  click>=8.0.1
48
13
  pandas>=1.3.4
49
- numpy==1.26.4
14
+ numpy>=1.26.4
50
15
  requests>=2.26.0
51
16
  rich_click>=1.8.2
52
17
  ```
@@ -399,6 +364,56 @@ Executing run...
399
364
  Your job took 420 seconds to complete successfully.
400
365
  ```
401
366
 
367
+ #### Send a bash job to CloudOS (sequential sample processing)
368
+
369
+ A bash job can be sent to CloudOS using the command `bash` and the subcommand `job`. In this case, the `--workflow-name` must be a bash job already
370
+ present in the platform. Bash jobs are identified by bash icon (unlike Nextflow jobs, which are identified with Nextflow icon).
371
+
372
+ ```bash
373
+ WORKFLOW_NAME="ubuntu" # This should be a bash workflow
374
+ cloudos bash job \
375
+ --cloudos-url $CLOUDOS \
376
+ --apikey $MY_API_KEY \
377
+ --workspace-id $WORKSPACE_ID \
378
+ --project-name "$PROJECT_NAME" \
379
+ --workflow-name $WORKFLOW_NAME \
380
+ --parameter -test_variable=value \
381
+ --parameter --flag=activate \
382
+ --parameter send="yes" \
383
+ --job-name $JOB_NAME \
384
+ --command "echo 'send' > new_file.txt" \
385
+ --resumable
386
+ ```
387
+ The `--command` parameter is required and will setup the command for the parameters to run.
388
+
389
+ Each `--parameter` can have a different prefix, either '--', '-', or '', depending on the use case. These can be used as many times as needed.
390
+
391
+ > [!NOTE]
392
+ > At the moment only string values are allowed to the `--parameter` options, adding a filepath at the moment does not upload/download the file. This feature will be available in a future implementation.
393
+
394
+ If everything went well, you should see something like:
395
+
396
+ ```console
397
+ CloudOS bash functionality.
398
+
399
+ Job successfully launched to CloudOS, please check the following link: https://cloudos.lifebit.ai/app/advanced-analytics/analyses/682622d09f305de717327334
400
+ Your assigned job id is: 682622d09f305de717327334
401
+
402
+ Your current job status is: initializing
403
+ To further check your job status you can either go to https://cloudos.lifebit.ai/app/advanced-analytics/analyses/682622d09f305de717327334 or use the following command:
404
+ cloudos job status \
405
+ --apikey $MY_API_KEY \
406
+ --cloudos-url https://cloudos.lifebit.ai \
407
+ --job-id 682622d09f305de717327334
408
+ ```
409
+
410
+ As you can see, the current status is `initializing`. This will change
411
+ while the job progresses. To check the status, just apply the suggested
412
+ command.
413
+
414
+ Other options like `--wait-completion` are also available and work in the same way as for the `cloudos job run` command.
415
+ Check `cloudos bash job --help` for more details.
416
+
402
417
  #### Abort single or multiple jobs from CloudOS
403
418
 
404
419
  Aborts jobs in the CloudOS workspace that are either running or initialising. It can be used with one or more job IDs provided as a comma separated string using the `--job-ids` parameter.