Skip to content

Commit f534160

Browse files
committed
too many folders created
test with new 'test space' with fewer options first
1 parent a5dd8ea commit f534160

File tree

1 file changed

+23
-15
lines changed

1 file changed

+23
-15
lines changed

scripts/migration/migrate.py

Lines changed: 23 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -188,12 +188,12 @@ def get_clowder_v1_user_collections_top_level(headers, user_v1):
188188
top_level_collections.append(col)
189189
return top_level_collections
190190

191-
def process_collection_descendants(collection, headers, v2_parent_id, v2_parent_type, v2_dataset_id):
192-
child_collections_endpoint = f"{CLOWDER_V1}/api/{collection['id']}/getChildCollections"
191+
def process_collection_descendants(collection, headers_v1,headers_v2, v2_parent_id, v2_parent_type, v2_dataset_id):
192+
child_collections_endpoint = f"{CLOWDER_V1}/api/collections/{collection['id']}/getChildCollections"
193193
datasets_endpoint = f"{CLOWDER_V1}/api/collections/{collection['id']}/datasets"
194194

195-
child_col_response = requests.get(child_collections_endpoint, headers=headers)
196-
dataset_response = requests.get(datasets_endpoint, headers=headers)
195+
child_col_response = requests.get(child_collections_endpoint, headers=headers_v1)
196+
dataset_response = requests.get(datasets_endpoint, headers=headers_v1)
197197
child_col_json = child_col_response.json()
198198
dataset_json = dataset_response.json()
199199

@@ -202,30 +202,34 @@ def process_collection_descendants(collection, headers, v2_parent_id, v2_parent_
202202
if v2_parent_type == "dataset":
203203
print(f"Add folder to the dataset")
204204
folder_name = child["name"]
205-
new_folder = create_folder_if_not_exists_or_get(folder_name, None, v2_dataset_id, headers)
206-
process_collection_descendants(child, headers, new_folder['id'], 'folder', v2_dataset_id )
205+
new_folder = create_folder_if_not_exists_or_get(folder_name, None, v2_dataset_id, headers_v2)
206+
process_collection_descendants(child, headers_v1,headers_v2, new_folder['id'], 'folder', v2_dataset_id )
207207
else:
208208
print(f"parent was a folder")
209209
print(f"Add folder to the dataset")
210210
folder_name = child["name"]
211-
new_folder = create_folder_if_not_exists_or_get(folder_name, v2_parent_id, v2_dataset_id, headers)
212-
process_collection_descendants(child, headers, new_folder['id'], 'folder', v2_dataset_id)
211+
new_folder = create_folder_if_not_exists_or_get(folder_name, v2_parent_id, v2_dataset_id, headers_v2)
212+
process_collection_descendants(child, headers_v1, headers_v2, new_folder['id'], 'folder', v2_dataset_id)
213213

214214
for dataset in dataset_json:
215215
if v2_parent_type == "dataset":
216216
print(f"Parent is a dataset")
217-
new_folder = create_folder_if_not_exists_or_get(dataset["name"], v2_parent_id, v2_dataset_id, headers)
217+
new_folder = create_folder_if_not_exists_or_get(dataset["name"], v2_parent_id, v2_dataset_id, headers_v2)
218218
print(f"Now we need to add the sub folders of this dataset")
219219
else:
220220
print(f"Parent is a folder")
221-
new_folder = create_folder_if_not_exists_or_get(dataset["name"], v2_parent_id, v2_dataset_id, headers)
221+
new_folder = create_folder_if_not_exists_or_get(dataset["name"], v2_parent_id, v2_dataset_id, headers_v2)
222222

223223

224-
def process_dataset_folders(dataset, headers, parent_type, parent_id):
225-
pass
224+
def process_dataset_folders(dataset, headers_v1, headers_v2, parent_type, parent_id):
225+
folder_endpoint = f"{CLOWDER_V1}/api/datasets/{dataset['id']}/folders"
226+
folder_response = requests.get(folder_endpoint, headers=headers_v1)
227+
folder_json = folder_response.json()
228+
print(f"Got dataset folders")
226229

227230

228-
def create_v2_dataset_from_collection(collection, user_v1, headers):
231+
232+
def create_v2_dataset_from_collection(collection, user_v1, headers_v1, headers_v2):
229233
# create the dataset
230234
collection_name = collection["name"]
231235
collection_description = collection["description"]
@@ -237,13 +241,13 @@ def create_v2_dataset_from_collection(collection, user_v1, headers):
237241
"description": collection_description
238242
}
239243
response = requests.post(
240-
dataset_in_v2_endpoint, headers=headers, json=dataset_example
244+
dataset_in_v2_endpoint, headers=headers_v2, json=dataset_example
241245
)
242246

243247
new_dataset_json = response.json()
244248
v2_dataset_id = new_dataset_json["id"]
245249

246-
process_collection_descendants(collection, headers, new_dataset_json["id"], "dataset", v2_dataset_id)
250+
process_collection_descendants(collection, headers_v1, headers_v2, new_dataset_json["id"], "dataset", v2_dataset_id)
247251

248252
return response.json()["id"]
249253

@@ -870,6 +874,10 @@ def process_user_and_resources_collections(user_v1, USER_MAP, DATASET_MAP, COLLE
870874

871875
print(f"Got {len(user_v1_collections)} user collections in the top level")
872876

877+
for top_level_col in user_v1_collections:
878+
dataset_v2 = create_v2_dataset_from_collection(top_level_col, user_v1, clowder_headers_v1, user_headers_v2)
879+
print('did this')
880+
873881
for dataset in user_v1_datasets:
874882
print(f"Creating dataset in v2: {dataset['id']} - {dataset['name']}")
875883
# TODO: check if dataset is in toml_exclude_dataset_id

0 commit comments

Comments
 (0)