yellowdog-python-examples 7.9.1__tar.gz → 7.9.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.9.1/yellowdog_python_examples.egg-info → yellowdog_python_examples-7.9.2}/PKG-INFO +1 -1
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/README.md +4 -4
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/tests/test_demos.py +4 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/tests/test_dryruns.py +13 -0
- yellowdog_python_examples-7.9.2/yd_commands/__init__.py +1 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/args.py +1 -1
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/create.py +9 -2
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/delete.py +10 -4
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/load_config.py +13 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/property_names.py +2 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/remove.py +3 -3
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/submit.py +4 -1
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/upload_utils.py +1 -1
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2/yellowdog_python_examples.egg-info}/PKG-INFO +1 -1
- yellowdog_python_examples-7.9.1/yd_commands/__init__.py +0 -1
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/LICENSE +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/PYPI_README.md +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/pyproject.toml +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/requirements.txt +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/setup.cfg +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/setup.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/tests/test_create_remove.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/tests/test_entrypoints.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/tests/test_gui.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/tests/test_list.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/tests/test_objects.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/tests/test_variable_processing.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/abort.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/admin.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/boost.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/cancel.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/check_imports.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/cloudwizard.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/cloudwizard_aws.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/cloudwizard_aws_types.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/cloudwizard_azure.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/cloudwizard_common.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/cloudwizard_gcp.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/compact_json.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/config_types.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/csv_data.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/download.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/follow.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/follow_utils.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/format_json.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/hold.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/id_utils.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/instantiate.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/interactive.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/items.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/jsonnet2json.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/list.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/load_resources.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/object_utilities.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/printing.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/provision.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/provision_utils.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/resize.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/settings.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/shutdown.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/start.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/start_hold_common.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/submit_utils.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/terminate.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/type_check.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/upload.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/utils.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/validate_properties.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/variables.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/version.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/wrapper.py +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yellowdog_python_examples.egg-info/SOURCES.txt +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yellowdog_python_examples.egg-info/dependency_links.txt +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yellowdog_python_examples.egg-info/entry_points.txt +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yellowdog_python_examples.egg-info/requires.txt +0 -0
- {yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yellowdog_python_examples.egg-info/top_level.txt +0 -0
|
@@ -1275,7 +1275,7 @@ where <working_directory> is:
|
|
|
1275
1275
|
/var/opt/yellowdog/agent/data/workers/ydid_task_D0D0D0_68f5e5be-dc93-49eb-a824-1fcdb52f9195_1_1/
|
|
1276
1276
|
```
|
|
1277
1277
|
|
|
1278
|
-
Note that the Work Requirement name is automatically made available to the Task via the environment variable `YD_WORK_REQUIREMENT_NAME`, by `yd-submit`. It's also available for client-side variable substitution in Work Requirements using the variable `{{wr_name}}`.
|
|
1278
|
+
Note that the Work Requirement name is automatically made available to the Task via the environment variable `YD_WORK_REQUIREMENT_NAME`, by `yd-submit`, if the `addYDEnvironmentVariables` property is set to `true`. It's also available for client-side variable substitution in Work Requirements using the variable `{{wr_name}}`.
|
|
1279
1279
|
|
|
1280
1280
|
### Files Uploaded from a Node to the Object Store after Task Execution
|
|
1281
1281
|
|
|
@@ -1350,7 +1350,7 @@ This section discusses the context within which a Task operates when it's execut
|
|
|
1350
1350
|
|
|
1351
1351
|
When a Task is allocated to a Worker on a node by the YellowDog Scheduler, the following steps are followed:
|
|
1352
1352
|
|
|
1353
|
-
1. The Agent running on the node downloads the Task's properties: its `taskType`, `arguments`, `environment`, `taskdata`, and (from the Object Store) any files in the `inputs` list and any available files in the `inputsOptional` list. A number of `YD_` environment variables are also automatically set by a combination of `yd_submit
|
|
1353
|
+
1. The Agent running on the node downloads the Task's properties: its `taskType`, `arguments`, `environment`, `taskdata`, and (from the Object Store) any files in the `inputs` list and any available files in the `inputsOptional` list. A number of `YD_` environment variables are also automatically set by a combination (optionally) of `yd_submit`, and the Agent itself -- see above for details.
|
|
1354
1354
|
2. The downloaded files are placed in an ephemeral directory created for this Task's execution, and into which any output files are also written by default.
|
|
1355
1355
|
2. The Agent runs the command specified for the `taskType` in the Agent's `application.yaml` configuration file. This done as a simple `exec` of a subprocess to run the Task.
|
|
1356
1356
|
3. When the Task concludes, the Agent uses the exit code of the subprocess to report success (zero) or failure (non-zero).
|
|
@@ -2192,7 +2192,7 @@ Example:
|
|
|
2192
2192
|
```json
|
|
2193
2193
|
{
|
|
2194
2194
|
"resource": "NumericAttributeDefinition",
|
|
2195
|
-
"name": "my-numeric-attribute",
|
|
2195
|
+
"name": "user.my-numeric-attribute",
|
|
2196
2196
|
"title": "Attribute Title",
|
|
2197
2197
|
"defaultRankOrder": "PREFER_LOWER",
|
|
2198
2198
|
"description": "A description of the attribute",
|
|
@@ -2201,7 +2201,7 @@ Example:
|
|
|
2201
2201
|
}
|
|
2202
2202
|
```
|
|
2203
2203
|
|
|
2204
|
-
The `name`, `title` and `defaultRankOrder` properties are required, while the rest are optional. The `user.` prefix is required when specifying the `name` property.
|
|
2204
|
+
The `name`, `title` and `defaultRankOrder` properties are required, while the rest are optional. Either the `range` property or the `options` property (with numeric option values) can be specified, but not both. The `user.` prefix is required when specifying the `name` property.
|
|
2205
2205
|
|
|
2206
2206
|
# Jsonnet Support
|
|
2207
2207
|
|
|
@@ -61,6 +61,10 @@ class TestDemos:
|
|
|
61
61
|
result = shell(f"cd {DEMO_DIR}/montecarlo && {CMD_SEQ}")
|
|
62
62
|
assert result.exit_code == 0
|
|
63
63
|
|
|
64
|
+
def test_ansys(self):
|
|
65
|
+
result = shell(f"cd {DEMO_DIR}/ansys && {CMD_SEQ}")
|
|
66
|
+
assert result.exit_code == 0
|
|
67
|
+
|
|
64
68
|
def test_nextflow_image_montage(self):
|
|
65
69
|
result = shell(
|
|
66
70
|
f"cd {DEMO_DIR}/nextflow/image-montage && {NEXTFLOW} main.nf "
|
|
@@ -64,6 +64,10 @@ class TestDemoDryRuns:
|
|
|
64
64
|
result = shell(f"cd {DEMO_DIR}/montecarlo && {CMD_SEQ}")
|
|
65
65
|
assert result.exit_code == 0
|
|
66
66
|
|
|
67
|
+
def test_ansys(self):
|
|
68
|
+
result = shell(f"cd {DEMO_DIR}/ansys && {CMD_SEQ}")
|
|
69
|
+
assert result.exit_code == 0
|
|
70
|
+
|
|
67
71
|
# Tests run from outside the demo directories
|
|
68
72
|
def test_bash_out(self):
|
|
69
73
|
demo_name = "bash"
|
|
@@ -182,3 +186,12 @@ class TestDemoDryRuns:
|
|
|
182
186
|
f" {demo_name}/config.toml"
|
|
183
187
|
)
|
|
184
188
|
assert result.exit_code == 0
|
|
189
|
+
|
|
190
|
+
def test_ansys_out(self):
|
|
191
|
+
demo_name = "ansys"
|
|
192
|
+
result = shell(
|
|
193
|
+
f"cd {DEMO_DIR} && yd-provision -D -c {demo_name}/config.toml && yd-submit"
|
|
194
|
+
f" -D -c {demo_name}/config.toml && yd-instantiate -D -c"
|
|
195
|
+
f" {demo_name}/config.toml"
|
|
196
|
+
)
|
|
197
|
+
assert result.exit_code == 0
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "7.9.2"
|
|
@@ -124,7 +124,7 @@ def create_resources(
|
|
|
124
124
|
RN_STRING_ATTRIBUTE_DEFINITION,
|
|
125
125
|
RN_NUMERIC_ATTRIBUTE_DEFINITION,
|
|
126
126
|
]:
|
|
127
|
-
|
|
127
|
+
create_attribute_definition(resource, resource_type)
|
|
128
128
|
else:
|
|
129
129
|
print_error(f"Unknown resource type '{resource_type}'")
|
|
130
130
|
except Exception as e:
|
|
@@ -796,7 +796,7 @@ def _get_model_class(class_name: str):
|
|
|
796
796
|
return getattr(model, class_name)
|
|
797
797
|
|
|
798
798
|
|
|
799
|
-
def
|
|
799
|
+
def create_attribute_definition(resource: Dict, resource_type: str):
|
|
800
800
|
"""
|
|
801
801
|
Use the API to create/update user attribute definitions.
|
|
802
802
|
"""
|
|
@@ -812,21 +812,28 @@ def create_attribute_definition_via_api(resource: Dict, resource_type: str):
|
|
|
812
812
|
headers = {"Authorization": f"yd-key {CONFIG_COMMON.key}:{CONFIG_COMMON.secret}"}
|
|
813
813
|
if resource_type == RN_STRING_ATTRIBUTE_DEFINITION:
|
|
814
814
|
payload = {
|
|
815
|
+
# Required
|
|
815
816
|
"type": "co.yellowdog.platform.model.StringAttributeDefinition",
|
|
816
817
|
"name": name,
|
|
817
818
|
"title": title,
|
|
819
|
+
# Optional
|
|
818
820
|
"description": resource.get("description"),
|
|
819
821
|
"options": resource.get("options"),
|
|
820
822
|
}
|
|
821
823
|
else: # RN_NUMERIC_ATTRIBUTE_DEFINITION
|
|
822
824
|
payload = {
|
|
825
|
+
# Required
|
|
823
826
|
"type": "co.yellowdog.platform.model.NumericAttributeDefinition",
|
|
824
827
|
"name": name,
|
|
825
828
|
"title": title,
|
|
826
829
|
"defaultRankOrder": default_rank_order,
|
|
830
|
+
# Optional
|
|
827
831
|
"description": resource.get("description"),
|
|
828
832
|
"units": resource.get("units"),
|
|
833
|
+
# Note: Only one of 'range', 'options' can be supplied
|
|
834
|
+
# Allow the API to error-check
|
|
829
835
|
"range": resource.get("range"),
|
|
836
|
+
"options": resource.get("options"),
|
|
830
837
|
}
|
|
831
838
|
|
|
832
839
|
# Attempt attribute creation
|
|
@@ -45,18 +45,24 @@ def delete_object_paths(namespace: str, prefix: str, flat: bool):
|
|
|
45
45
|
f"prefix starting with '{prefix}'"
|
|
46
46
|
)
|
|
47
47
|
|
|
48
|
-
object_paths_to_delete:
|
|
48
|
+
object_paths_to_delete: List[ObjectPath] = (
|
|
49
49
|
CLIENT.object_store_client.get_namespace_object_paths(
|
|
50
50
|
ObjectPathsRequest(namespace=namespace, prefix=prefix, flat=flat)
|
|
51
51
|
)
|
|
52
52
|
)
|
|
53
53
|
|
|
54
|
-
|
|
54
|
+
# Check that the prefix actually matches!
|
|
55
|
+
object_paths_to_delete = [
|
|
56
|
+
object_path
|
|
57
|
+
for object_path in object_paths_to_delete
|
|
58
|
+
if object_path.name.startswith(prefix)
|
|
59
|
+
]
|
|
60
|
+
|
|
61
|
+
if len(object_paths_to_delete) == 0:
|
|
55
62
|
print_log("No matching Object Paths")
|
|
56
63
|
return
|
|
57
64
|
|
|
58
|
-
|
|
59
|
-
object_paths_to_delete = select(CLIENT, object_paths_to_delete)
|
|
65
|
+
object_paths_to_delete = select(CLIENT, object_paths_to_delete)
|
|
60
66
|
|
|
61
67
|
if len(object_paths_to_delete) > 0 and confirmed(
|
|
62
68
|
f"Delete {len(object_paths_to_delete)} Object Path(s)?"
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/load_config.py
RENAMED
|
@@ -150,6 +150,19 @@ def load_config_common() -> ConfigCommon:
|
|
|
150
150
|
name_tag = process_variable_substitutions(common_section[NAME_TAG])
|
|
151
151
|
add_substitutions_without_overwriting(subs={NAME_TAG: name_tag})
|
|
152
152
|
|
|
153
|
+
# Specify a certificates bundle directly by setting the requests
|
|
154
|
+
# environment variable; this will override the default certificates
|
|
155
|
+
certificates = process_variable_substitutions(
|
|
156
|
+
common_section.get(CERTIFICATES, None)
|
|
157
|
+
)
|
|
158
|
+
if certificates is not None:
|
|
159
|
+
certificates = abspath(certificates)
|
|
160
|
+
requests_ca_bundle = "REQUESTS_CA_BUNDLE"
|
|
161
|
+
print_log(
|
|
162
|
+
f"Setting environment variable '{requests_ca_bundle}' to '{certificates}'"
|
|
163
|
+
)
|
|
164
|
+
os.environ["REQUESTS_CA_BUNDLE"] = certificates
|
|
165
|
+
|
|
153
166
|
return ConfigCommon(
|
|
154
167
|
# Required
|
|
155
168
|
key=key,
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/property_names.py
RENAMED
|
@@ -5,6 +5,7 @@ Property names.
|
|
|
5
5
|
ADD_YD_ENV_VARS = "addYDEnvironmentVariables"
|
|
6
6
|
ALWAYS_UPLOAD = "alwaysUpload" # Bool
|
|
7
7
|
ARGS = "arguments" # List
|
|
8
|
+
CERTIFICATES = "certificates"
|
|
8
9
|
COMMON_SECTION = "common" # No value
|
|
9
10
|
COMPLETED_TASK_TTL = "completedTaskTtl" # Float
|
|
10
11
|
COMPUTE_REQUIREMENT_BATCH_SIZE = "computeRequirementBatchSize" # Integer
|
|
@@ -102,6 +103,7 @@ ALL_KEYS = [
|
|
|
102
103
|
ADD_YD_ENV_VARS,
|
|
103
104
|
ALWAYS_UPLOAD,
|
|
104
105
|
ARGS,
|
|
106
|
+
CERTIFICATES,
|
|
105
107
|
COMMON_SECTION,
|
|
106
108
|
COMPLETED_TASK_TTL,
|
|
107
109
|
COMPUTE_REQUIREMENT_BATCH_SIZE,
|
|
@@ -99,7 +99,7 @@ def remove_resources(resources: Optional[List[Dict]] = None):
|
|
|
99
99
|
RN_STRING_ATTRIBUTE_DEFINITION,
|
|
100
100
|
RN_NUMERIC_ATTRIBUTE_DEFINITION,
|
|
101
101
|
]:
|
|
102
|
-
|
|
102
|
+
remove_attribute_definition(resource)
|
|
103
103
|
else:
|
|
104
104
|
print_error(f"Unknown resource type '{resource_type}'")
|
|
105
105
|
except Exception as e:
|
|
@@ -415,9 +415,9 @@ def remove_resource_by_id(resource_id: str):
|
|
|
415
415
|
print_error(f"Unable to remove resource with ID {resource_id}: {e}")
|
|
416
416
|
|
|
417
417
|
|
|
418
|
-
def
|
|
418
|
+
def remove_attribute_definition(resource: Dict):
|
|
419
419
|
"""
|
|
420
|
-
Use the API to remove user
|
|
420
|
+
Use the API to remove user attribute definitions.
|
|
421
421
|
"""
|
|
422
422
|
try:
|
|
423
423
|
name = resource["name"]
|
|
@@ -411,7 +411,10 @@ def create_task_group(
|
|
|
411
411
|
if config_wr.task_type is not None and len(task_types) == 0:
|
|
412
412
|
task_types.append(config_wr.task_type)
|
|
413
413
|
if len(task_types) == 0:
|
|
414
|
-
raise Exception(
|
|
414
|
+
raise Exception(
|
|
415
|
+
f"No Task Type(s) specified in Task Group '{task_group_name}': "
|
|
416
|
+
"is a valid Work Requirement defined?"
|
|
417
|
+
)
|
|
415
418
|
|
|
416
419
|
vcpus_data: Optional[List[float]] = check_list(
|
|
417
420
|
task_group_data.get(VCPUS, wr_data.get(VCPUS, config_wr.vcpus))
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/upload_utils.py
RENAMED
|
@@ -10,7 +10,7 @@ from typing import Optional
|
|
|
10
10
|
from yellowdog_client import PlatformClient
|
|
11
11
|
from yellowdog_client.object_store.model import FileTransferStatus
|
|
12
12
|
|
|
13
|
-
from yd_commands.printing import
|
|
13
|
+
from yd_commands.printing import print_log
|
|
14
14
|
from yd_commands.settings import NAMESPACE_PREFIX_SEPARATOR
|
|
15
15
|
from yd_commands.utils import link
|
|
16
16
|
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "7.9.1"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/tests/test_create_remove.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.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.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/check_imports.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/cloudwizard.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/cloudwizard_aws.py
RENAMED
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/cloudwizard_azure.py
RENAMED
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/cloudwizard_gcp.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/compact_json.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/config_types.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/follow_utils.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/format_json.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/instantiate.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/interactive.py
RENAMED
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/jsonnet2json.py
RENAMED
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/load_resources.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/object_utilities.py
RENAMED
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/provision.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/provision_utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/start_hold_common.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/submit_utils.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/terminate.py
RENAMED
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/type_check.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{yellowdog_python_examples-7.9.1 → yellowdog_python_examples-7.9.2}/yd_commands/variables.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
|