yellowdog-python-examples 7.10.0__tar.gz → 7.10.2__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.
- {yellowdog_python_examples-7.10.0/yellowdog_python_examples.egg-info → yellowdog_python_examples-7.10.2}/PKG-INFO +2 -2
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/README.md +4 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/pyproject.toml +1 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/requirements.txt +1 -1
- yellowdog_python_examples-7.10.2/yd_commands/__init__.py +1 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/args.py +15 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/config_types.py +1 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/load_config.py +1 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/printing.py +15 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/property_names.py +2 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/show.py +16 -13
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/submit.py +5 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2/yellowdog_python_examples.egg-info}/PKG-INFO +2 -2
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yellowdog_python_examples.egg-info/entry_points.txt +1 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yellowdog_python_examples.egg-info/requires.txt +1 -1
- yellowdog_python_examples-7.10.0/yd_commands/__init__.py +0 -1
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/LICENSE +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/PYPI_README.md +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/setup.cfg +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/setup.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/tests/test_create_remove.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/tests/test_demos.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/tests/test_dryruns.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/tests/test_entrypoints.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/tests/test_gui.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/tests/test_list.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/tests/test_objects.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/tests/test_variable_processing.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/abort.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/admin.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/boost.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/cancel.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/check_imports.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/cloudwizard.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/cloudwizard_aws.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/cloudwizard_aws_types.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/cloudwizard_azure.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/cloudwizard_common.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/cloudwizard_gcp.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/compact_json.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/create.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/csv_data.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/delete.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/download.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/follow.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/follow_utils.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/format_json.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/hold.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/id_utils.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/instantiate.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/interactive.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/items.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/jsonnet2json.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/list.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/load_resources.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/object_utilities.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/provision.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/provision_utils.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/remove.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/resize.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/settings.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/shutdown.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/start.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/start_hold_common.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/submit_utils.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/terminate.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/type_check.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/upload.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/upload_utils.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/utils.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/validate_properties.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/variables.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/version.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/wrapper.py +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yellowdog_python_examples.egg-info/SOURCES.txt +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yellowdog_python_examples.egg-info/dependency_links.txt +0 -0
- {yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yellowdog_python_examples.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: yellowdog-python-examples
|
|
3
|
-
Version: 7.10.
|
|
3
|
+
Version: 7.10.2
|
|
4
4
|
Summary: Example Python commands using the YellowDog Python SDK
|
|
5
5
|
Home-page: https://github.com/yellowdog/python-examples
|
|
6
6
|
Author: YellowDog Limited
|
|
@@ -15,7 +15,7 @@ Classifier: Development Status :: 4 - Beta
|
|
|
15
15
|
Requires-Python: >=3.7
|
|
16
16
|
Description-Content-Type: text/markdown
|
|
17
17
|
License-File: LICENSE
|
|
18
|
-
Requires-Dist: yellowdog-sdk>=8.0.
|
|
18
|
+
Requires-Dist: yellowdog-sdk>=8.0.2
|
|
19
19
|
Requires-Dist: toml
|
|
20
20
|
Requires-Dist: tabulate>=0.9.0
|
|
21
21
|
Requires-Dist: PyPAC>=0.16.4
|
|
@@ -581,6 +581,7 @@ All properties are optional except for **`taskType`** (or **`taskTypes`**).
|
|
|
581
581
|
| `maxWorkers` | The maximum number of Workers that can be claimed for the associated Task Group. E.g., `10`. | Yes | Yes | Yes | |
|
|
582
582
|
| `minWorkers` | The minimum number of Workers that the associated Task Group requires. This many workers must be claimed before the associated Task Group will start working. E.g., `1`. | Yes | Yes | Yes | |
|
|
583
583
|
| `name` | The name of the Work Requirement, Task Group or Task. E.g., `"wr_name"`. Note that the `name` property is not inherited. | Yes | Yes | Yes | Yes |
|
|
584
|
+
| `namespaces` | Only Worker Pools whose workers match one of the namespaces in this list can be claimed by the Task Group. E.g., `["namespace_1", "namespace_2"]. Defaults to `None`. | Yes | Yes | Yes | |
|
|
584
585
|
| `outputs` | The files to be uploaded to the YellowDog Object Store by a Worker node on completion of the Task. E.g., `["results_1.txt", "results_2.txt"]`. | Yes | Yes | Yes | Yes |
|
|
585
586
|
| `outputsOther` | Files to be uploaded to the YellowDog Object Store from outside the Tasks's Working Directory by a Worker node on completion of a Task. E.g., `outputsOther = [{"directoryName" = "tmp", "filePattern" = "out.txt", "required" = false}]`. | Yes | Yes | Yes | Yes |
|
|
586
587
|
| `outputsRequired` | The files that *must* be uploaded to the YellowDog Object Store by a Worker node on completion of the Task. The Task will fail if any outputs are unavailable. | Yes | Yes | Yes | Yes |
|
|
@@ -774,6 +775,7 @@ Here's an example of the `workRequirement` section of a TOML configuration file,
|
|
|
774
775
|
]
|
|
775
776
|
inputsOptional = ["optional.txt"]
|
|
776
777
|
instanceTypes = ["t3a.micro", "t3.micro"]
|
|
778
|
+
namespaces = ["namespace_1", "namespace_2"]
|
|
777
779
|
maxWorkers = 1
|
|
778
780
|
maximumTaskRetries = 0
|
|
779
781
|
minWorkers = 1
|
|
@@ -832,6 +834,7 @@ Showing all possible properties at the Work Requirement level:
|
|
|
832
834
|
"maximumTaskRetries": 0,
|
|
833
835
|
"minWorkers": 1,
|
|
834
836
|
"name": "my-work-requirement",
|
|
837
|
+
"namespaces": ["namespace_1", "namespace_2"],
|
|
835
838
|
"outputs": ["results.txt"],
|
|
836
839
|
"outputsOther": [{"directoryName": "my_output_dir", "filePattern": "out.txt", "required": true}],
|
|
837
840
|
"outputsRequired": ["results_required.txt"],
|
|
@@ -892,6 +895,7 @@ Showing all possible properties at the Task Group level:
|
|
|
892
895
|
"maxWorkers": 1,
|
|
893
896
|
"minWorkers": 1,
|
|
894
897
|
"name": "first-task-group",
|
|
898
|
+
"namespaces": ["namespace_1", "namespace_2"],
|
|
895
899
|
"outputs": ["results.txt"],
|
|
896
900
|
"outputsOther": [{"directoryName": "my_output_dir", "filePattern": "out.txt", "required": true}],
|
|
897
901
|
"outputsRequired": ["results_required.txt"],
|
|
@@ -47,6 +47,7 @@
|
|
|
47
47
|
yd-provision = "yd_commands.provision:main"
|
|
48
48
|
yd-remove = "yd_commands.remove:main"
|
|
49
49
|
yd-resize = "yd_commands.resize:main"
|
|
50
|
+
yd-show = "yd_commands.show:main"
|
|
50
51
|
yd-shutdown = "yd_commands.shutdown:main"
|
|
51
52
|
yd-submit = "yd_commands.submit:main"
|
|
52
53
|
yd-start = "yd_commands.start:main"
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "7.10.2"
|
|
@@ -1003,6 +1003,14 @@ class CLIParser:
|
|
|
1003
1003
|
),
|
|
1004
1004
|
)
|
|
1005
1005
|
|
|
1006
|
+
if any(module in sys.argv[0] for module in ["show"]):
|
|
1007
|
+
parser.add_argument(
|
|
1008
|
+
"--show-token",
|
|
1009
|
+
action="store_true",
|
|
1010
|
+
required=False,
|
|
1011
|
+
help="display the worker pool token when showing the details of a configured worker pool",
|
|
1012
|
+
)
|
|
1013
|
+
|
|
1006
1014
|
self.args = parser.parse_args()
|
|
1007
1015
|
|
|
1008
1016
|
if self.args.docs:
|
|
@@ -1443,6 +1451,11 @@ class CLIParser:
|
|
|
1443
1451
|
def public_ips_only(self) -> Optional[bool]:
|
|
1444
1452
|
return self.args.public_ips_only
|
|
1445
1453
|
|
|
1454
|
+
@property
|
|
1455
|
+
@allow_missing_attribute
|
|
1456
|
+
def show_token(self) -> Optional[bool]:
|
|
1457
|
+
return self.args.show_token
|
|
1458
|
+
|
|
1446
1459
|
|
|
1447
1460
|
def lookup_module_description(module_name: str) -> Optional[str]:
|
|
1448
1461
|
"""
|
|
@@ -1489,6 +1502,8 @@ def lookup_module_description(module_name: str) -> Optional[str]:
|
|
|
1489
1502
|
suffix = "holding (pausing) running Work Requirements"
|
|
1490
1503
|
elif "boost" in module_name:
|
|
1491
1504
|
suffix = "boosting Allowances"
|
|
1505
|
+
elif "show" in module_name:
|
|
1506
|
+
suffix = "showing the JSON details of entities referenced by their YDIDs"
|
|
1492
1507
|
|
|
1493
1508
|
return None if suffix is None else prefix + suffix
|
|
1494
1509
|
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/config_types.py
RENAMED
|
@@ -43,6 +43,7 @@ class ConfigWorkRequirement:
|
|
|
43
43
|
max_retries: int = 0
|
|
44
44
|
max_workers: Optional[int] = None
|
|
45
45
|
min_workers: Optional[int] = None
|
|
46
|
+
namespaces: Optional[List[str]] = None
|
|
46
47
|
outputs_optional: List[str] = field(default_factory=list)
|
|
47
48
|
outputs_other: List[Dict] = field(default_factory=list)
|
|
48
49
|
outputs_required: List[str] = field(default_factory=list)
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/load_config.py
RENAMED
|
@@ -291,6 +291,7 @@ def load_config_work_requirement() -> Optional[ConfigWorkRequirement]:
|
|
|
291
291
|
max_retries=wr_section.get(MAX_RETRIES, 0),
|
|
292
292
|
max_workers=wr_section.get(MAX_WORKERS, None),
|
|
293
293
|
min_workers=wr_section.get(MIN_WORKERS, None),
|
|
294
|
+
namespaces=wr_section.get(NAMESPACES, None),
|
|
294
295
|
outputs_optional=wr_section.get(OUTPUTS_OPTIONAL, []),
|
|
295
296
|
outputs_other=wr_section.get(OUTPUTS_OTHER, []),
|
|
296
297
|
outputs_required=wr_section.get(OUTPUTS_REQUIRED, []),
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/printing.py
RENAMED
|
@@ -136,6 +136,21 @@ def print_string(msg: str = "", no_fill: bool = False) -> str:
|
|
|
136
136
|
)
|
|
137
137
|
|
|
138
138
|
|
|
139
|
+
def print_simple(
|
|
140
|
+
log_message: str = "",
|
|
141
|
+
override_quiet: bool = False,
|
|
142
|
+
no_fill: bool = False,
|
|
143
|
+
):
|
|
144
|
+
"""
|
|
145
|
+
Simple print function without timestamp.
|
|
146
|
+
Set 'override_quiet' to print when '-q' is set.
|
|
147
|
+
"""
|
|
148
|
+
if ARGS_PARSER.quiet and override_quiet is False:
|
|
149
|
+
return
|
|
150
|
+
|
|
151
|
+
CONSOLE.print(log_message)
|
|
152
|
+
|
|
153
|
+
|
|
139
154
|
def print_log(
|
|
140
155
|
log_message: str = "",
|
|
141
156
|
override_quiet: bool = False,
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/property_names.py
RENAMED
|
@@ -47,6 +47,7 @@ MIN_NODES = "minNodes" # Integer
|
|
|
47
47
|
MIN_WORKERS = "minWorkers" # Integer
|
|
48
48
|
NAME = "name" # String
|
|
49
49
|
NAMESPACE = "namespace" # String
|
|
50
|
+
NAMESPACES = "namespaces" # List of Strings
|
|
50
51
|
NAME_TAG = "tag" # String
|
|
51
52
|
NODE_BOOT_TIMEOUT = "nodeBootTimeout" # Float
|
|
52
53
|
OUTPUTS_OPTIONAL = "outputs" # List of Strings
|
|
@@ -144,6 +145,7 @@ ALL_KEYS = [
|
|
|
144
145
|
MIN_NODES,
|
|
145
146
|
MIN_WORKERS,
|
|
146
147
|
NAMESPACE,
|
|
148
|
+
NAMESPACES,
|
|
147
149
|
NAME_TAG,
|
|
148
150
|
NODE_BOOT_TIMEOUT,
|
|
149
151
|
OUTPUTS_OPTIONAL,
|
|
@@ -6,7 +6,7 @@ Command to show the JSON details of YellowDog entities via their IDs.
|
|
|
6
6
|
|
|
7
7
|
from typing import List
|
|
8
8
|
|
|
9
|
-
from yellowdog_client.model import Task, TaskSearch
|
|
9
|
+
from yellowdog_client.model import ConfiguredWorkerPool, Task, TaskSearch
|
|
10
10
|
from yellowdog_client.model.exceptions import InvalidRequestException
|
|
11
11
|
|
|
12
12
|
from yd_commands.printing import print_log, print_warning, print_yd_object
|
|
@@ -16,11 +16,7 @@ from yd_commands.wrapper import ARGS_PARSER, CLIENT, main_wrapper
|
|
|
16
16
|
@main_wrapper
|
|
17
17
|
def main():
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
if len(ydids_set) < len(ARGS_PARSER.yellowdog_ids):
|
|
21
|
-
print_warning("Dropping duplicate YDIDs")
|
|
22
|
-
|
|
23
|
-
for ydid in ydids_set:
|
|
19
|
+
for ydid in ARGS_PARSER.yellowdog_ids:
|
|
24
20
|
show_details(ydid)
|
|
25
21
|
|
|
26
22
|
|
|
@@ -51,13 +47,21 @@ def show_details(ydid: str):
|
|
|
51
47
|
for source in compute_requirement.provisionStrategy.sources:
|
|
52
48
|
if source.id == ydid:
|
|
53
49
|
print_yd_object(source)
|
|
54
|
-
|
|
50
|
+
return
|
|
55
51
|
else:
|
|
56
52
|
print_warning(f"Compute Source ID '{ydid}' not found")
|
|
57
53
|
|
|
58
54
|
elif ":wrkrpool:" in ydid:
|
|
59
55
|
print_log(f"Showing details of Worker Pool ID '{ydid}'")
|
|
60
|
-
|
|
56
|
+
worker_pool = CLIENT.worker_pool_client.get_worker_pool_by_id(ydid)
|
|
57
|
+
print_yd_object(worker_pool)
|
|
58
|
+
if ARGS_PARSER.show_token and isinstance(worker_pool, ConfiguredWorkerPool):
|
|
59
|
+
print_log("Showing Configured Worker Pool token data")
|
|
60
|
+
print_yd_object(
|
|
61
|
+
CLIENT.worker_pool_client.get_configured_worker_pool_token_by_id(
|
|
62
|
+
ydid
|
|
63
|
+
)
|
|
64
|
+
)
|
|
61
65
|
|
|
62
66
|
elif ":node:" in ydid:
|
|
63
67
|
print_log(f"Showing details of Node ID '{ydid}'")
|
|
@@ -71,7 +75,7 @@ def show_details(ydid: str):
|
|
|
71
75
|
for worker in node.workers:
|
|
72
76
|
if worker.id == ydid:
|
|
73
77
|
print_yd_object(worker)
|
|
74
|
-
|
|
78
|
+
return
|
|
75
79
|
else:
|
|
76
80
|
print_warning(f"Worker ID '{ydid}' not found")
|
|
77
81
|
|
|
@@ -87,7 +91,7 @@ def show_details(ydid: str):
|
|
|
87
91
|
for task_group in work_requirement.taskGroups:
|
|
88
92
|
if task_group.id == ydid:
|
|
89
93
|
print_yd_object(task_group)
|
|
90
|
-
|
|
94
|
+
return
|
|
91
95
|
else:
|
|
92
96
|
print_warning(f"Task Group ID '{ydid}' not found")
|
|
93
97
|
|
|
@@ -110,6 +114,7 @@ def show_details(ydid: str):
|
|
|
110
114
|
for task in tasks:
|
|
111
115
|
if task.id == ydid:
|
|
112
116
|
print_yd_object(task)
|
|
117
|
+
return
|
|
113
118
|
else:
|
|
114
119
|
print_warning(f"Task ID '{ydid}' not found")
|
|
115
120
|
|
|
@@ -131,7 +136,7 @@ def show_details(ydid: str):
|
|
|
131
136
|
for keyring in keyrings:
|
|
132
137
|
if keyring.id == ydid:
|
|
133
138
|
print_yd_object(keyring)
|
|
134
|
-
|
|
139
|
+
return
|
|
135
140
|
else:
|
|
136
141
|
print_warning(f"Keyring ID '{ydid}' not found")
|
|
137
142
|
|
|
@@ -142,8 +147,6 @@ def show_details(ydid: str):
|
|
|
142
147
|
else:
|
|
143
148
|
print_warning(f"Unknown (or unsupported) YellowDog ID type for '{ydid}'")
|
|
144
149
|
|
|
145
|
-
except InvalidRequestException as e:
|
|
146
|
-
print_warning(f"Unable to show details for '{ydid}': {e}")
|
|
147
150
|
except Exception as e:
|
|
148
151
|
print_warning(f"Unable to show details for '{ydid}': {e}")
|
|
149
152
|
|
|
@@ -486,6 +486,11 @@ def create_task_group(
|
|
|
486
486
|
task_group_data.get(REGIONS, wr_data.get(REGIONS, config_wr.regions))
|
|
487
487
|
),
|
|
488
488
|
taskTimeout=task_timeout,
|
|
489
|
+
namespaces=check_list(
|
|
490
|
+
task_group_data.get(
|
|
491
|
+
NAMESPACES, wr_data.get(NAMESPACES, config_wr.namespaces)
|
|
492
|
+
)
|
|
493
|
+
),
|
|
489
494
|
)
|
|
490
495
|
ctttl_data = check_float_or_int(
|
|
491
496
|
task_group_data.get(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: yellowdog-python-examples
|
|
3
|
-
Version: 7.10.
|
|
3
|
+
Version: 7.10.2
|
|
4
4
|
Summary: Example Python commands using the YellowDog Python SDK
|
|
5
5
|
Home-page: https://github.com/yellowdog/python-examples
|
|
6
6
|
Author: YellowDog Limited
|
|
@@ -15,7 +15,7 @@ Classifier: Development Status :: 4 - Beta
|
|
|
15
15
|
Requires-Python: >=3.7
|
|
16
16
|
Description-Content-Type: text/markdown
|
|
17
17
|
License-File: LICENSE
|
|
18
|
-
Requires-Dist: yellowdog-sdk>=8.0.
|
|
18
|
+
Requires-Dist: yellowdog-sdk>=8.0.2
|
|
19
19
|
Requires-Dist: toml
|
|
20
20
|
Requires-Dist: tabulate>=0.9.0
|
|
21
21
|
Requires-Dist: PyPAC>=0.16.4
|
|
@@ -15,6 +15,7 @@ yd-list = yd_commands.list:main
|
|
|
15
15
|
yd-provision = yd_commands.provision:main
|
|
16
16
|
yd-remove = yd_commands.remove:main
|
|
17
17
|
yd-resize = yd_commands.resize:main
|
|
18
|
+
yd-show = yd_commands.show:main
|
|
18
19
|
yd-shutdown = yd_commands.shutdown:main
|
|
19
20
|
yd-start = yd_commands.start:main
|
|
20
21
|
yd-submit = yd_commands.submit:main
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "7.10.0"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/tests/test_create_remove.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/tests/test_entrypoints.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/check_imports.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/cloudwizard.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/cloudwizard_aws.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/cloudwizard_gcp.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/compact_json.py
RENAMED
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/csv_data.py
RENAMED
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/download.py
RENAMED
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/follow_utils.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/format_json.py
RENAMED
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/id_utils.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/instantiate.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/interactive.py
RENAMED
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/jsonnet2json.py
RENAMED
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/load_resources.py
RENAMED
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/provision.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/provision_utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/settings.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/shutdown.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/submit_utils.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/terminate.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/type_check.py
RENAMED
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/upload_utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/variables.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/version.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.10.0 → yellowdog_python_examples-7.10.2}/yd_commands/wrapper.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|