hid_data_transfer_lib 0.3.9__tar.gz → 0.3.11__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.
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/PKG-INFO +4 -3
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/README.md +1 -1
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/hid_data_transfer_lib/hid_dt_lib.py +79 -78
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/hid_data_transfer_lib/nifi/nifi_client.py +693 -64
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/hid_data_transfer_lib/nifi/nifi_rest.py +187 -16
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/hid_data_transfer_lib/util/util.py +22 -8
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/pyproject.toml +1 -1
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/hid_data_transfer_lib/__init__.py +0 -0
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/hid_data_transfer_lib/conf/__init__.py +0 -0
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/hid_data_transfer_lib/conf/hid_dt.cfg +0 -0
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/hid_data_transfer_lib/conf/hid_dt_configuration.py +0 -0
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/hid_data_transfer_lib/conf/hid_dt_local.cfg +0 -0
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/hid_data_transfer_lib/conf/hid_dt_psnc.cfg +0 -0
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/hid_data_transfer_lib/exceptions/__init__.py +0 -0
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/hid_data_transfer_lib/exceptions/hid_dt_exceptions.py +0 -0
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/hid_data_transfer_lib/keycloak/__init__.py +0 -0
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/hid_data_transfer_lib/keycloak/keycloak_rest.py +0 -0
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/hid_data_transfer_lib/nifi/__init__.py +0 -0
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/hid_data_transfer_lib/py.typed +0 -0
- {hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/hid_data_transfer_lib/util/__init__.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: hid_data_transfer_lib
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.11
|
|
4
4
|
Summary: HiDALGO Data Transfer library provides methods to transfer data between different data providers and consumers using NIFI pipelines
|
|
5
5
|
License: APL-2.0
|
|
6
6
|
Author: Jesús Gorroñogoitia
|
|
@@ -11,6 +11,7 @@ Classifier: Programming Language :: Python :: 3
|
|
|
11
11
|
Classifier: Programming Language :: Python :: 3.11
|
|
12
12
|
Classifier: Programming Language :: Python :: 3.12
|
|
13
13
|
Classifier: Programming Language :: Python :: 3.13
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
14
15
|
Requires-Dist: paramiko (>=3.3.1)
|
|
15
16
|
Requires-Dist: requests (>=2.31.0)
|
|
16
17
|
Requires-Dist: setuptools (>=79.0.0,<80.0.0)
|
|
@@ -50,7 +51,7 @@ The Data Transfer Library sends requests to NIFI through its REST API.
|
|
|
50
51
|
To use the Data Transfer library, it is required the following requirements:
|
|
51
52
|
- **Python3** execution environment
|
|
52
53
|
- **Poetry** python package management tool (optional)
|
|
53
|
-
- **NIFI** instance, with a NIFI server SSH account (for keys transfer)
|
|
54
|
+
- **NIFI** instance, with a NIFI 2.X server SSH account (for keys transfer). Latest NIFI supported version: 2.8
|
|
54
55
|
- **Keycloak** instance, with a KEYCLOAK user's account
|
|
55
56
|
- **HDFS** instance, with an user's Kerberos principal account
|
|
56
57
|
- **CKAN** instance, with an user APIKey
|
|
@@ -32,7 +32,7 @@ The Data Transfer Library sends requests to NIFI through its REST API.
|
|
|
32
32
|
To use the Data Transfer library, it is required the following requirements:
|
|
33
33
|
- **Python3** execution environment
|
|
34
34
|
- **Poetry** python package management tool (optional)
|
|
35
|
-
- **NIFI** instance, with a NIFI server SSH account (for keys transfer)
|
|
35
|
+
- **NIFI** instance, with a NIFI 2.X server SSH account (for keys transfer). Latest NIFI supported version: 2.8
|
|
36
36
|
- **Keycloak** instance, with a KEYCLOAK user's account
|
|
37
37
|
- **HDFS** instance, with an user's Kerberos principal account
|
|
38
38
|
- **CKAN** instance, with an user APIKey
|
{hid_data_transfer_lib-0.3.9 → hid_data_transfer_lib-0.3.11}/hid_data_transfer_lib/hid_dt_lib.py
RENAMED
|
@@ -34,7 +34,6 @@ from hid_data_transfer_lib.nifi.nifi_client import (
|
|
|
34
34
|
NIFIClient, ExecutionType, AccountingInfo
|
|
35
35
|
)
|
|
36
36
|
|
|
37
|
-
KERBEROS_PRINCIPAL = "kerberos.principal"
|
|
38
37
|
HDFS_DATA_FOLDER = "hdfs.data_folder"
|
|
39
38
|
HDFS_FILENAME = "hdfs.filename"
|
|
40
39
|
HPC_TARGET_FOLDER = "hpc.target_folder"
|
|
@@ -98,7 +97,7 @@ class HIDDataTransfer:
|
|
|
98
97
|
else ckan_resource
|
|
99
98
|
else:
|
|
100
99
|
ckan_resource = (
|
|
101
|
-
args.data_source.replace("/", "_")
|
|
100
|
+
args.data_source.replace("/", "_")[1:]
|
|
102
101
|
if not args.data_source.endswith("/")
|
|
103
102
|
else args.data_source[:-1].replace("/", "_")
|
|
104
103
|
)
|
|
@@ -158,9 +157,13 @@ class HIDDataTransfer:
|
|
|
158
157
|
hpc_secret_key=hpc_secret_key_path,
|
|
159
158
|
data_source=data_source,
|
|
160
159
|
data_target=data_target,
|
|
160
|
+
recursive=recursive,
|
|
161
|
+
)
|
|
162
|
+
|
|
163
|
+
processors_with_kerberos = ["ListHDFS", "FetchHDFS"]
|
|
164
|
+
kerberos_account = SimpleNamespace(
|
|
161
165
|
kerberos_principal=kerberos_principal,
|
|
162
166
|
kerberos_password=kerberos_password,
|
|
163
|
-
recursive=recursive,
|
|
164
167
|
)
|
|
165
168
|
|
|
166
169
|
self.__logger.info(
|
|
@@ -175,7 +178,7 @@ class HIDDataTransfer:
|
|
|
175
178
|
"/".join(args.data_source.split("/")[:-1])
|
|
176
179
|
arguments[HDFS_FILENAME] = \
|
|
177
180
|
self.process_wildcards(args.data_source.split("/")[-1])
|
|
178
|
-
|
|
181
|
+
|
|
179
182
|
arguments[RECURSIVE] = args.recursive
|
|
180
183
|
|
|
181
184
|
execution_type = {
|
|
@@ -197,14 +200,6 @@ class HIDDataTransfer:
|
|
|
197
200
|
args
|
|
198
201
|
)
|
|
199
202
|
|
|
200
|
-
processors_with_hdfs_sensitive_parameters = \
|
|
201
|
-
["ListHDFS", "FetchHDFS"]
|
|
202
|
-
sensitive_parameters.update(
|
|
203
|
-
self.__nifi_client.set_sensitive_hdfs_parameters(
|
|
204
|
-
processors_with_hdfs_sensitive_parameters, args
|
|
205
|
-
)
|
|
206
|
-
)
|
|
207
|
-
|
|
208
203
|
if not args.hpc_secret_key and not args.hpc_password:
|
|
209
204
|
raise HidDataTransferException(HPC_ACCOUNT_MSG)
|
|
210
205
|
|
|
@@ -217,7 +212,7 @@ class HIDDataTransfer:
|
|
|
217
212
|
"FetchHDFS": concurrent_tasks,
|
|
218
213
|
}
|
|
219
214
|
|
|
220
|
-
return self.__nifi_client.
|
|
215
|
+
return self.__nifi_client.run_process_group_opt(
|
|
221
216
|
"hdfs2hpc",
|
|
222
217
|
execution_type,
|
|
223
218
|
arguments,
|
|
@@ -226,6 +221,9 @@ class HIDDataTransfer:
|
|
|
226
221
|
keycloak_token=self.__keycloak_token,
|
|
227
222
|
accounting_target="PutSFTP",
|
|
228
223
|
concurrent_tasks=concurrent_tasks_dict,
|
|
224
|
+
ignore_bulletins_in_processors=["PutSFTP"],
|
|
225
|
+
processors_with_kerberos=processors_with_kerberos,
|
|
226
|
+
kerberos_account=kerberos_account,
|
|
229
227
|
)
|
|
230
228
|
|
|
231
229
|
except Exception as ex:
|
|
@@ -386,6 +384,12 @@ class HIDDataTransfer:
|
|
|
386
384
|
kerberos_password=kerberos_password,
|
|
387
385
|
)
|
|
388
386
|
|
|
387
|
+
processors_with_kerberos = ["ListHDFS", "FetchHDFS"]
|
|
388
|
+
kerberos_account = SimpleNamespace(
|
|
389
|
+
kerberos_principal=kerberos_principal,
|
|
390
|
+
kerberos_password=kerberos_password,
|
|
391
|
+
)
|
|
392
|
+
|
|
389
393
|
self.__logger.info(
|
|
390
394
|
"executing hdfs2hpc_2fa command with args: %s",
|
|
391
395
|
self.__nifi_client.format_args_to_string(args),
|
|
@@ -398,7 +402,6 @@ class HIDDataTransfer:
|
|
|
398
402
|
"/".join(args.data_source.split("/")[:-1])
|
|
399
403
|
arguments[HDFS_FILENAME] = \
|
|
400
404
|
self.process_wildcards(args.data_source.split("/")[-1])
|
|
401
|
-
arguments[KERBEROS_PRINCIPAL] = args.kerberos_principal
|
|
402
405
|
|
|
403
406
|
# set local.data_folder to keep dataset retrieved from HDFS
|
|
404
407
|
__uuid = uuid.uuid4()
|
|
@@ -421,16 +424,6 @@ class HIDDataTransfer:
|
|
|
421
424
|
],
|
|
422
425
|
}
|
|
423
426
|
|
|
424
|
-
sensitive_parameters = {}
|
|
425
|
-
|
|
426
|
-
processors_with_hdfs_sensitive_parameters = \
|
|
427
|
-
["ListHDFS", "FetchHDFS"]
|
|
428
|
-
sensitive_parameters.update(
|
|
429
|
-
self.__nifi_client.set_sensitive_hdfs_parameters(
|
|
430
|
-
processors_with_hdfs_sensitive_parameters, args
|
|
431
|
-
)
|
|
432
|
-
)
|
|
433
|
-
|
|
434
427
|
if not args.hpc_secret_key:
|
|
435
428
|
raise HidDataTransferException(HPC_ACCOUNT_MSG)
|
|
436
429
|
|
|
@@ -449,10 +442,12 @@ class HIDDataTransfer:
|
|
|
449
442
|
execution_type,
|
|
450
443
|
arguments,
|
|
451
444
|
keys_arguments=keys_arguments,
|
|
452
|
-
sensitive_parameters=
|
|
445
|
+
sensitive_parameters=None,
|
|
453
446
|
keycloak_token=self.__keycloak_token,
|
|
454
447
|
accounting_target="PutFile",
|
|
455
448
|
concurrent_tasks=concurrent_tasks_dict,
|
|
449
|
+
processors_with_kerberos=processors_with_kerberos,
|
|
450
|
+
kerberos_account=kerberos_account,
|
|
456
451
|
)
|
|
457
452
|
process_ids.append(process_id)
|
|
458
453
|
|
|
@@ -461,7 +456,7 @@ class HIDDataTransfer:
|
|
|
461
456
|
execution_type,
|
|
462
457
|
arguments,
|
|
463
458
|
keys_arguments=keys_arguments,
|
|
464
|
-
sensitive_parameters=
|
|
459
|
+
sensitive_parameters=None,
|
|
465
460
|
keycloak_token=self.__keycloak_token,
|
|
466
461
|
processor_with_2fa="SftpTransferToHPCWithVPNCode",
|
|
467
462
|
callback_2fa=callback_2fa,
|
|
@@ -535,6 +530,12 @@ class HIDDataTransfer:
|
|
|
535
530
|
recursive=recursive,
|
|
536
531
|
)
|
|
537
532
|
|
|
533
|
+
processors_with_kerberos = ["PutHDFS"]
|
|
534
|
+
kerberos_account = SimpleNamespace(
|
|
535
|
+
kerberos_principal=kerberos_principal,
|
|
536
|
+
kerberos_password=kerberos_password,
|
|
537
|
+
)
|
|
538
|
+
|
|
538
539
|
self.__logger.info(
|
|
539
540
|
"executing hpc2hdfs command with args: %s",
|
|
540
541
|
self.__nifi_client.format_args_to_string(args),
|
|
@@ -548,7 +549,6 @@ class HIDDataTransfer:
|
|
|
548
549
|
: args.data_source.rfind("/")
|
|
549
550
|
]
|
|
550
551
|
arguments[HDFS_DATA_FOLDER] = args.data_target
|
|
551
|
-
arguments[KERBEROS_PRINCIPAL] = args.kerberos_principal
|
|
552
552
|
arguments[RECURSIVE] = args.recursive
|
|
553
553
|
|
|
554
554
|
execution_type = {
|
|
@@ -571,14 +571,6 @@ class HIDDataTransfer:
|
|
|
571
571
|
processors_with_hpc_sensitive_parameters, args
|
|
572
572
|
)
|
|
573
573
|
|
|
574
|
-
processors_with_hdfs_sensitive_parameters = \
|
|
575
|
-
["PutHDFS"]
|
|
576
|
-
sensitive_parameters.update(
|
|
577
|
-
self.__nifi_client.set_sensitive_hdfs_parameters(
|
|
578
|
-
processors_with_hdfs_sensitive_parameters, args
|
|
579
|
-
)
|
|
580
|
-
)
|
|
581
|
-
|
|
582
574
|
if not args.hpc_secret_key and not args.hpc_password:
|
|
583
575
|
raise HidDataTransferException(HPC_ACCOUNT_MSG)
|
|
584
576
|
|
|
@@ -591,7 +583,7 @@ class HIDDataTransfer:
|
|
|
591
583
|
"PutHDFS": concurrent_tasks,
|
|
592
584
|
}
|
|
593
585
|
|
|
594
|
-
return self.__nifi_client.
|
|
586
|
+
return self.__nifi_client.run_process_group_opt(
|
|
595
587
|
"hpc2hdfs",
|
|
596
588
|
execution_type,
|
|
597
589
|
arguments,
|
|
@@ -599,7 +591,10 @@ class HIDDataTransfer:
|
|
|
599
591
|
sensitive_parameters,
|
|
600
592
|
keycloak_token=self.__keycloak_token,
|
|
601
593
|
accounting_target="PutHDFS",
|
|
602
|
-
concurrent_tasks=concurrent_tasks_dict
|
|
594
|
+
concurrent_tasks=concurrent_tasks_dict,
|
|
595
|
+
ignore_bulletins_in_processors=["FetchSFTP"],
|
|
596
|
+
processors_with_kerberos=processors_with_kerberos,
|
|
597
|
+
kerberos_account=kerberos_account,
|
|
603
598
|
)
|
|
604
599
|
|
|
605
600
|
except Exception as ex:
|
|
@@ -710,6 +705,12 @@ class HIDDataTransfer:
|
|
|
710
705
|
kerberos_password=kerberos_password,
|
|
711
706
|
)
|
|
712
707
|
|
|
708
|
+
processors_with_kerberos = ["PutHDFS"]
|
|
709
|
+
kerberos_account = SimpleNamespace(
|
|
710
|
+
kerberos_principal=kerberos_principal,
|
|
711
|
+
kerberos_password=kerberos_password,
|
|
712
|
+
)
|
|
713
|
+
|
|
713
714
|
self.__logger.info(
|
|
714
715
|
"executing hpc2hdfs_2fa command with args: %s",
|
|
715
716
|
self.__nifi_client.format_args_to_string(args),
|
|
@@ -726,7 +727,6 @@ class HIDDataTransfer:
|
|
|
726
727
|
: args.data_source.rfind("/")
|
|
727
728
|
]
|
|
728
729
|
arguments[HDFS_DATA_FOLDER] = args.data_target
|
|
729
|
-
arguments[KERBEROS_PRINCIPAL] = args.kerberos_principal
|
|
730
730
|
|
|
731
731
|
# set local.data_folder to keep dataset retrieved from HPC
|
|
732
732
|
__uuid = uuid.uuid4()
|
|
@@ -756,14 +756,6 @@ class HIDDataTransfer:
|
|
|
756
756
|
processors_with_hpc_sensitive_parameters, args
|
|
757
757
|
)
|
|
758
758
|
|
|
759
|
-
processors_with_hdfs_sensitive_parameters = \
|
|
760
|
-
["PutHDFS"]
|
|
761
|
-
sensitive_parameters.update(
|
|
762
|
-
self.__nifi_client.set_sensitive_hdfs_parameters(
|
|
763
|
-
processors_with_hdfs_sensitive_parameters, args
|
|
764
|
-
)
|
|
765
|
-
)
|
|
766
|
-
|
|
767
759
|
if not args.hpc_secret_key and not args.hpc_password:
|
|
768
760
|
raise HidDataTransferException(HPC_ACCOUNT_MSG)
|
|
769
761
|
|
|
@@ -786,7 +778,6 @@ class HIDDataTransfer:
|
|
|
786
778
|
keycloak_token=self.__keycloak_token,
|
|
787
779
|
processor_with_2fa="SftpTransferFromHPCWithVPNCode",
|
|
788
780
|
callback_2fa=callback_2fa,
|
|
789
|
-
accounting_target="PutHDFS",
|
|
790
781
|
concurrent_tasks=concurrent_tasks_dict,
|
|
791
782
|
)
|
|
792
783
|
process_ids.append(process_id)
|
|
@@ -800,6 +791,8 @@ class HIDDataTransfer:
|
|
|
800
791
|
keycloak_token=self.__keycloak_token,
|
|
801
792
|
accounting_target="PutHDFS",
|
|
802
793
|
concurrent_tasks=concurrent_tasks_dict,
|
|
794
|
+
processors_with_kerberos=processors_with_kerberos,
|
|
795
|
+
kerberos_account=kerberos_account,
|
|
803
796
|
)
|
|
804
797
|
process_ids.append(process_id)
|
|
805
798
|
|
|
@@ -911,6 +904,12 @@ class HIDDataTransfer:
|
|
|
911
904
|
recursive=recursive,
|
|
912
905
|
)
|
|
913
906
|
|
|
907
|
+
processors_with_kerberos = ["ListHDFS", "FetchHDFS"]
|
|
908
|
+
kerberos_account = SimpleNamespace(
|
|
909
|
+
kerberos_principal=kerberos_principal,
|
|
910
|
+
kerberos_password=kerberos_password,
|
|
911
|
+
)
|
|
912
|
+
|
|
914
913
|
self.__logger.info(
|
|
915
914
|
"executing hdfs2ckan command with args: %s",
|
|
916
915
|
self.__nifi_client.format_args_to_string(args),
|
|
@@ -921,7 +920,6 @@ class HIDDataTransfer:
|
|
|
921
920
|
"/".join(args.data_source.split("/")[:-1])
|
|
922
921
|
arguments[HDFS_FILENAME] = \
|
|
923
922
|
self.process_wildcards(args.data_source.split("/")[-1])
|
|
924
|
-
arguments[KERBEROS_PRINCIPAL] = args.kerberos_principal
|
|
925
923
|
self.__nifi_client.add_default_ckan_parameters(arguments, args)
|
|
926
924
|
arguments[self.__nifi_client.CKAN_RESOURCE] = \
|
|
927
925
|
self.generate_ckan_resource_name(args)
|
|
@@ -941,14 +939,6 @@ class HIDDataTransfer:
|
|
|
941
939
|
processors_with_ckan_sensitive_parameters, args
|
|
942
940
|
)
|
|
943
941
|
|
|
944
|
-
processors_with_hdfs_sensitive_parameters = \
|
|
945
|
-
["ListHDFS", "FetchHDFS"]
|
|
946
|
-
sensitive_parameters.update(
|
|
947
|
-
self.__nifi_client.set_sensitive_hdfs_parameters(
|
|
948
|
-
processors_with_hdfs_sensitive_parameters, args
|
|
949
|
-
)
|
|
950
|
-
)
|
|
951
|
-
|
|
952
942
|
# Set the number of concurrent tasks
|
|
953
943
|
# for parallel processors in the pipeline
|
|
954
944
|
if concurrent_tasks is None:
|
|
@@ -967,15 +957,21 @@ class HIDDataTransfer:
|
|
|
967
957
|
"CKANFileUploader": concurrent_tasks,
|
|
968
958
|
}
|
|
969
959
|
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
960
|
+
# disabled optimized version (run process group step by step)
|
|
961
|
+
# return self.__nifi_client.run_process_group(
|
|
962
|
+
# enabled optimized version (run process group at once)
|
|
963
|
+
return self.__nifi_client.run_process_group_opt(
|
|
964
|
+
template_name="hdfs2ckan",
|
|
965
|
+
execution_type=execution_type,
|
|
966
|
+
arguments=arguments,
|
|
967
|
+
keys_arguments=None,
|
|
968
|
+
sensitive_parameters=sensitive_parameters,
|
|
976
969
|
keycloak_token=self.__keycloak_token,
|
|
977
970
|
accounting_target="MergeContent",
|
|
978
|
-
concurrent_tasks=concurrent_tasks_dict
|
|
971
|
+
concurrent_tasks=concurrent_tasks_dict,
|
|
972
|
+
synchronization_processor_name="MergeContent",
|
|
973
|
+
processors_with_kerberos=processors_with_kerberos,
|
|
974
|
+
kerberos_account=kerberos_account,
|
|
979
975
|
)
|
|
980
976
|
|
|
981
977
|
except Exception as ex:
|
|
@@ -1027,6 +1023,12 @@ class HIDDataTransfer:
|
|
|
1027
1023
|
kerberos_password=kerberos_password,
|
|
1028
1024
|
)
|
|
1029
1025
|
|
|
1026
|
+
processors_with_kerberos = ["PutHDFS"]
|
|
1027
|
+
kerberos_account = SimpleNamespace(
|
|
1028
|
+
kerberos_principal=kerberos_principal,
|
|
1029
|
+
kerberos_password=kerberos_password,
|
|
1030
|
+
)
|
|
1031
|
+
|
|
1030
1032
|
self.__logger.info(
|
|
1031
1033
|
"executing ckan2hdfs command with args: %s",
|
|
1032
1034
|
self.__nifi_client.format_args_to_string(args),
|
|
@@ -1037,7 +1039,6 @@ class HIDDataTransfer:
|
|
|
1037
1039
|
arguments[self.__nifi_client.CKAN_RESOURCE] = \
|
|
1038
1040
|
self.process_wildcards(args.ckan_resource)
|
|
1039
1041
|
arguments[HDFS_DATA_FOLDER] = args.data_target
|
|
1040
|
-
arguments[KERBEROS_PRINCIPAL] = args.kerberos_principal
|
|
1041
1042
|
|
|
1042
1043
|
execution_type = {
|
|
1043
1044
|
"CKANFileDownloader": ExecutionType.ONCE,
|
|
@@ -1050,14 +1051,6 @@ class HIDDataTransfer:
|
|
|
1050
1051
|
processors_with_ckan_sensitive_parameters, args
|
|
1051
1052
|
)
|
|
1052
1053
|
|
|
1053
|
-
processors_with_hdfs_sensitive_parameters = \
|
|
1054
|
-
["PutHDFS"]
|
|
1055
|
-
sensitive_parameters.update(
|
|
1056
|
-
self.__nifi_client.set_sensitive_hdfs_parameters(
|
|
1057
|
-
processors_with_hdfs_sensitive_parameters, args
|
|
1058
|
-
)
|
|
1059
|
-
)
|
|
1060
|
-
|
|
1061
1054
|
# Set the number of concurrent tasks
|
|
1062
1055
|
# for parallel processors in the pipeline
|
|
1063
1056
|
if concurrent_tasks is None:
|
|
@@ -1078,7 +1071,10 @@ class HIDDataTransfer:
|
|
|
1078
1071
|
arguments[self.__nifi_client.CKAN_CONCURRENT_TASKS] \
|
|
1079
1072
|
= concurrent_tasks
|
|
1080
1073
|
|
|
1081
|
-
|
|
1074
|
+
# disabled optimized version (run process group step by step)
|
|
1075
|
+
# return self.__nifi_client.run_process_group(
|
|
1076
|
+
# enabled optimized version (run process group at once)
|
|
1077
|
+
return self.__nifi_client.run_process_group_opt(
|
|
1082
1078
|
"ckan2hdfs",
|
|
1083
1079
|
execution_type,
|
|
1084
1080
|
arguments,
|
|
@@ -1086,7 +1082,9 @@ class HIDDataTransfer:
|
|
|
1086
1082
|
sensitive_parameters,
|
|
1087
1083
|
keycloak_token=self.__keycloak_token,
|
|
1088
1084
|
accounting_target="PutHDFS",
|
|
1089
|
-
concurrent_tasks=concurrent_tasks_dict
|
|
1085
|
+
concurrent_tasks=concurrent_tasks_dict,
|
|
1086
|
+
processors_with_kerberos=processors_with_kerberos,
|
|
1087
|
+
kerberos_account=kerberos_account,
|
|
1090
1088
|
)
|
|
1091
1089
|
|
|
1092
1090
|
except Exception as ex:
|
|
@@ -1202,7 +1200,7 @@ class HIDDataTransfer:
|
|
|
1202
1200
|
arguments[self.__nifi_client.CKAN_CONCURRENT_TASKS] \
|
|
1203
1201
|
= concurrent_tasks
|
|
1204
1202
|
|
|
1205
|
-
return self.__nifi_client.
|
|
1203
|
+
return self.__nifi_client.run_process_group_opt(
|
|
1206
1204
|
"ckan2hpc",
|
|
1207
1205
|
execution_type,
|
|
1208
1206
|
arguments,
|
|
@@ -1210,7 +1208,8 @@ class HIDDataTransfer:
|
|
|
1210
1208
|
sensitive_parameters,
|
|
1211
1209
|
keycloak_token=self.__keycloak_token,
|
|
1212
1210
|
accounting_target="PutSFTP",
|
|
1213
|
-
concurrent_tasks=concurrent_tasks_dict
|
|
1211
|
+
concurrent_tasks=concurrent_tasks_dict,
|
|
1212
|
+
ignore_bulletins_in_processors=["PutSFTP"],
|
|
1214
1213
|
)
|
|
1215
1214
|
|
|
1216
1215
|
except Exception as ex:
|
|
@@ -1613,7 +1612,7 @@ class HIDDataTransfer:
|
|
|
1613
1612
|
"CKANFileUploader": concurrent_tasks,
|
|
1614
1613
|
}
|
|
1615
1614
|
|
|
1616
|
-
return self.__nifi_client.
|
|
1615
|
+
return self.__nifi_client.run_process_group_opt(
|
|
1617
1616
|
"hpc2ckanv2",
|
|
1618
1617
|
execution_type,
|
|
1619
1618
|
arguments,
|
|
@@ -1621,7 +1620,9 @@ class HIDDataTransfer:
|
|
|
1621
1620
|
sensitive_parameters,
|
|
1622
1621
|
keycloak_token=self.__keycloak_token,
|
|
1623
1622
|
accounting_target="MergeContent",
|
|
1624
|
-
concurrent_tasks=concurrent_tasks_dict
|
|
1623
|
+
concurrent_tasks=concurrent_tasks_dict,
|
|
1624
|
+
synchronization_processor_name="MergeContent",
|
|
1625
|
+
ignore_bulletins_in_processors=["FetchSFTP"],
|
|
1625
1626
|
)
|
|
1626
1627
|
|
|
1627
1628
|
except Exception as ex:
|