cloudos-cli 2.95.1__tar.gz → 2.96.1__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 (80) hide show
  1. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/PKG-INFO +4 -2
  2. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/README.md +3 -1
  3. cloudos_cli-2.96.1/cloudos_cli/_version.py +1 -0
  4. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/jobs/job.py +3 -2
  5. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/utils/array_job.py +5 -2
  6. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli.egg-info/PKG-INFO +4 -2
  7. cloudos_cli-2.95.1/cloudos_cli/_version.py +0 -1
  8. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/LICENSE +0 -0
  9. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/__init__.py +0 -0
  10. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/__main__.py +0 -0
  11. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/bash/__init__.py +0 -0
  12. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/bash/cli.py +0 -0
  13. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/clos.py +0 -0
  14. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/configure/__init__.py +0 -0
  15. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/configure/cli.py +0 -0
  16. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/configure/configure.py +0 -0
  17. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/constants.py +0 -0
  18. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/cost/__init__.py +0 -0
  19. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/cost/cost.py +0 -0
  20. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/cromwell/__init__.py +0 -0
  21. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/cromwell/cli.py +0 -0
  22. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/datasets/__init__.py +0 -0
  23. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/datasets/cli.py +0 -0
  24. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/datasets/datasets.py +0 -0
  25. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/import_wf/__init__.py +0 -0
  26. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/import_wf/import_wf.py +0 -0
  27. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/interactive_session/__init__.py +0 -0
  28. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/interactive_session/cli.py +0 -0
  29. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/interactive_session/interactive_session.py +0 -0
  30. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/interactive_session/link.py +0 -0
  31. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/jobs/__init__.py +0 -0
  32. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/jobs/cli.py +0 -0
  33. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/logging/__init__.py +0 -0
  34. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/logging/logger.py +0 -0
  35. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/procurement/__init__.py +0 -0
  36. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/procurement/cli.py +0 -0
  37. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/procurement/images.py +0 -0
  38. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/projects/__init__.py +0 -0
  39. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/projects/cli.py +0 -0
  40. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/queue/__init__.py +0 -0
  41. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/queue/cli.py +0 -0
  42. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/queue/queue.py +0 -0
  43. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/related_analyses/__init__.py +0 -0
  44. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/related_analyses/related_analyses.py +0 -0
  45. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/utils/__init__.py +0 -0
  46. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/utils/cli_helpers.py +0 -0
  47. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/utils/cloud.py +0 -0
  48. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/utils/details.py +0 -0
  49. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/utils/errors.py +0 -0
  50. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/utils/last_wf.py +0 -0
  51. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/utils/nextflow_version.py +0 -0
  52. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/utils/requests.py +0 -0
  53. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/utils/resources.py +0 -0
  54. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/workflows/__init__.py +0 -0
  55. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli/workflows/cli.py +0 -0
  56. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli.egg-info/SOURCES.txt +0 -0
  57. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli.egg-info/dependency_links.txt +0 -0
  58. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli.egg-info/entry_points.txt +0 -0
  59. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli.egg-info/requires.txt +0 -0
  60. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/cloudos_cli.egg-info/top_level.txt +0 -0
  61. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/setup.cfg +0 -0
  62. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/setup.py +0 -0
  63. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/tests/__init__.py +0 -0
  64. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/tests/functions_for_pytest.py +0 -0
  65. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/tests/test_cli_project_create.py +0 -0
  66. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/tests/test_cost/__init__.py +0 -0
  67. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/tests/test_cost/test_job_cost.py +0 -0
  68. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/tests/test_details.py +0 -0
  69. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/tests/test_error_messages.py +0 -0
  70. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/tests/test_interactive_session/__init__.py +0 -0
  71. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/tests/test_interactive_session/test_create_session.py +0 -0
  72. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/tests/test_interactive_session/test_link_error_handling.py +0 -0
  73. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/tests/test_interactive_session/test_link_session.py +0 -0
  74. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/tests/test_interactive_session/test_list_sessions.py +0 -0
  75. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/tests/test_interactive_session/test_normalize_path.py +0 -0
  76. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/tests/test_logging/__init__.py +0 -0
  77. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/tests/test_logging/test_logger.py +0 -0
  78. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/tests/test_nextflow_version.py +0 -0
  79. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/tests/test_related_analyses/__init__.py +0 -0
  80. {cloudos_cli-2.95.1 → cloudos_cli-2.96.1}/tests/test_related_analyses/test_related_analyses.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cloudos_cli
