aind-data-transfer-service 1.13.0__tar.gz → 1.14.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.
- {aind_data_transfer_service-1.13.0/src/aind_data_transfer_service.egg-info → aind_data_transfer_service-1.14.0}/PKG-INFO +1 -1
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/source/UserGuideV2.rst +6 -12
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service/__init__.py +1 -1
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service/models/core.py +1 -1
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0/src/aind_data_transfer_service.egg-info}/PKG-INFO +1 -1
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/legacy_sample.csv +4 -4
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/legacy_sample2.csv +2 -2
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/new_sample.csv +2 -2
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/sample_empty_rows_2.csv +2 -2
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_core.py +11 -3
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_csv_handler.py +2 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_server.py +2 -2
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/.flake8 +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/.github/ISSUE_TEMPLATE/user-story.md +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/.github/workflows/add_issue_to_project_board.yml +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/.github/workflows/publish_dev.yml +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/.github/workflows/publish_main.yml +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/.github/workflows/run_dev_tests.yml +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/.github/workflows/run_main_tests.yml +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/.gitignore +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/.readthedocs.yaml +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/CODE_OF_CONDUCT.md +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/Dockerfile +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/LICENSE +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/README.md +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/Makefile +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/diagrams/system_container.png +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/diagrams/system_container.puml +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/diagrams/system_context.png +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/diagrams/system_context.puml +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/examples/basic_upload.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/examples/behavior_videos_compression.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/examples/custom_codeocean_pipeline_settings.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/examples/custom_metadata_mapper_settings.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/examples/example1.csv +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/examples/hcr_example.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/examples/skip_s3_check.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/examples/upload_with_custom_slurm_settings.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/examples/upload_with_notification.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/make.bat +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/source/Contributing.rst +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/source/UserGuideV1.rst +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/source/_static/dark-logo.svg +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/source/_static/favicon.ico +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/source/_static/light-logo.svg +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/source/aind_data_transfer_service.configs.rst +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/source/aind_data_transfer_service.hpc.rst +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/source/aind_data_transfer_service.models.rst +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/source/aind_data_transfer_service.rst +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/source/conf.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/source/index.rst +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/source/modules.rst +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/pyproject.toml +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/setup.cfg +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/setup.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service/configs/__init__.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service/configs/csv_handler.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service/configs/job_configs.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service/configs/job_upload_template.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service/hpc/__init__.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service/hpc/client.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service/hpc/models.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service/log_handler.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service/models/__init__.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service/models/internal.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service/server.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service/templates/index.html +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service/templates/job_params.html +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service/templates/job_status.html +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service/templates/job_tasks_table.html +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service/templates/task_logs.html +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service.egg-info/SOURCES.txt +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service.egg-info/dependency_links.txt +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service.egg-info/requires.txt +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/src/aind_data_transfer_service.egg-info/top_level.txt +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/__init__.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/airflow_dag_run_response.json +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/airflow_dag_runs_response.json +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/airflow_task_instances_response.json +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/describe_parameters_response.json +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/get_parameter_response.json +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/job_upload_template.xlsx +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/sample.csv +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/sample.xlsx +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/sample_alt_modality_case.csv +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/sample_empty_rows.csv +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/sample_empty_rows.xlsx +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/sample_invalid_ext.txt +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/sample_malformed.csv +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/sample_malformed.xlsx +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/sample_malformed_2.csv +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_configs.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_hpc_client.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_hpc_models.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_internal.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_job_upload_template.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_log_handler.py +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_server/Dockerfile +0 -0
- {aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_server/db.json +0 -0
{aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/source/UserGuideV2.rst
RENAMED
|
@@ -45,13 +45,7 @@ job_types.
|
|
|
45
45
|
container here.
|
|
46
46
|
- gather_final_metadata: Automatically generates a processing.json and
|
|
47
47
|
metadata.nd.json file.
|
|
48
|
-
-
|
|
49
|
-
the private data bucket if the metadata is invalid and the s3_bucket is
|
|
50
|
-
set to default. If the metadata is valid and the s3_bucket is set to
|
|
51
|
-
default, then the data is uploaded to the open bucket. Hence, another
|
|
52
|
-
check is added once the final s3_location is resolved. We plan to change
|
|
53
|
-
this behavior soon to just raise an error if the metadata is incomplete
|
|
54
|
-
and upload to the open bucket by default.
|
|
48
|
+
- check_metadata_files: Checks that the metadata files exist and are json.
|
|
55
49
|
- upload_data_to_s3: Uploads the data to S3.
|
|
56
50
|
- register_data_asset_to_codeocean: Registers the data asset to Code Ocean.
|
|
57
51
|
- update_docdb_record: Updates the DocDB record with the Code Ocean Data
|
|
@@ -118,6 +112,11 @@ portal can accessed at
|
|
|
118
112
|
|
|
119
113
|
- Required fields
|
|
120
114
|
|
|
115
|
+
- job_type: We store pre-compiled default configurations in AWS Parameter
|
|
116
|
+
Store (e.g. modality transformation settings, Code Ocean pipeline
|
|
117
|
+
settings). This field determines which preset to use when
|
|
118
|
+
running the upload job. A list of job types can be seen by clicking the
|
|
119
|
+
``Job Parameters`` link.
|
|
121
120
|
- project_name: A list of project names can be seen by clicking the
|
|
122
121
|
``Project Names`` link
|
|
123
122
|
- subject_id: The LabTracks ID of the mouse
|
|
@@ -141,11 +140,6 @@ portal can accessed at
|
|
|
141
140
|
|
|
142
141
|
- Optional fields
|
|
143
142
|
|
|
144
|
-
- job_type: We store pre-compiled default configurations in AWS Parameter
|
|
145
|
-
Store (e.g. modality transformation settings, Code Ocean pipeline
|
|
146
|
-
settings). If you set this field, then we will use this preset when
|
|
147
|
-
running the upload job. A list of job types can be seen by clicking the
|
|
148
|
-
``Job Parameters`` link.
|
|
149
143
|
- metadata_dir: If metadata files are pre-compiled and saved to a
|
|
150
144
|
directory, you can add the Posix style path to the directory under
|
|
151
145
|
this column
|
|
@@ -129,7 +129,7 @@ class UploadJobConfigsV2(BaseSettings):
|
|
|
129
129
|
model_config = ConfigDict(use_enum_values=True, extra="ignore")
|
|
130
130
|
|
|
131
131
|
job_type: str = Field(
|
|
132
|
-
|
|
132
|
+
...,
|
|
133
133
|
description=(
|
|
134
134
|
"Job type for the upload job. Tasks will be run based on the "
|
|
135
135
|
"job_type unless otherwise specified in task_overrides."
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
project_name, modality0, modality0.source, modality1, modality1.source, s3-bucket, subject-id, platform, acq-datetime, force_cloud_sync, modality0.process_capsule_id
|
|
2
|
-
Ephys Platform, ecephys, dir/data_set_1, ,, private, 123454, ecephys, 2020-10-10 14:10:10, True
|
|
3
|
-
Behavior Platform, behavior-videos, dir/data_set_2, MRI, dir/data_set_3, open, 123456, behavior, 10/13/2020 1:10:10 PM,,1f999652-00a0-4c4b-99b5-64c2985ad070
|
|
4
|
-
Behavior Platform, behavior-videos, dir/data_set_2, behavior-videos, dir/data_set_3, default, 123456, behavior, 10/13/2020 1:10:10 PM
|
|
1
|
+
project_name, modality0, modality0.source, modality1, modality1.source, s3-bucket, subject-id, platform, acq-datetime, force_cloud_sync, modality0.process_capsule_id, job_type
|
|
2
|
+
Ephys Platform, ecephys, dir/data_set_1, ,, private, 123454, ecephys, 2020-10-10 14:10:10, True,, default
|
|
3
|
+
Behavior Platform, behavior-videos, dir/data_set_2, MRI, dir/data_set_3, open, 123456, behavior, 10/13/2020 1:10:10 PM,,1f999652-00a0-4c4b-99b5-64c2985ad070, default
|
|
4
|
+
Behavior Platform, behavior-videos, dir/data_set_2, behavior-videos, dir/data_set_3, default, 123456, behavior, 10/13/2020 1:10:10 PM,,, default
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
project_name, modality0, modality0.source, modality1, modality1.source, s3-bucket, subject-id, platform, acq-datetime, modality0.pipeline_id
|
|
2
|
-
Behavior Platform, behavior-videos, dir/data_set_2, MRI, dir/data_set_3, open, 123456, behavior, 10/13/2020 1:10:10 PM,1f999652-00a0-4c4b-99b5-64c2985ad070
|
|
1
|
+
project_name, modality0, modality0.source, modality1, modality1.source, s3-bucket, subject-id, platform, acq-datetime, modality0.pipeline_id, job_type
|
|
2
|
+
Behavior Platform, behavior-videos, dir/data_set_2, MRI, dir/data_set_3, open, 123456, behavior, 10/13/2020 1:10:10 PM,1f999652-00a0-4c4b-99b5-64c2985ad070, default
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
project_name, modality0, modality0.input_source, modality1, modality1.input_source, s3-bucket, subject-id, platform, acq-datetime, job_type, metadata_dir
|
|
2
|
-
Ephys Platform, ecephys, dir/data_set_1, , , default,123454, ecephys, 2020-10-10 14:10:10, , dir/metadata
|
|
2
|
+
Ephys Platform, ecephys, dir/data_set_1, , , default,123454, ecephys, 2020-10-10 14:10:10, ecephys, dir/metadata
|
|
3
3
|
Behavior Platform, behavior-videos, dir/data_set_2, MRI, dir/data_set_3, open,123456, behavior, 2020-10-13T13:10:10, custom,
|
|
4
|
-
Behavior Platform, behavior-videos, dir/data_set_2, , , ,123456, behavior, 2020-10-13 13:10:10, ,
|
|
4
|
+
Behavior Platform, behavior-videos, dir/data_set_2, , , ,123456, behavior, 2020-10-13 13:10:10, default,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
project_name, modality0, modality0.input_source, modality1, modality1.input_source, s3-bucket, subject-id, platform, acq-datetime, job_type, metadata_dir
|
|
2
|
-
Ephys Platform, ecephys, dir/data_set_1, , , default,123454, ecephys, 2020-10-10 14:10:10, , dir/metadata
|
|
2
|
+
Ephys Platform, ecephys, dir/data_set_1, , , default,123454, ecephys, 2020-10-10 14:10:10, ecephys, dir/metadata
|
|
3
3
|
Behavior Platform, behavior-videos, dir/data_set_2, MRI, dir/data_set_3, open,123456, behavior, 2020-10-13T13:10:10, custom,
|
|
4
|
-
Behavior Platform, behavior-videos, dir/data_set_2, , , ,123456, behavior, 2020-10-13 13:10:10, ,
|
|
4
|
+
Behavior Platform, behavior-videos, dir/data_set_2, , , ,123456, behavior, 2020-10-13 13:10:10, default,
|
|
5
5
|
,,,,,,,,,,
|
|
6
6
|
,,,,,,,,,,
|
|
7
7
|
,,,,,,,,,,
|
|
@@ -86,6 +86,7 @@ class TestUploadJobConfigsV2(unittest.TestCase):
|
|
|
86
86
|
def setUpClass(cls) -> None:
|
|
87
87
|
"""Set up test class"""
|
|
88
88
|
example_configs = UploadJobConfigsV2(
|
|
89
|
+
job_type="default",
|
|
89
90
|
project_name="Behavior Platform",
|
|
90
91
|
platform=Platform.BEHAVIOR,
|
|
91
92
|
modalities=[Modality.BEHAVIOR_VIDEOS],
|
|
@@ -102,7 +103,7 @@ class TestUploadJobConfigsV2(unittest.TestCase):
|
|
|
102
103
|
|
|
103
104
|
cls.example_configs = example_configs
|
|
104
105
|
cls.base_configs = example_configs.model_dump(
|
|
105
|
-
exclude={"
|
|
106
|
+
exclude={"s3_bucket": True, "s3_prefix": True}
|
|
106
107
|
)
|
|
107
108
|
|
|
108
109
|
def test_s3_prefix(self):
|
|
@@ -118,21 +119,27 @@ class TestUploadJobConfigsV2(unittest.TestCase):
|
|
|
118
119
|
|
|
119
120
|
def test_job_type_validation(self):
|
|
120
121
|
"""Test job_type is validated against list context provided."""
|
|
122
|
+
base_configs = self.example_configs.model_dump(
|
|
123
|
+
exclude={"job_type": True, "s3_bucket": True, "s3_prefix": True}
|
|
124
|
+
)
|
|
121
125
|
with validation_context({"job_types": ["default", "ecephys"]}):
|
|
122
126
|
round_trip_model = UploadJobConfigsV2(
|
|
123
127
|
job_type="ecephys",
|
|
124
|
-
**
|
|
128
|
+
**base_configs,
|
|
125
129
|
)
|
|
126
130
|
self.assertEqual("ecephys", round_trip_model.job_type)
|
|
127
131
|
|
|
128
132
|
def test_job_type_validation_fail(self):
|
|
129
133
|
"""Test job_type is validated against list context provided and
|
|
130
134
|
fails validation."""
|
|
135
|
+
base_configs = self.example_configs.model_dump(
|
|
136
|
+
exclude={"job_type": True, "s3_bucket": True, "s3_prefix": True}
|
|
137
|
+
)
|
|
131
138
|
with self.assertRaises(ValidationError) as err:
|
|
132
139
|
with validation_context({"job_types": ["default", "ecephys"]}):
|
|
133
140
|
UploadJobConfigsV2(
|
|
134
141
|
job_type="random_string",
|
|
135
|
-
**
|
|
142
|
+
**base_configs,
|
|
136
143
|
)
|
|
137
144
|
err_msg = json.loads(err.exception.json())[0]["msg"]
|
|
138
145
|
self.assertEqual(
|
|
@@ -244,6 +251,7 @@ class TestSubmitJobRequestV2(unittest.TestCase):
|
|
|
244
251
|
def setUpClass(cls) -> None:
|
|
245
252
|
"""Set up example configs to be used in tests"""
|
|
246
253
|
example_upload_config = UploadJobConfigsV2(
|
|
254
|
+
job_type="default",
|
|
247
255
|
project_name="Behavior Platform",
|
|
248
256
|
platform=Platform.BEHAVIOR,
|
|
249
257
|
modalities=[
|
{aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_csv_handler.py
RENAMED
|
@@ -48,6 +48,7 @@ class TestCsvHandler(unittest.TestCase):
|
|
|
48
48
|
},
|
|
49
49
|
subject_id="123454",
|
|
50
50
|
acq_datetime=datetime(2020, 10, 10, 14, 10, 10),
|
|
51
|
+
job_type="ecephys",
|
|
51
52
|
),
|
|
52
53
|
UploadJobConfigsV2(
|
|
53
54
|
project_name="Behavior Platform",
|
|
@@ -81,6 +82,7 @@ class TestCsvHandler(unittest.TestCase):
|
|
|
81
82
|
},
|
|
82
83
|
subject_id="123456",
|
|
83
84
|
acq_datetime=datetime(2020, 10, 13, 13, 10, 10),
|
|
85
|
+
job_type="default",
|
|
84
86
|
),
|
|
85
87
|
]
|
|
86
88
|
self.assertEqual(expected_jobs, jobs)
|
{aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_server.py
RENAMED
|
@@ -1593,7 +1593,7 @@ class TestServer(unittest.TestCase):
|
|
|
1593
1593
|
"Ephys Platform",
|
|
1594
1594
|
"Behavior Platform",
|
|
1595
1595
|
]
|
|
1596
|
-
mock_get_job_types.return_value = ["default", "custom"]
|
|
1596
|
+
mock_get_job_types.return_value = ["default", "ecephys", "custom"]
|
|
1597
1597
|
mock_get_airflow_jobs.return_value = (0, list())
|
|
1598
1598
|
with TestClient(app) as client:
|
|
1599
1599
|
with open(NEW_SAMPLE_CSV, "rb") as f:
|
|
@@ -1665,7 +1665,7 @@ class TestServer(unittest.TestCase):
|
|
|
1665
1665
|
"Ephys Platform",
|
|
1666
1666
|
"Behavior Platform",
|
|
1667
1667
|
]
|
|
1668
|
-
mock_get_job_types.return_value = ["default", "custom"]
|
|
1668
|
+
mock_get_job_types.return_value = ["default", "ecephys", "custom"]
|
|
1669
1669
|
mock_get_airflow_jobs.return_value = (0, list())
|
|
1670
1670
|
with TestClient(app) as client:
|
|
1671
1671
|
with open(SAMPLE_CSV_EMPTY_ROWS_2, "rb") as f:
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/examples/example1.csv
RENAMED
|
File without changes
|
{aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/examples/hcr_example.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/source/Contributing.rst
RENAMED
|
File without changes
|
{aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/source/UserGuideV1.rst
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
|
{aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/source/index.rst
RENAMED
|
File without changes
|
{aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/docs/source/modules.rst
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/sample.csv
RENAMED
|
File without changes
|
{aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/resources/sample.xlsx
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
|
{aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_configs.py
RENAMED
|
File without changes
|
{aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_hpc_client.py
RENAMED
|
File without changes
|
{aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_hpc_models.py
RENAMED
|
File without changes
|
{aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_internal.py
RENAMED
|
File without changes
|
|
File without changes
|
{aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_log_handler.py
RENAMED
|
File without changes
|
{aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_server/Dockerfile
RENAMED
|
File without changes
|
{aind_data_transfer_service-1.13.0 → aind_data_transfer_service-1.14.0}/tests/test_server/db.json
RENAMED
|
File without changes
|