cloudos-cli 2.90.2__tar.gz → 2.92.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.
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/PKG-INFO +82 -68
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/README.md +81 -67
- cloudos_cli-2.92.0/cloudos_cli/_version.py +1 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/datasets/cli.py +15 -74
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/interactive_session/cli.py +95 -334
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/interactive_session/interactive_session.py +15 -22
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/link/cli.py +49 -21
- cloudos_cli-2.92.0/cloudos_cli/link/link.py +996 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/procurement/cli.py +7 -10
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/procurement/images.py +7 -9
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli.egg-info/PKG-INFO +82 -68
- cloudos_cli-2.90.2/cloudos_cli/_version.py +0 -1
- cloudos_cli-2.90.2/cloudos_cli/link/link.py +0 -718
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/LICENSE +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/__main__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/bash/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/bash/cli.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/clos.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/configure/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/configure/cli.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/configure/configure.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/constants.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/cost/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/cost/cost.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/cromwell/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/cromwell/cli.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/datasets/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/datasets/datasets.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/import_wf/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/import_wf/import_wf.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/interactive_session/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/jobs/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/jobs/cli.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/jobs/job.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/link/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/logging/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/logging/logger.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/procurement/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/projects/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/projects/cli.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/queue/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/queue/cli.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/queue/queue.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/related_analyses/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/related_analyses/related_analyses.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/utils/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/utils/array_job.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/utils/cli_helpers.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/utils/cloud.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/utils/details.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/utils/errors.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/utils/last_wf.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/utils/nextflow_version.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/utils/requests.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/utils/resources.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/workflows/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli/workflows/cli.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli.egg-info/SOURCES.txt +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli.egg-info/dependency_links.txt +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli.egg-info/entry_points.txt +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli.egg-info/requires.txt +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/cloudos_cli.egg-info/top_level.txt +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/setup.cfg +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/setup.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/tests/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/tests/functions_for_pytest.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/tests/test_cli_project_create.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/tests/test_cost/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/tests/test_cost/test_job_cost.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/tests/test_details.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/tests/test_error_messages.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/tests/test_interactive_session/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/tests/test_interactive_session/test_create_session.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/tests/test_interactive_session/test_list_sessions.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/tests/test_logging/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/tests/test_logging/test_logger.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/tests/test_nextflow_version.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/tests/test_related_analyses/__init__.py +0 -0
- {cloudos_cli-2.90.2 → cloudos_cli-2.92.0}/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.
|
|
3
|
+
Version: 2.92.0
|
|
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
|
|
@@ -109,11 +109,11 @@ Python package for interacting with Lifebit Platform
|
|
|
109
109
|
- [Move Files](#move-files)
|
|
110
110
|
- [Rename Files](#rename-files)
|
|
111
111
|
- [Copy Files](#copy-files)
|
|
112
|
-
- [Link
|
|
112
|
+
- [Link Files and Folders to Interactive Analysis](#link-files-and-folders-to-interactive-analysis)
|
|
113
113
|
- [Create Folder](#create-folder)
|
|
114
114
|
- [Remove Files or Folders](#remove-files-or-folders)
|
|
115
115
|
- [Link](#link)
|
|
116
|
-
- [Link Folders to Interactive Analysis](#link-folders-to-interactive-analysis)
|
|
116
|
+
- [Link Files and Folders to Interactive Analysis](#link-files-and-folders-to-interactive-analysis-1)
|
|
117
117
|
- [Procurement](#procurement)
|
|
118
118
|
- [List Procurement Images](#list-procurement-images)
|
|
119
119
|
- [Set Procurement Organization Image](#set-procurement-organization-image)
|
|
@@ -231,10 +231,10 @@ This will tell you the implemented commands. Each implemented command has its ow
|
|
|
231
231
|
```bash
|
|
232
232
|
cloudos job list --help
|
|
233
233
|
```
|
|
234
|
-
```console Usage: cloudos job list [OPTIONS]
|
|
235
|
-
|
|
236
|
-
Collect workspace jobs from a Lifebit Platform workspace in CSV or JSON format.
|
|
237
|
-
|
|
234
|
+
```console Usage: cloudos job list [OPTIONS]
|
|
235
|
+
|
|
236
|
+
Collect workspace jobs from a Lifebit Platform workspace in CSV or JSON format.
|
|
237
|
+
|
|
238
238
|
╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────╮
|
|
239
239
|
│ * --apikey -k TEXT Your Lifebit Platform API key [required] │
|
|
240
240
|
│ * --cloudos-url -c TEXT The Lifebit Platform url you are trying to access to. │
|
|
@@ -299,7 +299,7 @@ $HOME
|
|
|
299
299
|
|
|
300
300
|
### Configure Default Profile
|
|
301
301
|
|
|
302
|
-
To facilitate the reuse of required parameters, you can create profiles.
|
|
302
|
+
To facilitate the reuse of required parameters, you can create profiles.
|
|
303
303
|
|
|
304
304
|
To generate a profile called `default`, use the following command:
|
|
305
305
|
|
|
@@ -321,7 +321,7 @@ The same prompts will appear, including the execution platform (aws or azure). I
|
|
|
321
321
|
|
|
322
322
|
When configuring a profile, you can specify:
|
|
323
323
|
- **API Key**: Your Lifebit Platform API credentials
|
|
324
|
-
- **Platform URL**: The Lifebit Platform instance URL
|
|
324
|
+
- **Platform URL**: The Lifebit Platform instance URL
|
|
325
325
|
- **Project Name**: Default project for commands
|
|
326
326
|
- **Execution Platform**: `aws` (default) or `azure` - determines default instance types and available features
|
|
327
327
|
- **Repository Platform**: Version control system (github, gitlab, etc.)
|
|
@@ -1314,7 +1314,7 @@ cloudos job cost --profile my_profile --job-id 62c83a1191fe06013b7ef355
|
|
|
1314
1314
|
The expected output is a formatted table showing:
|
|
1315
1315
|
|
|
1316
1316
|
```console
|
|
1317
|
-
Job Cost Details - Job ID: 62c83a1191fe06013b7ef355
|
|
1317
|
+
Job Cost Details - Job ID: 62c83a1191fe06013b7ef355
|
|
1318
1318
|
┏━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━┓
|
|
1319
1319
|
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ Compute ┃ ┃
|
|
1320
1320
|
┃ ┃ Instance ┃ ┃ Life-cycle ┃ ┃ Compute ┃ Instance ┃ storage ┃ ┃
|
|
@@ -1343,7 +1343,7 @@ On page 1/2: n = next, p = prev, q = quit
|
|
|
1343
1343
|
|
|
1344
1344
|
By pressing 'n', it will show the next page or the last if it is the case.
|
|
1345
1345
|
|
|
1346
|
-
Job Cost Details - Job ID: 62c83a1191fe06013b7ef355
|
|
1346
|
+
Job Cost Details - Job ID: 62c83a1191fe06013b7ef355
|
|
1347
1347
|
┏━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━┓
|
|
1348
1348
|
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ Compute ┃ ┃
|
|
1349
1349
|
┃ ┃ Instance ┃ ┃ Life-cycle ┃ ┃ Compute ┃ Instance ┃ storage ┃ ┃
|
|
@@ -1462,7 +1462,7 @@ The expected output is a formatted table showing:
|
|
|
1462
1462
|
```console
|
|
1463
1463
|
Total related analyses found: 15
|
|
1464
1464
|
|
|
1465
|
-
Related Analyses
|
|
1465
|
+
Related Analyses
|
|
1466
1466
|
┏━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━┳━━━━━━━━━━━━┓
|
|
1467
1467
|
┃ Status ┃ Name ┃ Owner ┃ ID ┃ Submit time ┃ Run time ┃ Total Cost ┃
|
|
1468
1468
|
┡━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━╇━━━━━━━━━━━━┩
|
|
@@ -1944,7 +1944,7 @@ Example Python Script:
|
|
|
1944
1944
|
#!/usr/bin/python3
|
|
1945
1945
|
print("Hello world")
|
|
1946
1946
|
```
|
|
1947
|
-
|
|
1947
|
+
|
|
1948
1948
|
2. Or use an interpreter command in the executable field
|
|
1949
1949
|
|
|
1950
1950
|
If your script doesn’t have a shebang line, you can execute it by explicitly specifying the interpreter in the executable command:
|
|
@@ -2021,7 +2021,7 @@ Interactive sessions allow you to work within the platform using different virtu
|
|
|
2021
2021
|
|
|
2022
2022
|
You can get a list of all interactive sessions in your workspace by running `cloudos interactive-session list`. The command can produce three different output formats that can be selected using the `--output-format` option:
|
|
2023
2023
|
|
|
2024
|
-
- **stdout** (default): Displays a table directly in the terminal with interactive pagination
|
|
2024
|
+
- **stdout** (default): Displays a table directly in the terminal with interactive pagination
|
|
2025
2025
|
- **csv**: Saves session data to a CSV file with a minimum predefined set of columns by default, or all available columns using the `--all-fields` parameter
|
|
2026
2026
|
- **json**: Saves complete session information to a JSON file with all available fields
|
|
2027
2027
|
|
|
@@ -2036,7 +2036,7 @@ cloudos interactive-session list --profile my_profile --output-format stdout
|
|
|
2036
2036
|
The table displays sessions with pagination controls (press `n` for next page, `p` for previous page, or `q` to quit):
|
|
2037
2037
|
|
|
2038
2038
|
```console
|
|
2039
|
-
Interactive Sessions
|
|
2039
|
+
Interactive Sessions
|
|
2040
2040
|
┏━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━┓
|
|
2041
2041
|
┃ Status ┃ Name ┃ Type ┃ ID ┃ Owner ┃
|
|
2042
2042
|
┡━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━┩
|
|
@@ -2183,7 +2183,7 @@ cloudos interactive-session create \
|
|
|
2183
2183
|
|
|
2184
2184
|
**Data & Storage Management:**
|
|
2185
2185
|
- `--mount`: Mount a data file into the session. Supports both Lifebit Platform datasets and S3 files (AWS only). Format: `project_name/dataset_path` (e.g., `leila-test/Data/file.csv`) or `s3://bucket/path/to/file` (e.g., `s3://my-bucket/data/file.csv`). Can be used multiple times.
|
|
2186
|
-
- `--link`: Link a folder into the session for read
|
|
2186
|
+
- `--link`: Link a file or folder into the session for read access (AWS only). Supports S3 files/folders (e.g., `s3://my-bucket/data/file.csv`, `s3://my-bucket/data/`) and File Explorer files/folders (e.g., `my-project/Data/file.csv`, `my-project/Data/results`). S3 paths whose last segment contains a `.` are treated as files; paths ending with `/` or without an extension are treated as folders. Multiple items can be specified using multiple `--link` flags or as comma-separated paths in a single `--link` argument.
|
|
2187
2187
|
**Note:** Linking is not supported on Azure. Use Lifebit Platform File Explorer for data access.
|
|
2188
2188
|
|
|
2189
2189
|
**Backend-Specific:**
|
|
@@ -2198,7 +2198,7 @@ cloudos interactive-session create \
|
|
|
2198
2198
|
|
|
2199
2199
|
CloudOS CLI supports multiple ways to access data in interactive sessions, depending on your execution platform:
|
|
2200
2200
|
- **Mount files** (`--mount`): Files are copied into the session's mounted-data volume. Supports CloudOS File Explorer files and S3 files (AWS only).
|
|
2201
|
-
- **Link folders** (`--link`):
|
|
2201
|
+
- **Link files/folders** (`--link`): Files and folders are mounted as read-accessible items in the session (AWS only). Supports S3 files, S3 folders, and Lifebit Platform File Explorer files and folders. Linked items appear with unique mount names based on the item name. Maximum 100 items per session.
|
|
2202
2202
|
|
|
2203
2203
|
|
|
2204
2204
|
**Data Mounting Examples**
|
|
@@ -2572,7 +2572,7 @@ The command automatically loads from profile (via `@with_profile_config` decorat
|
|
|
2572
2572
|
|
|
2573
2573
|
#### Resume Interactive Session
|
|
2574
2574
|
|
|
2575
|
-
Resume a paused interactive session with optional configuration updates. You can change instance type, storage, cost limit, auto-shutdown time
|
|
2575
|
+
Resume a paused interactive session with optional configuration updates. You can change instance type, storage, cost limit, and auto-shutdown time when resuming.
|
|
2576
2576
|
|
|
2577
2577
|
|
|
2578
2578
|
**Basic Usage**
|
|
@@ -2604,19 +2604,6 @@ cloudos interactive-session resume \
|
|
|
2604
2604
|
--shutdown-in 12h
|
|
2605
2605
|
```
|
|
2606
2606
|
|
|
2607
|
-
**Mount Additional Data**
|
|
2608
|
-
|
|
2609
|
-
Resume and mount additional files:
|
|
2610
|
-
|
|
2611
|
-
```bash
|
|
2612
|
-
cloudos interactive-session resume \
|
|
2613
|
-
--session-id <SESSION_ID> \
|
|
2614
|
-
--profile my_profile \
|
|
2615
|
-
--mount my-project/Data/new-dataset.csv \
|
|
2616
|
-
--mount s3://my-bucket/data/file.txt
|
|
2617
|
-
```
|
|
2618
|
-
|
|
2619
|
-
|
|
2620
2607
|
**Configuration Updates**
|
|
2621
2608
|
|
|
2622
2609
|
All configuration parameters are optional. If not specified, the session resumes with its previous configuration.
|
|
@@ -2626,6 +2613,8 @@ All configuration parameters are optional. If not specified, the session resumes
|
|
|
2626
2613
|
- `--cost-limit <USD>` - Update compute cost limit (-1 for unlimited)
|
|
2627
2614
|
- `--shutdown-in <DURATION>` - Update auto-shutdown time (e.g., 8h, 2d)
|
|
2628
2615
|
|
|
2616
|
+
> To link or mount data to a running session, use `cloudos link` or `cloudos datasets link` after the session has resumed.
|
|
2617
|
+
|
|
2629
2618
|
### Datasets
|
|
2630
2619
|
|
|
2631
2620
|
Manage files and folders within your Lifebit Platform File Explorer programmatically. These commands provide comprehensive file management capabilities for organizing research data and results.
|
|
@@ -2657,7 +2646,7 @@ The `datasets ls` command supports different output formats using the `--output-
|
|
|
2657
2646
|
- **`stdout` (default)**: Displays results in the console with Rich formatting
|
|
2658
2647
|
- Without `--details`: Simple list of file/folder names with color coding (blue underlined for folders)
|
|
2659
2648
|
- With `--details`: Rich formatted table with all file information
|
|
2660
|
-
|
|
2649
|
+
|
|
2661
2650
|
- **`csv`**: Saves results to a CSV file
|
|
2662
2651
|
- Without `--details`: CSV with two columns: "Name,Storage Path"
|
|
2663
2652
|
- With `--details`: CSV with columns "Type, Owner, Size, Size (bytes), Last Updated, Virtual Name, Storage Path"
|
|
@@ -2707,7 +2696,7 @@ Any of the `source_path` must be a full path, starting from the `Data` datasets
|
|
|
2707
2696
|
An example of such command is:
|
|
2708
2697
|
|
|
2709
2698
|
```
|
|
2710
|
-
cloudos datasets mv Data/results/my_plot.png Data/plots
|
|
2699
|
+
cloudos datasets mv Data/results/my_plot.png Data/plots
|
|
2711
2700
|
```
|
|
2712
2701
|
|
|
2713
2702
|
#### Rename Files
|
|
@@ -2718,7 +2707,7 @@ Change file and folder names while keeping them in the same location. This helps
|
|
|
2718
2707
|
> Files and folders within the `Data` dataset can be renamed using the following command
|
|
2719
2708
|
|
|
2720
2709
|
```bash
|
|
2721
|
-
cloudos datasets rename <path> <new_name> --profile my_profile
|
|
2710
|
+
cloudos datasets rename <path> <new_name> --profile my_profile
|
|
2722
2711
|
```
|
|
2723
2712
|
where `path` is the full path to the file/folder to be renamed and `new_name` is just the name, no path required, as the file will not be moved.
|
|
2724
2713
|
|
|
@@ -2744,40 +2733,53 @@ or it can happen **across different projects** within the same workspace
|
|
|
2744
2733
|
cloudos datasets cp <source_path> <destination_path> --profile <profile> --destination-project-name <project>
|
|
2745
2734
|
```
|
|
2746
2735
|
|
|
2747
|
-
Any of the `source_path` must be a full path; any `destination_path` must be a path starting with `Data` and finishing with the folder where to move the file/folder.
|
|
2736
|
+
Any of the `source_path` must be a full path; any `destination_path` must be a path starting with `Data` and finishing with the folder where to move the file/folder.
|
|
2748
2737
|
|
|
2749
2738
|
An example of such command is:
|
|
2750
2739
|
|
|
2751
2740
|
```
|
|
2752
|
-
cloudos datasets cp AnalysesResults/my_analysis/results/my_plot.png Data/plots
|
|
2741
|
+
cloudos datasets cp AnalysesResults/my_analysis/results/my_plot.png Data/plots
|
|
2753
2742
|
```
|
|
2754
2743
|
|
|
2755
2744
|
|
|
2756
|
-
#### Link
|
|
2745
|
+
#### Link Files and Folders to Interactive Analysis
|
|
2757
2746
|
|
|
2758
|
-
Connect external S3 buckets or
|
|
2747
|
+
Connect external S3 buckets, S3 files, or File Explorer files/folders to your interactive analysis sessions. This provides direct access to data without needing to copy files.
|
|
2759
2748
|
|
|
2760
|
-
This subcommand
|
|
2749
|
+
This subcommand uses the `--session-id` option to access the correct interactive session. This option can be added to the CLI or defined in a profile, for convenience.
|
|
2761
2750
|
|
|
2762
2751
|
```bash
|
|
2763
|
-
cloudos datasets link <
|
|
2752
|
+
cloudos datasets link <PATH> --profile <profile> --session-id <SESSION_ID>
|
|
2764
2753
|
```
|
|
2765
2754
|
|
|
2766
|
-
|
|
2755
|
+
Link an S3 folder:
|
|
2767
2756
|
```console
|
|
2768
2757
|
cloudos datasets link s3://bucket/path/folder --profile test --session-id 1234
|
|
2769
2758
|
```
|
|
2770
2759
|
|
|
2771
|
-
|
|
2772
|
-
```
|
|
2773
|
-
cloudos datasets link
|
|
2760
|
+
Link an S3 file:
|
|
2761
|
+
```console
|
|
2762
|
+
cloudos datasets link s3://bucket/path/data.csv --profile test --session-id 1234
|
|
2763
|
+
```
|
|
2764
|
+
|
|
2765
|
+
Link a File Explorer folder (requires `--project-name`):
|
|
2766
|
+
```console
|
|
2767
|
+
cloudos datasets link "Data/HLA" --project-name my-project --session-id 1234
|
|
2768
|
+
```
|
|
2769
|
+
|
|
2770
|
+
Link a File Explorer file (requires `--project-name`):
|
|
2771
|
+
```console
|
|
2772
|
+
cloudos datasets link "Data/observations.csv" --project-name my-project --session-id 1234
|
|
2774
2773
|
```
|
|
2775
2774
|
|
|
2776
2775
|
> [!NOTE]
|
|
2777
2776
|
> If running the CLI inside a jupyter session, the pre-configured CLI installation will have the session ID already installed and only the `--apikey` needs to be added.
|
|
2778
2777
|
|
|
2779
2778
|
> [!NOTE]
|
|
2780
|
-
> Virtual folders in File Explorer
|
|
2779
|
+
> Virtual folders in File Explorer (folders created in File Explorer that are not actual storage locations) cannot be linked.
|
|
2780
|
+
|
|
2781
|
+
> [!NOTE]
|
|
2782
|
+
> A maximum of 100 items can be linked per session. If the new items combined with already-linked items exceed this limit, the entire request is rejected.
|
|
2781
2783
|
|
|
2782
2784
|
#### Create Folder
|
|
2783
2785
|
|
|
@@ -2787,7 +2789,7 @@ Create new organizational folders within your projects to maintain structured da
|
|
|
2787
2789
|
> New folders can be created within the `Data` dataset and its subfolders.
|
|
2788
2790
|
|
|
2789
2791
|
```bash
|
|
2790
|
-
cloudos datasets mkdir <new_folder_path> --profile my_profile
|
|
2792
|
+
cloudos datasets mkdir <new_folder_path> --profile my_profile
|
|
2791
2793
|
```
|
|
2792
2794
|
|
|
2793
2795
|
#### Remove Files or Folders
|
|
@@ -2795,23 +2797,23 @@ cloudos datasets mkdir <new_folder_path> --profile my_profile
|
|
|
2795
2797
|
Remove unnecessary files or empty folders from your File Explorer. Note that this removes files from Lifebit Platform but not from underlying cloud storage.
|
|
2796
2798
|
|
|
2797
2799
|
> [!NOTE]
|
|
2798
|
-
> Files and folders can be removed in the `Data` datasets and its subfolders.
|
|
2800
|
+
> Files and folders can be removed in the `Data` datasets and its subfolders.
|
|
2799
2801
|
|
|
2800
2802
|
```bash
|
|
2801
2803
|
cloudos datasets rm <path> --profile my_profile
|
|
2802
2804
|
```
|
|
2803
2805
|
> [!NOTE]
|
|
2804
2806
|
> If a file was uploaded by the user, in order to be removed you must use `--force` and that will permanently remove the file. If the file is "linked" (e.g a s3 folder or file), removing it using `cloudos datasets rm` will not remove it from the the s3 bucket.
|
|
2805
|
-
|
|
2807
|
+
|
|
2806
2808
|
---
|
|
2807
2809
|
|
|
2808
2810
|
### Link
|
|
2809
2811
|
|
|
2810
|
-
The `cloudos link` command provides a unified interface for linking folders to interactive analysis sessions. This command consolidates functionality previously available through separate commands (`cloudos job results --link`, `cloudos job workdir --link`, `cloudos job logs --link`, and `cloudos datasets link`) into a single, intuitive interface.
|
|
2812
|
+
The `cloudos link` command provides a unified interface for linking files and folders to interactive analysis sessions. This command consolidates functionality previously available through separate commands (`cloudos job results --link`, `cloudos job workdir --link`, `cloudos job logs --link`, and `cloudos datasets link`) into a single, intuitive interface.
|
|
2811
2813
|
|
|
2812
|
-
#### Link Folders to Interactive Analysis
|
|
2814
|
+
#### Link Files and Folders to Interactive Analysis
|
|
2813
2815
|
|
|
2814
|
-
Link job-related folders or custom S3 paths to your interactive analysis sessions for direct access to data without needing to copy files.
|
|
2816
|
+
Link job-related folders or custom S3/File Explorer paths (files and folders) to your interactive analysis sessions for direct access to data without needing to copy files.
|
|
2815
2817
|
|
|
2816
2818
|
**Two modes of operation:**
|
|
2817
2819
|
|
|
@@ -2819,8 +2821,10 @@ Link job-related folders or custom S3 paths to your interactive analysis session
|
|
|
2819
2821
|
- By default, links results, workdir, and logs folders
|
|
2820
2822
|
- Use `--results`, `--workdir`, or `--logs` flags to link only specific folders
|
|
2821
2823
|
|
|
2822
|
-
2. **Direct path linking** (PATH argument): Links specific S3 or File Explorer paths.
|
|
2823
|
-
|
|
2824
|
+
2. **Direct path linking** (PATH argument): Links specific S3 or File Explorer paths (files or folders). Supports a single path or comma-separated multiple paths.
|
|
2825
|
+
- S3 paths whose last segment contains a `.` are treated as files (e.g., `s3://bucket/data/file.csv`)
|
|
2826
|
+
- S3 paths ending with `/` or without an extension are treated as folders
|
|
2827
|
+
- File Explorer paths can point to either files or folders — the CLI detects the type automatically
|
|
2824
2828
|
|
|
2825
2829
|
**Basic usage:**
|
|
2826
2830
|
|
|
@@ -2832,16 +2836,28 @@ cloudos link --job-id <JOB_ID> --session-id <SESSION_ID> --profile my_profile
|
|
|
2832
2836
|
cloudos link --job-id <JOB_ID> --session-id <SESSION_ID> --results --profile my_profile
|
|
2833
2837
|
cloudos link --job-id <JOB_ID> --session-id <SESSION_ID> --workdir --logs --profile my_profile
|
|
2834
2838
|
|
|
2835
|
-
# Link a single S3
|
|
2836
|
-
cloudos link s3://bucket/folder --session-id <SESSION_ID> --profile my_profile
|
|
2839
|
+
# Link a single S3 folder
|
|
2840
|
+
cloudos link s3://bucket/folder/ --session-id <SESSION_ID> --profile my_profile
|
|
2837
2841
|
|
|
2838
|
-
# Link
|
|
2839
|
-
cloudos link s3://
|
|
2842
|
+
# Link a single S3 file
|
|
2843
|
+
cloudos link s3://bucket/data/file.csv --session-id <SESSION_ID> --profile my_profile
|
|
2840
2844
|
|
|
2841
|
-
# Link
|
|
2845
|
+
# Link multiple S3 paths (comma-separated, files and folders mixed)
|
|
2846
|
+
cloudos link s3://bucket1/data/,s3://bucket2/results/file.csv --session-id <SESSION_ID> --profile my_profile
|
|
2847
|
+
|
|
2848
|
+
# Link a File Explorer folder (path is RELATIVE to --project-name; do NOT prepend the project)
|
|
2842
2849
|
cloudos link "Data/MyFolder" --project-name my-project --session-id <SESSION_ID> --profile my_profile
|
|
2850
|
+
|
|
2851
|
+
# Link a File Explorer file (path is RELATIVE to --project-name)
|
|
2852
|
+
cloudos link "Data/file.csv" --project-name my-project --session-id <SESSION_ID> --profile my_profile
|
|
2853
|
+
|
|
2854
|
+
# Link several File Explorer items at once (all in the same project)
|
|
2855
|
+
cloudos link "Data/MyFolder,Data/file.csv,Results/run-1" --project-name my-project --session-id <SESSION_ID> --profile my_profile
|
|
2843
2856
|
```
|
|
2844
2857
|
|
|
2858
|
+
> [!IMPORTANT]
|
|
2859
|
+
> **`cloudos link` is single-project for File Explorer paths.** All File Explorer items linked in one invocation must belong to the project named in `--project-name`. The path must be relative to that project — prepending the project name to the path (e.g. `my-project/Data/file.csv`) is rejected. To link items from a different project, run `cloudos link` again with a different `--project-name`.
|
|
2860
|
+
|
|
2845
2861
|
**Command options:**
|
|
2846
2862
|
|
|
2847
2863
|
|
|
@@ -2851,7 +2867,7 @@ cloudos link "Data/MyFolder" --project-name my-project --session-id <SESSION_ID>
|
|
|
2851
2867
|
- `--workspace-id`: The specific Lifebit Platform workspace ID (required)
|
|
2852
2868
|
- `--session-id`: The specific Lifebit Platform interactive session ID (required)
|
|
2853
2869
|
- `--job-id`: The job ID in Lifebit Platform (links results, workdir, and logs by default)
|
|
2854
|
-
- `--project-name`: Lifebit Platform project name
|
|
2870
|
+
- `--project-name`: Lifebit Platform project name. Required when any PATH is a File Explorer path. All FE paths in one invocation must belong to this project and must be RELATIVE to it (do not prepend the project name)
|
|
2855
2871
|
- `--results`: Link only results folder (only works with `--job-id`)
|
|
2856
2872
|
- `--workdir`: Link only working directory (only works with `--job-id`)
|
|
2857
2873
|
- `--logs`: Link only logs folder (only works with `--job-id`)
|
|
@@ -2910,7 +2926,7 @@ To list images for a specific procurement, use the following command:
|
|
|
2910
2926
|
|
|
2911
2927
|
```bash
|
|
2912
2928
|
cloudos procurement images ls \
|
|
2913
|
-
-- profile procurement_profile
|
|
2929
|
+
-- profile procurement_profile
|
|
2914
2930
|
--procurement-id "your_procurement_id_here"
|
|
2915
2931
|
```
|
|
2916
2932
|
|
|
@@ -2969,12 +2985,10 @@ cloudos procurement images set --profile procurement_profile --image-type "JobDe
|
|
|
2969
2985
|
- `--image-type`: The Lifebit Platform resource image type (required). Possible values:
|
|
2970
2986
|
- `RegularInteractiveSessions`
|
|
2971
2987
|
- `SparkInteractiveSessions`
|
|
2972
|
-
- `RStudioInteractiveSessions`
|
|
2973
|
-
- `JupyterInteractiveSessions`
|
|
2974
2988
|
- `JobDefault`
|
|
2975
2989
|
- `NextflowBatchComputeEnvironment`
|
|
2976
|
-
- `--provider`: The cloud provider (required). Currently only `aws`
|
|
2977
|
-
- `--region`: The cloud region (required). Currently only
|
|
2990
|
+
- `--provider`: The cloud provider (required). Currently only supporting `aws` and `azure`.
|
|
2991
|
+
- `--region`: The cloud region (required). Currently only supporting aws and azure regions.
|
|
2978
2992
|
- `--image-id`: The new image ID value (required)
|
|
2979
2993
|
- `--image-name`: The new image name value (optional)
|
|
2980
2994
|
- `--image-version`: The new image version (required)
|
|
@@ -3007,7 +3021,7 @@ cloudos procurement images reset --profile procurement_profile --image-type "Job
|
|
|
3007
3021
|
- `--organisation-id`: The organization ID where the change will be applied (required)
|
|
3008
3022
|
- `--image-type`: The Lifebit Platform resource image type (required). Same values as for `set` command
|
|
3009
3023
|
- `--provider`: The cloud provider (required). Currently only `aws` is supported
|
|
3010
|
-
- `--region`: The cloud region (required). Currently only
|
|
3024
|
+
- `--region`: The cloud region (required). Currently only supporting aws and azure regions.
|
|
3011
3025
|
- `--disable-ssl-verification`: Disable SSL certificate verification
|
|
3012
3026
|
- `--ssl-cert`: Path to your SSL certificate file
|
|
3013
3027
|
- `--profile`: Profile to use from the config file
|
|
@@ -3036,7 +3050,7 @@ Executing status...
|
|
|
3036
3050
|
Current Cromwell server status is: Stopped
|
|
3037
3051
|
```
|
|
3038
3052
|
|
|
3039
|
-
```bash
|
|
3053
|
+
```bash
|
|
3040
3054
|
# Cromwell start
|
|
3041
3055
|
cloudos cromwell start --profile my_profile
|
|
3042
3056
|
```
|
|
@@ -3262,8 +3276,8 @@ responses>=0.21.0
|
|
|
3262
3276
|
mock>=3.0.5
|
|
3263
3277
|
```
|
|
3264
3278
|
|
|
3265
|
-
Command to run tests from the `cloudos-cli` main folder:
|
|
3279
|
+
Command to run tests from the `cloudos-cli` main folder:
|
|
3266
3280
|
|
|
3267
3281
|
```
|
|
3268
3282
|
python -m pytest -s -v
|
|
3269
|
-
```
|
|
3283
|
+
```
|