3
- Version: 2.95.1
3
+ Version: 2.96.1
4
4
  Summary: Python package for interacting with the Lifebit Platform
5
5
  Home-page: https://github.com/lifebit-ai/cloudos-cli
6
6
  Author: David Piñeyro
@@ -1891,7 +1891,7 @@ The `--command` parameter is required and will setup the command for the paramet
1891
1891
  Each `--parameter` can have a different prefix, either '--', '-', or '', depending on the use case. These can be used as many times as needed.
1892
1892
 
1893
1893
  > [!NOTE]
1894
- > 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.
1894
+ > `--parameter` supports text values, File Explorer paths under `Data/`, and glob patterns. Files must already exist in the platform; local files are not uploaded. Filenames do not need an extension: `--parameter "--f1=Data/no_extension_file"` resolves the file for staging into the job's working directory. See [using files from multiple projects](#use-multiple-projects-for-files-in---parameter-option) for path formats.
1895
1895
 
1896
1896
  If everything went well, you should see something like:
1897
1897
 
@@ -2024,6 +2024,8 @@ The option `--parameter` could specify a file input located in a different proje
2024
2024
  - `-p/--parameter "--file=<project>/Data/*.txt"`
2025
2025
  - `-p/--parameter "--file=Data/*.txt"` (the same project as `--project-name`)
2026
2026
 
2027
+ These file paths also support filenames without extensions, such as `Data/no_extension_file` or `<project>/Data/subfolder/no_extension_file`, for both Bash jobs and Bash array jobs. If a referenced file does not exist, the CLI reports an error before submitting the job.
2028
+
2027
2029
  The project should be specified at the beginning of the file path. For example:
2028
2030
 
2029
2031
  ```bash
@@ -1856,7 +1856,7 @@ The `--command` parameter is required and will setup the command for the paramet
1856
1856
  Each `--parameter` can have a different prefix, either '--', '-', or '', depending on the use case. These can be used as many times as needed.
1857
1857
 
1858
1858
  > [!NOTE]
1859
- > 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.
1859
+ > `--parameter` supports text values, File Explorer paths under `Data/`, and glob patterns. Files must already exist in the platform; local files are not uploaded. Filenames do not need an extension: `--parameter "--f1=Data/no_extension_file"` resolves the file for staging into the job's working directory. See [using files from multiple projects](#use-multiple-projects-for-files-in---parameter-option) for path formats.
1860
1860
 
1861
1861
  If everything went well, you should see something like:
1862
1862
 
@@ -1989,6 +1989,8 @@ The option `--parameter` could specify a file input located in a different proje
1989
1989
  - `-p/--parameter "--file=<project>/Data/*.txt"`
1990
1990
  - `-p/--parameter "--file=Data/*.txt"` (the same project as `--project-name`)
1991
1991
 
1992
+ These file paths also support filenames without extensions, such as `Data/no_extension_file` or `<project>/Data/subfolder/no_extension_file`, for both Bash jobs and Bash array jobs. If a referenced file does not exist, the CLI reports an error before submitting the job.
1993
+
1992
1994
  The project should be specified at the beginning of the file path. For example:
1993
1995
 
1994
1996
  ```bash
@@ -0,0 +1 @@
1
+ __version__ = '2.96.1'
@@ -1089,7 +1089,8 @@ class Job(Cloudos):
1089
1089
  -----
1090
1090
  - The function uses helper methods `extract_project`, `classify_pattern`, and `get_file_or_folder_id` to process the parameter.
1091
1091
  - If the parameter represents a file path or glob pattern, the function retrieves the corresponding file or folder ID from the cloud workspace.
1092
- - If the parameter does not match any specific pattern or file extension, it is treated as a simple text value.
1092
+ - Paths under Data/ are resolved as files even when the filename has no extension.
1093
+ - Other values without a pattern or file extension are treated as simple text values.
1093
1094
  """
1094
1095
 
1095
1096
  # split '--param_name=example_test'
@@ -1121,7 +1122,7 @@ class Job(Cloudos):
1121
1122
  "parameterKind": "globPattern",
1122
1123
  "folder": f"{folder}"
1123
1124
  }
1124
- elif ext:
1125
+ elif ext or file_path.startswith('Data/'):
1125
1126
  if not (file_path.startswith('/Data') or file_path.startswith('Data')):
1126
1127
  raise ValueError("The file path inside the project must start with '/Data' or 'Data'. ")
1127
1128
 
@@ -226,7 +226,8 @@ def extract_project(path):
226
226
  """
227
227
  Extracts the project name and the remaining path from a given file path.
228
228
 
229
- The function assumes that a "project" exists if the path contains at least three parts
229
+ Paths starting with Data/ belong to the current project, regardless of their depth.
230
+ Otherwise, the function assumes that a "project" exists if the path contains at least three parts
230
231
  when split by slashes. If the path has fewer than three parts, the project name is
231
232
  considered empty, and the entire path is returned as the remaining path.
232
233
 
@@ -243,6 +244,8 @@ def extract_project(path):
243
244
  """
244
245
  # Strip slashes and split the path
245
246
  parts = path.strip("/").split("/")
247
+ if parts[0] == "Data":
248
+ return "", "/".join(parts)
246
249
  # A "project" exists only if there are at least 3 parts
247
250
  # globs needs more than 3 parts i.e. PROJECT/Data/Downloads/*.csv
248
251
  if (len(parts) >= 3 and not is_glob_pattern(path)) or \
@@ -251,4 +254,4 @@ def extract_project(path):
251
254
  return parts[0], "/".join(parts[1:])
252
255
  else:
253
256
  # project is empty, use the project_name of the function
254
- return "", "/".join(parts)
257
+ return "", "/".join(parts)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cloudos_cli
3
- Version: 2.95.1
3
+ Version: 2.96.1
4
4
  Summary: Python package for interacting with the Lifebit Platform
5
5
  Home-page: https://github.com/lifebit-ai/cloudos-cli
6
6
  Author: David Piñeyro
@@ -1891,7 +1891,7 @@ The `--command` parameter is required and will setup the command for the paramet
1891
1891
  Each `--parameter` can have a different prefix, either '--', '-', or '', depending on the use case. These can be used as many times as needed.
1892
1892
 
1893
1893
  > [!NOTE]
1894
- > 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.
1894
+ > `--parameter` supports text values, File Explorer paths under `Data/`, and glob patterns. Files must already exist in the platform; local files are not uploaded. Filenames do not need an extension: `--parameter "--f1=Data/no_extension_file"` resolves the file for staging into the job's working directory. See [using files from multiple projects](#use-multiple-projects-for-files-in---parameter-option) for path formats.
1895
1895
 
1896
1896
  If everything went well, you should see something like:
1897
1897
 
@@ -2024,6 +2024,8 @@ The option `--parameter` could specify a file input located in a different proje
2024
2024
  - `-p/--parameter "--file=<project>/Data/*.txt"`
2025
2025
  - `-p/--parameter "--file=Data/*.txt"` (the same project as `--project-name`)
2026
2026
 
2027
+ These file paths also support filenames without extensions, such as `Data/no_extension_file` or `<project>/Data/subfolder/no_extension_file`, for both Bash jobs and Bash array jobs. If a referenced file does not exist, the CLI reports an error before submitting the job.
2028
+
2027
2029
  The project should be specified at the beginning of the file path. For example:
2028
2030
 
2029
2031
  ```bash
@@ -1 +0,0 @@
1
- __version__ = '2.95.1'
File without changes
File without changes
File without changes