DIRAC 9.0.1__tar.gz → 9.0.4__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.
- {dirac-9.0.1/src/DIRAC.egg-info → dirac-9.0.4}/PKG-INFO +5 -5
- {dirac-9.0.1 → dirac-9.0.4}/dirac.cfg +1 -1
- {dirac-9.0.1 → dirac-9.0.4}/release.notes +38 -0
- {dirac-9.0.1 → dirac-9.0.4}/setup.cfg +4 -4
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/Helpers/CSGlobals.py +0 -9
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/Helpers/Registry.py +3 -29
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/SyncPlugins/CERNLDAPSyncPlugin.py +4 -1
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/ServiceReactor.py +11 -3
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/DiracX.py +11 -6
- dirac-9.0.4/src/DIRAC/Core/Security/test/test_diracx_token_from_pem.py +161 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Tornado/Server/TornadoService.py +1 -1
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/Test_Profiler.py +20 -20
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/DB/ProxyDB.py +3 -3
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_login.py +2 -2
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_proxy_init.py +1 -1
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/DB/MonitoringDB.py +6 -5
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Service/WebAppHandler.py +13 -3
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/private/MainReporter.py +0 -3
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/IdProvider/CheckInIdProvider.py +13 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Utilities/ReplicationCLIParameters.py +3 -3
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/scripts/dirac_production_runjoblocal.py +2 -4
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/test/Test_replicationTransformation.py +5 -6
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Agent/SiteDirector.py +2 -6
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Agent/test/Test_Agent_SiteDirector.py +8 -2
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/DB/JobParametersDB.py +8 -8
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/DB/SandboxMetadataDB.py +1 -1
- {dirac-9.0.1 → dirac-9.0.4/src/DIRAC.egg-info}/PKG-INFO +5 -5
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC.egg-info/SOURCES.txt +1 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC.egg-info/requires.txt +4 -4
- {dirac-9.0.1 → dirac-9.0.4}/AUTHORS.rst +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/LICENSE +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/MANIFEST.in +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/README.rst +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/SECURITY.md +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/codecov.yml +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/environment.yml +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/integration_tests.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/pyproject.toml +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/pytest.ini +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/releases.cfg +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/setup.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Agent/NetworkAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Agent/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Agent/test/Test_NetworkAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Client/AccountingCLI.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Client/DataStoreClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Client/ReportCLI.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Client/ReportsClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Client/Types/BaseAccountingType.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Client/Types/DataOperation.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Client/Types/Job.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Client/Types/Network.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Client/Types/Pilot.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Client/Types/PilotSubmission.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Client/Types/StorageOccupancy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Client/Types/WMSHistory.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Client/Types/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Client/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/ConfigTemplate.cfg +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/DB/AccountingDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/DB/AccountingDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/DB/MultiAccountingDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/DB/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/DB/test/Test_AccountingDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Service/DataStoreHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Service/ReportGeneratorHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/Service/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/private/DBUtils.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/private/MainReporter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/private/Plotters/BaseReporter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/private/Plotters/DataOperationPlotter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/private/Plotters/JobPlotter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/private/Plotters/NetworkPlotter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/private/Plotters/PilotPlotter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/private/Plotters/PilotSubmissionPlotter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/private/Plotters/StorageOccupancyPlotter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/private/Plotters/WMSHistoryPlotter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/private/Plotters/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/private/Policies/FilterExecutor.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/private/Policies/JobPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/private/Policies/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/private/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/scripts/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/scripts/dirac_accounting_decode_fileid.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/AccountingSystem/scripts/dirac_admin_accounting_cli.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Agent/Bdii2CSAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Agent/GOCDB2CSAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Agent/RucioSynchronizerAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Agent/VOMS2CSAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Agent/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Agent/test/Test_Bdii2CS.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/CSAPI.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/CSCLI.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/CSShellCLI.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/Config.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/ConfigurationClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/ConfigurationData.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/Helpers/Operations.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/Helpers/Path.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/Helpers/Resources.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/Helpers/ResourcesDefaults.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/Helpers/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/Helpers/test/Test_Helpers.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/LocalConfiguration.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/PathFinder.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/SyncPlugins/DummySyncPlugin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/SyncPlugins/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/Utilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/VOMS2CSSynchronizer.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/test/Test_LocalConfiguration.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/test/Test_PathFinder.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/ConfigTemplate.cfg +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Service/ConfigurationHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Service/TornadoConfigurationHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Service/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/private/ConfigurationClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/private/ConfigurationData.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/private/Modificator.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/private/Refresher.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/private/RefresherBase.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/private/ServiceInterface.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/private/ServiceInterfaceBase.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/private/ServiceInterfaceTornado.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/private/TornadoRefresher.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/private/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/scripts/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/scripts/dirac_admin_add_resources.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/scripts/dirac_admin_add_shifter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/scripts/dirac_admin_add_site.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/scripts/dirac_admin_check_config_options.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/scripts/dirac_admin_sort_cs_sites.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/scripts/dirac_admin_voms_sync.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/scripts/dirac_configuration_cli.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/scripts/dirac_configuration_dump_local_cache.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/scripts/dirac_configuration_shell.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/test/Test_agentOptions.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Base/API.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Base/AgentModule.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Base/AgentReactor.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Base/CLI.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Base/Client.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Base/DB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Base/DIRACDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Base/ElasticDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Base/ExecutorMindHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Base/ExecutorModule.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Base/ExecutorReactor.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Base/SQLAlchemyDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Base/Script.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Base/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Base/private/ModuleLoader.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Base/private/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/AuthManager.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/MessageClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/RPCClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/RequestHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/ThreadConfig.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/TransferClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/BaseClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/FileHelper.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/GatewayService.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/InnerRPCClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/LockManager.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/MessageBroker.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/MessageFactory.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/Protocols.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/Service.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/ServiceConfiguration.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/TransportPool.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/Transports/BaseTransport.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/Transports/M2SSLTransport.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/Transports/PlainTransport.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/Transports/SSL/FakeSocket.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/Transports/SSL/M2Utils.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/Transports/SSL/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/Transports/SSLTransport.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/Transports/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/Transports/test/README.md +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/Transports/test/Test_SSLTransport.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/Transports/test/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/Transports/test/proxy.pem +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/private/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/DISET/test/Test_AuthManager.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/LCG/GGUSTicketsClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/LCG/GOCDBClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/LCG/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/LCG/test/Test_LCG.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/IAMService.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/Locations.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/Properties.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/ProxyFile.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/ProxyInfo.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/Utilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/VOMS.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/VOMSService.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/m2crypto/X509CRL.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/m2crypto/X509Certificate.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/m2crypto/X509Chain.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/m2crypto/X509Request.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/m2crypto/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/m2crypto/asn1_utils.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/Test_DiracX.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/Test_X509Certificate.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/Test_X509Chain.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/Test_X509Request.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/ca/b236481c.0 +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/ca/ca.cert.pem +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/ca/ca.key.pem +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/ca/crlnumber +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/ca/index.txt +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/ca/index.txt.attr +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/ca/index.txt.attr.old +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/ca/index.txt.old +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/ca/newcerts/1000.pem +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/ca/newcerts/1001.pem +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/ca/newcerts/1002.pem +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/ca/openssl_config_ca.cnf +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/ca/serial +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/ca/serial.old +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/host/hostcert.pem +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/host/hostkey.pem +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/host/hostkey.pem.bak +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/host/openssl_config_host.cnf +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/host/request.csr.pem +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/key/encrypted_key_pass_0000.pem +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/user/openssl_config_user.cnf +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/user/request.csr.pem +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/user/usercert.pem +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/user/userkey.pem +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/voms/README +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/certs/voms/proxy.pem +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Security/test/x509TestUtilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Tornado/Client/ClientSelector.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Tornado/Client/TornadoClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Tornado/Client/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Tornado/Client/private/TornadoBaseClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Tornado/Client/private/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Tornado/Server/HandlerManager.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Tornado/Server/TornadoREST.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Tornado/Server/TornadoServer.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Tornado/Server/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Tornado/Server/private/BaseRequestHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Tornado/Server/private/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Tornado/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Tornado/scripts/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Tornado/scripts/tornado_start_CS.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Tornado/scripts/tornado_start_all.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Adler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/CGroups2.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/ClassAd/ClassAdLight.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/ClassAd/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/CountryMapping.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/DAG.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/DEncode.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/DErrno.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/DIRACSingleton.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Decorators.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Devloader.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/DictCache.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Dictionaries.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/DirectoryExplorer.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/ElasticSearchDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/EventDispatcher.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/ExecutorDispatcher.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Extensions.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/File.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Glue2.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Graphs/BarGraph.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Graphs/CurveGraph.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Graphs/Dwatermark.png +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Graphs/Graph.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Graphs/GraphData.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Graphs/GraphUtilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Graphs/Legend.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Graphs/LineGraph.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Graphs/Palette.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Graphs/PieGraph.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Graphs/PlotBase.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Graphs/QualityMapGraph.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Graphs/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Grid.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/JDL.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/JEncode.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/List.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/LockRing.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Mail.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/MixedEncode.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/MySQL.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Network.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/ObjectLoader.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Os.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Pfn.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Platform.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Plotting/DataCache.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Plotting/FileCoding.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Plotting/Plots.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Plotting/TypeLoader.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Plotting/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/PrettyPrint.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/ProcessPool.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Profiler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/PromptUser.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Proxy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/ReturnValues.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Shifter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/SiteSEMapping.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/StateMachine.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Subprocess.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/ThreadPool.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/ThreadSafe.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/ThreadScheduler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/TimeUtilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/Version.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/exceptions.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/ProcessesCreator.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/Test_Adler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/Test_DAG.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/Test_Decorator.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/Test_Dictionaries.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/Test_Encode.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/Test_ExecutorDispatcher.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/Test_Extensions.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/Test_File.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/Test_JDL.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/Test_Mail.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/Test_Network.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/Test_ObjectLoader.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/Test_Pfn.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/Test_ProcessPool.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/Test_ReturnValues.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/Test_Subprocess.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/Test_entrypoints.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Utilities/test/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Workflow/Module.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Workflow/Parameter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Workflow/Step.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Workflow/Utility.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Workflow/WFEditor/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Workflow/Workflow.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Workflow/WorkflowReader.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Workflow/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Workflow/test/JobSamples.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Workflow/test/ModulesSamples.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Workflow/test/WFSamples.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Workflow/test/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/Workflow/test/step_g.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/scripts/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/scripts/dirac_agent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/scripts/dirac_apptainer_exec.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/scripts/dirac_cert_convert.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/scripts/dirac_configure.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/scripts/dirac_executor.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/scripts/dirac_generate_cas.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/scripts/dirac_generate_crls.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/scripts/dirac_info.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/scripts/dirac_install_db.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/scripts/dirac_install_web_portal.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/scripts/dirac_platform.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/scripts/dirac_service.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/scripts/dirac_setup_site.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/scripts/dirac_version.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/scripts/install_full.cfg +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Core/test/Test_API.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/FTS3Agent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/RequestOperations/ArchiveFiles.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/RequestOperations/CheckMigration.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/RequestOperations/DMSRequestOperationsBase.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/RequestOperations/MoveReplica.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/RequestOperations/PhysicalRemoval.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/RequestOperations/PutAndRegister.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/RequestOperations/ReTransfer.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/RequestOperations/RegisterFile.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/RequestOperations/RegisterReplica.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/RequestOperations/RemoveFile.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/RequestOperations/RemoveReplica.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/RequestOperations/ReplicateAndRegister.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/RequestOperations/StagingCallback.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/RequestOperations/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/RequestOperations/test/Test_ArchiveFiles.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/RequestOperations/test/Test_CheckMigration.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/RequestOperations/test/Test_ReplicateAndRegister.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/RequestOperations/test/Test_RequestOperations.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Agent/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/CmdDirCompletion/AbstractFileSystem.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/CmdDirCompletion/DirectoryCompletion.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/CmdDirCompletion/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/ConsistencyInspector.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/DataIntegrityClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/DataManager.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/DirectoryListing.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/FTS3Client.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/FTS3File.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/FTS3Job.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/FTS3Operation.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/FailoverTransfer.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/FileCatalogClientCLI.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/MetaQuery.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/S3GatewayClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/test/Test_Client_DataManagementSystem.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/test/Test_FTS3Objects.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/test/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/test/mock_DM.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Client/test/new_dir_completion.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/ConfigTemplate.cfg +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/DataIntegrityDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/DataIntegrityDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FTS3DB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FTS3DB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/DatasetManager/DatasetManager.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/DatasetManager/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/DirectoryManager/DirectoryClosure.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/DirectoryManager/DirectoryFlatTree.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/DirectoryManager/DirectoryLevelTree.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/DirectoryManager/DirectoryNodeTree.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/DirectoryManager/DirectorySimpleTree.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/DirectoryManager/DirectoryTreeBase.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/DirectoryManager/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/DirectoryMetadata/DirectoryMetadata.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/DirectoryMetadata/MultiVODirectoryMetadata.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/DirectoryMetadata/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/FileManager/FileManager.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/FileManager/FileManagerBase.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/FileManager/FileManagerFlat.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/FileManager/FileManagerPs.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/FileManager/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/FileMetadata/FileMetadata.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/FileMetadata/MultiVOFileMetadata.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/FileMetadata/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/SEManager/SEManagerBase.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/SEManager/SEManagerDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/SEManager/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/SecurityManager/DirectorySecurityManager.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/SecurityManager/DirectorySecurityManagerWithDelete.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/SecurityManager/FullSecurityManager.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/SecurityManager/NoSecurityManager.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/SecurityManager/SecurityManagerBase.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/SecurityManager/VOMSSecurityManager.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/SecurityManager/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/SecurityManager/test/Test_VOMSSecurityManager.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/UserGroupManager/UserAndGroupManagerBase.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/UserGroupManager/UserAndGroupManagerCS.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/UserGroupManager/UserAndGroupManagerDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/UserGroupManager/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/Utilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogComponents/test/Test_DataManagement_FileCatalogComponents.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/FileCatalogWithFkAndPsDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/test/FTS3TestUtils.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/DB/test/Test_FTS3DB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Service/DataIntegrityHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Service/FTS3ManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Service/FileCatalogHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Service/S3GatewayHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Service/StorageElementHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Service/TornadoDataIntegrityHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Service/TornadoFTS3ManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Service/TornadoFileCatalogHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Service/TornadoS3GatewayHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Service/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Service/test/Test_Service.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Utilities/DMSHelpers.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Utilities/ResolveSE.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Utilities/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Utilities/test/Test_resolveSE.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/Utilities/test/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/private/FTS3Plugins/DefaultFTS3Plugin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/private/FTS3Plugins/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/private/FTS3Plugins/test/Test_DefaultFTS3Plugin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/private/FTS3Utilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/private/HttpStorageAccessHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/private/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/private/test/Test_FTS3Utilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/private/test/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_admin_allow_se.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_admin_ban_se.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_admin_user_quota.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_add_file.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_catalog_metadata.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_change_replica_status.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_clean_directory.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_create_archive_request.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_create_moving_request.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_create_removal_request.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_data_size.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_directory_sync.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_filecatalog_cli.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_find_lfns.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_move_replica_request.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_protocol_matrix.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_put_and_register_request.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_remove_catalog_files.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_remove_catalog_replicas.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_remove_files.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_remove_replicas.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_replica_metadata.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_replicate_and_register_request.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_resolve_guid.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_set_replica_status.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_show_se_status.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_user_lfns.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/DataManagementSystem/scripts/dirac_dms_user_quota.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/API/AuthHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/API/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Agent/ComponentSupervisionAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Agent/ProxyRenewalAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Agent/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Agent/test/Test_ComponentSupervisionAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Client/BundleDeliveryClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Client/ComponentInstaller.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Client/ComponentMonitoringClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Client/Logger.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Client/NotificationClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Client/ProxyGeneration.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Client/ProxyManagerClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Client/ProxyUpload.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Client/SecurityLogClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Client/SystemAdministratorClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Client/SystemAdministratorClientCLI.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Client/SystemAdministratorIntegrator.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Client/TokenManagerClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Client/UserProfileClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Client/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Client/test/Test_ComponentInstaller.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/ConfigTemplate.cfg +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/DB/AuthDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/DB/AuthDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/DB/InstalledComponentsDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/DB/InstalledComponentsDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/DB/ProxyDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/DB/TokenDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/DB/TokenDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/DB/UserProfileDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/DB/UserProfileDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/DB/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Service/BundleDeliveryHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Service/ComponentMonitoringHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Service/NotificationHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Service/ProxyManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Service/SecurityLoggingHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Service/SystemAdministratorHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Service/TokenManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Service/TornadoComponentMonitoringHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Service/TornadoNotificationHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Service/TornadoProxyManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Service/TornadoTokenManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Service/TornadoUserProfileManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Service/UserProfileManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Service/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Utilities/MonitoringUtilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Utilities/TokenManagementUtilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Utilities/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Utilities/diracx.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/Utilities/test/Test_TokenManagementUtilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/SecurityFileLog.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/authorization/AuthServer.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/authorization/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/authorization/grants/AuthorizationCode.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/authorization/grants/DeviceFlow.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/authorization/grants/RefreshToken.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/authorization/grants/RevokeToken.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/authorization/grants/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/authorization/utils/Clients.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/authorization/utils/Requests.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/authorization/utils/Tokens.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/authorization/utils/Utilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/authorization/utils/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/Formatter/BaseFormatter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/Formatter/ColoredBaseFormatter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/Formatter/MicrosecondJsonFormatter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/Formatter/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/Handler/MessageQueueHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/Handler/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/LogLevels.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/Logging.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/LoggingContext.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/LoggingRoot.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/test/TestLogUtilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/test/Test_LogLevels.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/test/Test_LoggingRoot_ConfigForExternalLibs.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/test/Test_Logging_Backends.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/test/Test_Logging_ContextVars.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/test/Test_Logging_CreationLogRecord.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/test/Test_Logging_FormatOptions.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/test/Test_Logging_GetSubLogger.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/test/Test_Logging_Levels.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/private/standardLogging/test/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_admin_get_CAs.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_admin_get_proxy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_admin_proxy_upload.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_admin_sysadmin_cli.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_admin_update_instance.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_admin_update_pilot.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_admin_users_with_proxy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_diracx_whoami.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_install_component.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_logout.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_proxy_destroy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_proxy_get_uploaded_info.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_proxy_info.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_restart_component.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_start_component.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_status_component.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_stop_component.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_sys_sendmail.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/FrameworkSystem/scripts/dirac_uninstall_component.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/API/Dirac.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/API/DiracAdmin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/API/Job.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/API/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/API/test/Test_DIRAC.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/API/test/Test_JobAPI.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/API/test/testWF.jdl +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/API/test/testWF.xml +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/API/test/testWFSIO.jdl +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/Utilities/DCommands.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/Utilities/DConfigCache.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dcd.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dchgrp.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dchmod.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dchown.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dconfig.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dfind.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dget.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dgetenv.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_add_group.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_add_host.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_add_user.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_allow_site.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_ban_site.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_ce_info.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_delete_user.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_get_banned_sites.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_get_job_pilot_output.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_get_job_pilots.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_get_pilot_info.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_get_pilot_logging_info.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_get_pilot_output.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_get_site_mask.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_list_hosts.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_list_users.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_modify_user.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_pilot_summary.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_reset_job.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_set_site_protocols.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_site_info.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_site_mask_logging.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_admin_sync_users_from_file.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_dms_get_file.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_dms_lfn_accessURL.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_dms_lfn_metadata.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_dms_lfn_replicas.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_dms_pfn_accessURL.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_dms_pfn_metadata.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_dms_replicate_lfn.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_framework_ping_service.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_framework_self_ping.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_utils_file_adler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_utils_file_md5.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_wms_job_attributes.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_wms_job_delete.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_wms_job_get_input.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_wms_job_get_jdl.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_wms_job_get_output.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_wms_job_get_output_data.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_wms_job_kill.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_wms_job_logging_info.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_wms_job_parameters.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_wms_job_peek.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_wms_job_reschedule.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_wms_job_status.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_wms_job_submit.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_wms_jobs_select_output_search.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dirac_wms_select_jobs.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dkill.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dlogging.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dls.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dmeta.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dmkdir.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/doutput.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dput.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dpwd.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/drepl.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dreplicas.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/drm.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/drmdir.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dsize.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dstat.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Interfaces/scripts/dsub.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Client/DataOperationSender.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Client/MonitoringClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Client/MonitoringReporter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Client/ServerUtils.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Client/Types/AgentMonitoring.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Client/Types/BaseType.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Client/Types/DataOperation.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Client/Types/FailedDataOperation.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Client/Types/PilotSubmissionMonitoring.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Client/Types/PilotsHistory.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Client/Types/RMSMonitoring.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Client/Types/ServiceMonitoring.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Client/Types/WMSHistory.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Client/Types/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Client/WebAppClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Client/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/ConfigTemplate.cfg +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/DB/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/DB/test/Test_monitoringdb.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Service/MonitoringHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Service/TornadoMonitoringHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/Service/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/private/DBUtils.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/private/Plotters/BasePlotter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/private/Plotters/RMSMonitoringPlotter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/private/Plotters/WMSHistoryPlotter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/private/Plotters/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/MonitoringSystem/private/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/Client/ProductionClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/Client/ProductionStep.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/Client/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/ConfigTemplate.cfg +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/DB/ProductionDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/DB/ProductionDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/DB/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/Service/ProductionManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/Service/TornadoProductionManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/Service/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/Utilities/ProdTransManager.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/Utilities/ProdValidator.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/Utilities/StateMachine.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/Utilities/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/scripts/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/scripts/dirac_prod_add_trans.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/scripts/dirac_prod_clean.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/scripts/dirac_prod_complete.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/scripts/dirac_prod_delete.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/scripts/dirac_prod_get.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/scripts/dirac_prod_get_all.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/scripts/dirac_prod_get_description.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/scripts/dirac_prod_get_trans.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/scripts/dirac_prod_start.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ProductionSystem/scripts/dirac_prod_stop.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Agent/CleanReqDBAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Agent/RequestExecutingAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Agent/RequestOperations/ForwardDISET.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Agent/RequestOperations/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Agent/RequestOperations/test/ForwardDISETTests.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Agent/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Client/File.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Client/Operation.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Client/ReqClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Client/Request.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Client/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Client/test/Test_File.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Client/test/Test_Operation.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Client/test/Test_Request.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/ConfigTemplate.cfg +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/DB/ReqDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/DB/RequestDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/DB/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/DB/test/RMSTestScenari.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/DB/test/Test_RequestDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/DB/test/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Service/ReqManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Service/ReqProxyHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Service/TornadoReqManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Service/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/Service/test/OperationHandlerBaseTests.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/private/JSONUtils.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/private/OperationHandlerBase.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/private/RequestTask.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/private/RequestValidator.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/private/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/private/test/Test_OperationHandlerBase.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/private/test/Test_RequestTask.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/private/test/Test_RequestValidator.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/scripts/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/scripts/dirac_rms_list_req_cache.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/scripts/dirac_rms_reqdb_summary.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/RequestManagementSystem/scripts/dirac_rms_request.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Agent/CacheFeederAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Agent/ElementInspectorAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Agent/EmailAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Agent/RucioRSSAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Agent/SiteInspectorAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Agent/SummarizeLogsAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Agent/TokenAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Agent/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Agent/test/Test_Agent_ElementInspectorAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Agent/test/Test_Agent_ResourceStatusSystem.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Agent/test/Test_Agent_SiteInspectorAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Client/PublisherClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Client/ResourceManagementClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Client/ResourceStatus.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Client/ResourceStatusClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Client/SiteStatus.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Client/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Command/Command.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Command/CommandCaller.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Command/DowntimeCommand.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Command/FreeDiskSpaceCommand.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Command/GGUSTicketsCommand.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Command/GOCDBSyncCommand.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Command/JobCommand.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Command/MacroCommand.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Command/PilotCommand.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Command/PropagationCommand.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Command/TransferCommand.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Command/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Command/test/Test_RSS_Command_GOCDBStatusCommand.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Command/test/Test_RSS_Command_GOCDBSyncCommand.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/ConfigTemplate.cfg +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/DB/ResourceManagementDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/DB/ResourceManagementDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/DB/ResourceStatusDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/DB/ResourceStatusDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/DB/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/AlwaysActivePolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/AlwaysBannedPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/AlwaysDegradedPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/AlwaysProbingPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/CEAvailabilityPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/Configurations.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/DowntimePolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/FreeDiskSpacePolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/GGUSTicketsPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/JobDoneRatioPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/JobEfficiencyPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/JobRunningMatchedRatioPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/JobRunningWaitingRatioPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/PilotEfficiencyPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/PropagationPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/test/Test_RSS_Policy_AlwaysActivePolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/test/Test_RSS_Policy_CEAvailabilityPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/test/Test_RSS_Policy_Configurations.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/test/Test_RSS_Policy_DTPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/test/Test_RSS_Policy_FreeDiskSpacePolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/test/Test_RSS_Policy_GGUSTicketsPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/test/Test_RSS_Policy_JobDoneRatioPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/test/Test_RSS_Policy_JobEfficiencyPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/test/Test_RSS_Policy_JobRunningMatchedRatioPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/test/Test_RSS_Policy_JobRunningWaitingRatioPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Policy/test/Test_RSS_Policy_PilotEfficiencyPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/PolicySystem/Actions/BaseAction.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/PolicySystem/Actions/EmailAction.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/PolicySystem/Actions/LogPolicyResultAction.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/PolicySystem/Actions/LogStatusAction.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/PolicySystem/Actions/SlackAction.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/PolicySystem/Actions/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/PolicySystem/PDP.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/PolicySystem/PEP.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/PolicySystem/PolicyBase.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/PolicySystem/PolicyCaller.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/PolicySystem/StateMachine.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/PolicySystem/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/PolicySystem/test/Test_PolicySystem.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Service/PublisherHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Service/ResourceManagementHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Service/ResourceStatusHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Service/TornadoPublisherHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Service/TornadoResourceManagementHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Service/TornadoResourceStatusHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Service/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Utilities/CSHelpers.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Utilities/InfoGetter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Utilities/RSSCache.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Utilities/RSSCacheNoThread.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Utilities/RssConfiguration.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Utilities/Synchronizer.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Utilities/Utils.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/Utilities/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/scripts/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/scripts/dirac_rss_list_status.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/scripts/dirac_rss_query_db.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/scripts/dirac_rss_query_dtcache.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/scripts/dirac_rss_set_status.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/scripts/dirac_rss_set_token.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ResourceStatusSystem/scripts/dirac_rss_sync.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/ConditionPlugins/DummyPlugin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/ConditionPlugins/FCConditionBasePlugin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/ConditionPlugins/FilenamePlugin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/ConditionPlugins/ProxyPlugin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/ConditionPlugins/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/ConditionPlugins/test/Test_FilenamePlugin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/ConditionPlugins/test/Test_ProxyPlugin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/ConditionPlugins/test/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/FCConditionParser.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/FileCatalog.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/FileCatalogClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/FileCatalogClientBase.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/FileCatalogFactory.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/PoolXMLCatalog.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/PoolXMLFile.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/RucioFileCatalogClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/TSCatalogClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/Utilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/test/Test_FCConditionParser.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/test/Test_FileCatalog.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/test/Test_RucioFileCatalogClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/test/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Catalog/test/mock_FC.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/AREXComputingElement.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/Condor.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/GE.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/Host.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/LSF.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/OAR.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/SLURM.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/TimeLeft/HTCondorResourceUsage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/TimeLeft/LSFResourceUsage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/TimeLeft/PBSResourceUsage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/TimeLeft/ResourceUsage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/TimeLeft/SGEResourceUsage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/TimeLeft/SLURMResourceUsage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/TimeLeft/TimeLeft.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/TimeLeft/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/TimeLeft/test/Test_HTCondorResourceUsage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/TimeLeft/test/Test_LSFResourceUsage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/TimeLeft/test/Test_PBSResourceUsage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/TimeLeft/test/Test_SGEResourceUsage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/TimeLeft/test/Test_SLURMResourceUsage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/TimeLeft/test/Test_TimeLeft.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/TimeLeft/test/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/Torque.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/executeBatch.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/test/Test_SLURM.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/BatchSystems/test/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/CloudComputingElement.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/CloudProviders/OpenNebula.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/ComputingElement.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/ComputingElementFactory.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/HTCondorCEComputingElement.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/InProcessComputingElement.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/LocalComputingElement.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/PoolComputingElement.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/SSHBatchComputingElement.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/SSHComputingElement.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/SingularityComputingElement.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/cloudinit.template +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/test/Test_AREXComputingElement.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/test/Test_ComputingElement.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/test/Test_HTCondorCEComputingElement.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/test/Test_InProcessComputingElement.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/test/Test_PoolComputingElement.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/test/Test_SSHComputingElement.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Computing/test/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/IdProvider/IAMIdProvider.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/IdProvider/IdProviderFactory.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/IdProvider/OAuth2IdProvider.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/IdProvider/Utilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/IdProvider/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/IdProvider/tests/IdProviderTestUtilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/IdProvider/tests/Test_IdProvider.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/IdProvider/tests/Test_IdProviderFactory.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/IdProvider/tests/Test_IdProviderUtilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/LogBackends/AbstractBackend.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/LogBackends/ElasticSearchBackend.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/LogBackends/FileBackend.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/LogBackends/MessageQueueBackend.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/LogBackends/StderrBackend.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/LogBackends/StdoutBackend.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/LogBackends/StdoutJsonBackend.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/LogBackends/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/LogFilters/ModuleFilter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/LogFilters/PatternFilter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/LogFilters/SensitiveDataFilter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/LogFilters/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/LogFilters/test/Test_LogFilter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/MessageQueue/MQCommunication.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/MessageQueue/MQConnectionManager.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/MessageQueue/MQConnector.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/MessageQueue/MQConsumer.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/MessageQueue/MQProducer.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/MessageQueue/Simple/StompInterface.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/MessageQueue/Simple/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/MessageQueue/StompMQConnector.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/MessageQueue/Utilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/MessageQueue/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/MessageQueue/test/Test_MQConnectionManager.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/MessageQueue/test/Test_MQConsumer.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/MessageQueue/test/Test_MQProducer.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/MessageQueue/test/Test_MQ_Utilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/ProxyProvider/DIRACCAProxyProvider.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/ProxyProvider/ProxyProvider.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/ProxyProvider/ProxyProviderFactory.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/ProxyProvider/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/ProxyProvider/test/Test_DIRACCAProxyProvider.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/ProxyProvider/test/Test_ProxyProviderFactory.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/ProxyProvider/test/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/CTAStorage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/DIPStorage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/EchoStorage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/FCOnlyStorage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/FileStorage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/GFAL2_GSIFTPStorage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/GFAL2_HTTPSStorage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/GFAL2_SRM2Storage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/GFAL2_StorageBase.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/GFAL2_XROOTStorage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/OccupancyPlugins/BDIIOccupancy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/OccupancyPlugins/WLCGAccountingHTTPJson.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/OccupancyPlugins/WLCGAccountingJson.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/OccupancyPlugins/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/RFIOStorage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/S3Storage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/StorageBase.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/StorageElement.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/StorageFactory.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/Utilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/test/Test_FilePlugin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/test/Test_GFAL2_XROOTStorage.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/test/Test_StorageElement.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/test/Test_StorageFactory.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/test/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/Storage/test/test_utilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/scripts/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/scripts/dirac_resource_get_parameters.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Resources/scripts/dirac_resource_info.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/Agent/RequestFinalizationAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/Agent/RequestPreparationAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/Agent/StageMonitorAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/Agent/StageRequestAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/Agent/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/Client/StorageManagerClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/Client/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/Client/test/Test_Client_StorageManagementSystem.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/ConfigTemplate.cfg +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/DB/StorageManagementDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/DB/StorageManagementDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/DB/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/Service/StorageManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/Service/TornadoStorageManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/Service/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/scripts/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/scripts/dirac_stager_monitor_file.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/scripts/dirac_stager_monitor_jobs.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/scripts/dirac_stager_monitor_request.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/scripts/dirac_stager_monitor_requests.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/scripts/dirac_stager_show_stats.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/StorageManagementSystem/scripts/dirac_stager_stage_files.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Agent/DataRecoveryAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Agent/InputDataAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Agent/MCExtensionAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Agent/RequestOperations/SetFileStatus.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Agent/RequestOperations/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Agent/RequestTaskAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Agent/TaskManagerAgentBase.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Agent/TransformationAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Agent/TransformationAgentsUtilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Agent/TransformationCleaningAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Agent/TransformationPlugin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Agent/ValidateOutputDataAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Agent/WorkflowTaskAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Agent/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Agent/test/Test_Agent_TransformationSystem.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Agent/test/Test_Plugins.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/BodyPlugin/BaseBody.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/BodyPlugin/DummyBody.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/BodyPlugin/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/FileReport.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/PluginBase.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/RequestTasks.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/TaskManager.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/TaskManagerPlugin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/Transformation.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/TransformationCLI.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/TransformationClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/TransformationFilesStatus.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/TransformationStatus.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/Utilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/WorkflowTasks.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/test/Test_Client_RequestTasks.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/test/Test_Client_TaskManagerPlugin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/test/Test_Client_TransformationClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/test/Test_Client_TransformationSystem.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Client/test/Test_Client_WorkflowTasks.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/ConfigTemplate.cfg +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/DB/TransformationDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/DB/TransformationDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/DB/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Service/TornadoTransformationManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Service/TransformationManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Service/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Utilities/JobInfo.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Utilities/ReplicationTransformation.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Utilities/ScriptUtilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Utilities/TransformationInfo.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/Utilities/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/scripts/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/scripts/dirac_transformation_add_files.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/scripts/dirac_transformation_cli.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/scripts/dirac_transformation_get_files.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/scripts/dirac_transformation_information.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/scripts/dirac_transformation_recover_data.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/scripts/dirac_transformation_replication.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/scripts/dirac_transformation_update_derived.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/scripts/dirac_transformation_verify_outputdata.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/test/Test_DRA.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/test/Test_JobInfo.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/test/Test_TransformationInfo.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/TransformationSystem/test/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Workflow/Modules/FailoverRequest.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Workflow/Modules/ModuleBase.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Workflow/Modules/Script.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Workflow/Modules/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Workflow/Modules/test/Test_Modules.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Workflow/Utilities/Utils.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Workflow/Utilities/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Workflow/Utilities/test/Test_Utilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/Workflow/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Agent/JobAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Agent/JobCleaningAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Agent/PilotLoggingAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Agent/PilotStatusAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Agent/PilotSyncAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Agent/PushJobAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Agent/StalledJobAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Agent/StatesAccountingAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Agent/TaskQueuesAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Agent/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Agent/test/Test_Agent_JobAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Agent/test/Test_Agent_JobCleaningAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Agent/test/Test_Agent_PilotLoggingAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Agent/test/Test_Agent_PilotStatusAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Agent/test/Test_Agent_PushJobAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Agent/test/Test_Agent_StalledJobAgent.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/CPUNormalization.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/DownloadInputData.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/InputDataByProtocol.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/InputDataResolution.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/JobManagerClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/JobMinorStatus.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/JobMonitoringClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/JobReport.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/JobState/CachedJobState.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/JobState/JobManifest.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/JobState/JobState.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/JobState/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/JobStateUpdateClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/JobStatus.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/Limiter.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/Matcher.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/MatcherClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/PilotLoggingPlugins/DownloadPlugin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/PilotLoggingPlugins/FileCacheDownloadPlugin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/PilotLoggingPlugins/FileCacheLoggingPlugin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/PilotLoggingPlugins/MQPilotLoggingPlugin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/PilotLoggingPlugins/PilotLoggingPlugin.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/PilotLoggingPlugins/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/PilotManagerClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/PilotScopes.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/PilotStatus.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/PoolXMLSlice.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/SandboxStoreClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/ServerUtils.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/TornadoPilotLoggingClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/WMSAdministratorClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/WMSClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/test/Test_Client_DownloadInputData.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/test/Test_Client_WorkloadManagementSystem.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/test/Test_JobReport.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Client/test/Test_TornadoPilotLoggingClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/ConfigTemplate.cfg +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/DB/JobDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/DB/JobDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/DB/JobDBUtils.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/DB/JobLoggingDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/DB/JobLoggingDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/DB/PilotAgentsDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/DB/PilotAgentsDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/DB/SandboxMetadataDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/DB/StatusUtils.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/DB/TaskQueueDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/DB/TaskQueueDB.sql +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/DB/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/DB/tests/Test_JobDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/DB/tests/Test_StatusUtils.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/DB/tests/Test_TaskQueueDB.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Executor/Base/OptimizerExecutor.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Executor/Base/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Executor/InputData.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Executor/JobPath.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Executor/JobSanity.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Executor/JobScheduling.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Executor/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Executor/test/Test_Executor.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/FutureClient/JobMonitoringClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/FutureClient/JobStateUpdateClient.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/FutureClient/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/JobWrapper/JobExecutionCoordinator.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/JobWrapper/JobWrapper.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/JobWrapper/JobWrapperOfflineTemplate.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/JobWrapper/JobWrapperTemplate.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/JobWrapper/JobWrapperUtilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/JobWrapper/Watchdog.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/JobWrapper/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/JobWrapper/test/Test_JobWrapper.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/JobWrapper/test/Test_JobWrapperTemplate.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/JobWrapper/test/Test_Watchdog.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/JobWrapper/test/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/JobWrapper/test/jobDescription.xml +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/JobWrapper/test/script-OK.sh +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/JobWrapper/test/script-RESC.sh +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/JobWrapper/test/script-fail.sh +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/JobWrapper/test/script-long.sh +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/JobWrapper/test/script.sh +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Service/JobManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Service/JobMonitoringHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Service/JobPolicy.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Service/JobStateUpdateHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Service/MatcherHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Service/OptimizationMindHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Service/PilotManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Service/SandboxStoreHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Service/TornadoJobManagerHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Service/TornadoJobMonitoringHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Service/TornadoJobStateUpdateHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Service/TornadoPilotLoggingHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Service/TornadoSandboxStoreHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Service/TornadoWMSAdministratorHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Service/WMSAdministratorHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Service/WMSUtilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Service/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/JobModel.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/JobParameters.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/JobStatusUtility.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/ParametricJob.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/PilotCStoJSONSynchronizer.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/PilotWrapper.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/QueueUtilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/RemoteRunner.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/Utils.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/jobAdministration.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/test/Test_JobModel.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/test/Test_JobStatusUtility.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/test/Test_ParametricJob.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/test/Test_PilotCStoJSONSynchronizer.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/test/Test_PilotWrapper.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/test/Test_QueueUtilities.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/test/Test_RemoteRunner.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/Utilities/test/Test_TornadoPilotLoggingHandler.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/private/ConfigHelper.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/private/SharesCorrector.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/private/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/private/correctors/BaseCorrector.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/private/correctors/BaseHistoryCorrector.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/private/correctors/MonitoringHistoryCorrector.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/private/correctors/WMSHistoryCorrector.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/private/correctors/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/scripts/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/scripts/dirac_admin_add_pilot.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/scripts/dirac_admin_kill_pilot.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/scripts/dirac_admin_show_task_queues.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/scripts/dirac_admin_sync_pilot.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/scripts/dirac_jobexec.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/scripts/dirac_wms_cpu_normalization.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/scripts/dirac_wms_get_queue_cpu_time.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/scripts/dirac_wms_get_wn.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/scripts/dirac_wms_get_wn_parameters.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/scripts/dirac_wms_match.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/WorkloadManagementSystem/scripts/dirac_wms_pilot_job_info.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/Test_init.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/Utilities/Accounting.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/Utilities/IntegrationTest.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/Utilities/ProcessesCreator_withChildren.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/Utilities/WMS.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/Utilities/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/Utilities/assertingUtils.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/Utilities/mpTest-flexible.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/Utilities/mpTest.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/Utilities/plots.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/Utilities/testJobDefinitions.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/Utilities/utils.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/Workflow/Integration/exe-script-with-input-single-location.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/Workflow/Integration/exe-script-with-input.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/Workflow/Integration/exe-script.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/Workflow/Integration/helloWorld.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/Workflow/Regression/helloWorld.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/Workflow/Regression/helloWorld.xml +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/tests/__init__.py +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC.egg-info/dependency_links.txt +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC.egg-info/entry_points.txt +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC.egg-info/not-zip-safe +0 -0
- {dirac-9.0.1 → dirac-9.0.4}/src/DIRAC.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: DIRAC
|
|
3
|
-
Version: 9.0.
|
|
3
|
+
Version: 9.0.4
|
|
4
4
|
Summary: DIRAC is an interware, meaning a software framework for distributed computing.
|
|
5
5
|
Home-page: https://github.com/DIRACGrid/DIRAC/
|
|
6
6
|
License: GPL-3.0-only
|
|
@@ -19,9 +19,10 @@ Requires-Dist: cachetools
|
|
|
19
19
|
Requires-Dist: certifi
|
|
20
20
|
Requires-Dist: cwltool
|
|
21
21
|
Requires-Dist: diraccfg
|
|
22
|
-
Requires-Dist: DIRACCommon==v9.0.
|
|
23
|
-
Requires-Dist: diracx-client>=v0.0.
|
|
24
|
-
Requires-Dist: diracx-core>=v0.0.
|
|
22
|
+
Requires-Dist: DIRACCommon==v9.0.4
|
|
23
|
+
Requires-Dist: diracx-client>=v0.0.1
|
|
24
|
+
Requires-Dist: diracx-core>=v0.0.1
|
|
25
|
+
Requires-Dist: diracx-cli>=v0.0.1
|
|
25
26
|
Requires-Dist: db12
|
|
26
27
|
Requires-Dist: fts3
|
|
27
28
|
Requires-Dist: gfal2-python
|
|
@@ -40,7 +41,6 @@ Requires-Dist: python-dateutil
|
|
|
40
41
|
Requires-Dist: pytz
|
|
41
42
|
Requires-Dist: requests
|
|
42
43
|
Requires-Dist: rucio-clients>=34.4.2
|
|
43
|
-
Requires-Dist: setuptools
|
|
44
44
|
Requires-Dist: sqlalchemy
|
|
45
45
|
Requires-Dist: typing_extensions>=4.3.0
|
|
46
46
|
Requires-Dist: Authlib>=1.0.0.a2
|
|
@@ -1,3 +1,41 @@
|
|
|
1
|
+
[v9.0.4]
|
|
2
|
+
[v9.0.3]
|
|
3
|
+
|
|
4
|
+
*DiracX
|
|
5
|
+
|
|
6
|
+
NEW: (#8347) Depend on released versions of DiracX
|
|
7
|
+
NEW: (#8347) Depend on diracx-cli to ease management of DiracX CS conversion
|
|
8
|
+
|
|
9
|
+
*FrameworkSystem
|
|
10
|
+
|
|
11
|
+
CHANGE: (#8324) Remove Registry/group option VOMSVO (simply use "VO")
|
|
12
|
+
|
|
13
|
+
[v9.0.2]
|
|
14
|
+
|
|
15
|
+
*MonitoringSystem
|
|
16
|
+
|
|
17
|
+
FIX: (#8343) remove Setup remnants
|
|
18
|
+
|
|
19
|
+
*CERNLDAPSyncPlugin
|
|
20
|
+
|
|
21
|
+
FIX: (#8341) cernAccountType is a list -- ensure CERNPersonId filled correctly
|
|
22
|
+
NEW: (#8334) sync CCID / CERN Person ID to CS
|
|
23
|
+
|
|
24
|
+
*WorkloadManagement
|
|
25
|
+
|
|
26
|
+
FIX: (#8340) Site Director stops trying to leverage banned CEs
|
|
27
|
+
FIX: (#8338) TokenManager - pass audience parameter as resource to fetchToken() to satisfy Check-In
|
|
28
|
+
|
|
29
|
+
*General
|
|
30
|
+
|
|
31
|
+
Remove setuptools from runtime dependencies, no longer required.
|
|
32
|
+
|
|
33
|
+
*Core
|
|
34
|
+
|
|
35
|
+
CHANGE: (#8323) Agressively close connections when serivces are overloaded
|
|
36
|
+
For examples look into release.notes
|
|
37
|
+
CHANGE: (#8312) allow one and only one diracx token in the proxy file
|
|
38
|
+
|
|
1
39
|
[v9.0.1]
|
|
2
40
|
|
|
3
41
|
*WorkloadManagementSystem
|
|
@@ -26,9 +26,10 @@ install_requires =
|
|
|
26
26
|
certifi
|
|
27
27
|
cwltool
|
|
28
28
|
diraccfg
|
|
29
|
-
DIRACCommon==v9.0.
|
|
30
|
-
diracx-client >=v0.0.
|
|
31
|
-
diracx-core >=v0.0.
|
|
29
|
+
DIRACCommon==v9.0.4
|
|
30
|
+
diracx-client >=v0.0.1
|
|
31
|
+
diracx-core >=v0.0.1
|
|
32
|
+
diracx-cli >=v0.0.1
|
|
32
33
|
db12
|
|
33
34
|
fts3
|
|
34
35
|
gfal2-python
|
|
@@ -47,7 +48,6 @@ install_requires =
|
|
|
47
48
|
pytz
|
|
48
49
|
requests
|
|
49
50
|
rucio-clients >=34.4.2
|
|
50
|
-
setuptools
|
|
51
51
|
sqlalchemy
|
|
52
52
|
typing_extensions >=4.3.0
|
|
53
53
|
Authlib >=1.0.0.a2
|
|
@@ -4,15 +4,6 @@ Some Helper functions to retrieve common location from the CS
|
|
|
4
4
|
from DIRAC.Core.Utilities.Extensions import extensionsByPriority
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
def getSetup() -> str:
|
|
8
|
-
"""
|
|
9
|
-
Return setup name
|
|
10
|
-
"""
|
|
11
|
-
from DIRAC import gConfig
|
|
12
|
-
|
|
13
|
-
return gConfig.getValue("/DIRAC/Setup", "")
|
|
14
|
-
|
|
15
|
-
|
|
16
7
|
def getVO(defaultVO: str = "") -> str:
|
|
17
8
|
"""
|
|
18
9
|
Return VO from configuration
|
|
@@ -3,18 +3,14 @@
|
|
|
3
3
|
import errno
|
|
4
4
|
import inspect
|
|
5
5
|
import sys
|
|
6
|
-
|
|
7
|
-
from threading import Lock
|
|
8
6
|
from collections.abc import Iterable
|
|
7
|
+
from threading import Lock
|
|
8
|
+
from typing import Optional
|
|
9
9
|
|
|
10
10
|
from cachetools import TTLCache, cached
|
|
11
11
|
from cachetools.keys import hashkey
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
from typing import Optional
|
|
15
|
-
from collections.abc import Iterable
|
|
16
|
-
|
|
17
|
-
from DIRAC import S_OK, S_ERROR
|
|
13
|
+
from DIRAC import S_ERROR, S_OK
|
|
18
14
|
from DIRAC.ConfigurationSystem.Client.Config import gConfig
|
|
19
15
|
from DIRAC.ConfigurationSystem.Client.Helpers.CSGlobals import getVO
|
|
20
16
|
|
|
@@ -488,28 +484,6 @@ def getVOMSAttributeForGroup(group):
|
|
|
488
484
|
return gConfig.getValue(f"{gBaseRegistrySection}/Groups/{group}/VOMSRole", getDefaultVOMSAttribute())
|
|
489
485
|
|
|
490
486
|
|
|
491
|
-
def getDefaultVOMSVO():
|
|
492
|
-
"""Get default VOMS VO
|
|
493
|
-
|
|
494
|
-
:return: str
|
|
495
|
-
"""
|
|
496
|
-
return gConfig.getValue(f"{gBaseRegistrySection}/DefaultVOMSVO", "") or getVO()
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
def getVOMSVOForGroup(group):
|
|
500
|
-
"""Search VOMS VO for group
|
|
501
|
-
|
|
502
|
-
:param str group: group name
|
|
503
|
-
|
|
504
|
-
:return: str
|
|
505
|
-
"""
|
|
506
|
-
vomsVO = gConfig.getValue(f"{gBaseRegistrySection}/Groups/{group}/VOMSVO", getDefaultVOMSVO())
|
|
507
|
-
if not vomsVO:
|
|
508
|
-
vo = getVOForGroup(group)
|
|
509
|
-
vomsVO = getVOOption(vo, "VOMSName", "")
|
|
510
|
-
return vomsVO
|
|
511
|
-
|
|
512
|
-
|
|
513
487
|
def getGroupsWithVOMSAttribute(vomsAttr):
|
|
514
488
|
"""Search groups with VOMS attribute
|
|
515
489
|
|
{dirac-9.0.1 → dirac-9.0.4}/src/DIRAC/ConfigurationSystem/Client/SyncPlugins/CERNLDAPSyncPlugin.py
RENAMED
|
@@ -32,6 +32,9 @@ class CERNLDAPSyncPlugin:
|
|
|
32
32
|
else:
|
|
33
33
|
userDict["PrimaryCERNAccount"] = self._findOwnerAccountName(username, attributes)
|
|
34
34
|
|
|
35
|
+
if userDict["CERNAccountType"] in ["Primary", "Secondary"]:
|
|
36
|
+
userDict["CERNPersonId"] = attributes.get("employeeId", [None])[0]
|
|
37
|
+
|
|
35
38
|
def _findOwnerAccountName(self, username, attributes):
|
|
36
39
|
"""Find the owner account from a CERN LDAP entry.
|
|
37
40
|
|
|
@@ -64,7 +67,7 @@ class CERNLDAPSyncPlugin:
|
|
|
64
67
|
status, result, response, _ = self._connection.search(
|
|
65
68
|
"OU=Users,OU=Organic Units,DC=cern,DC=ch",
|
|
66
69
|
f"(CN={commonName})",
|
|
67
|
-
attributes=["cernAccountOwner", "cernAccountType"],
|
|
70
|
+
attributes=["cernAccountOwner", "cernAccountType", "employeeId"],
|
|
68
71
|
)
|
|
69
72
|
if not status:
|
|
70
73
|
raise ValueError(f"Bad status from LDAP search: {result}")
|
|
@@ -200,6 +200,7 @@ class ServiceReactor:
|
|
|
200
200
|
services at the same time
|
|
201
201
|
"""
|
|
202
202
|
sel = self.__getListeningSelector(svcName)
|
|
203
|
+
throttleExpires = None
|
|
203
204
|
while self.__alive:
|
|
204
205
|
clientTransport = None
|
|
205
206
|
try:
|
|
@@ -223,12 +224,19 @@ class ServiceReactor:
|
|
|
223
224
|
gLogger.warn(f"Client connected from banned ip {clientIP}")
|
|
224
225
|
clientTransport.close()
|
|
225
226
|
continue
|
|
227
|
+
# Handle throttling
|
|
228
|
+
if self.__services[svcName].wantsThrottle and throttleExpires is None:
|
|
229
|
+
throttleExpires = time.time() + THROTTLE_SERVICE_SLEEP_SECONDS
|
|
230
|
+
if throttleExpires:
|
|
231
|
+
if time.time() > throttleExpires:
|
|
232
|
+
throttleExpires = None
|
|
233
|
+
else:
|
|
234
|
+
gLogger.warn("Rejecting client due to throttling", str(clientTransport.getRemoteAddress()))
|
|
235
|
+
clientTransport.close()
|
|
236
|
+
continue
|
|
226
237
|
# Handle connection
|
|
227
238
|
self.__stats.connectionStablished()
|
|
228
239
|
self.__services[svcName].handleConnection(clientTransport)
|
|
229
|
-
while self.__services[svcName].wantsThrottle:
|
|
230
|
-
gLogger.warn("Sleeping as service requested throttling", svcName)
|
|
231
|
-
time.sleep(THROTTLE_SERVICE_SLEEP_SECONDS)
|
|
232
240
|
# Renew context?
|
|
233
241
|
now = time.time()
|
|
234
242
|
renewed = False
|
|
@@ -40,7 +40,7 @@ from DIRAC.Core.Utilities.ReturnValues import convertToReturnValue, returnValueO
|
|
|
40
40
|
|
|
41
41
|
PEM_BEGIN = "-----BEGIN DIRACX-----"
|
|
42
42
|
PEM_END = "-----END DIRACX-----"
|
|
43
|
-
RE_DIRACX_PEM = re.compile(rf"{PEM_BEGIN}\n(
|
|
43
|
+
RE_DIRACX_PEM = re.compile(rf"{PEM_BEGIN}\n(.*?)\n{PEM_END}", re.DOTALL)
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
@convertToReturnValue
|
|
@@ -62,21 +62,26 @@ def addTokenToPEM(pemPath, group):
|
|
|
62
62
|
token_type=token_content.get("token_type"),
|
|
63
63
|
refresh_token=token_content.get("refresh_token"),
|
|
64
64
|
)
|
|
65
|
-
|
|
66
65
|
token_pem = f"{PEM_BEGIN}\n"
|
|
67
66
|
data = base64.b64encode(serialize_credentials(token).encode("utf-8")).decode()
|
|
68
67
|
token_pem += textwrap.fill(data, width=64)
|
|
69
68
|
token_pem += f"\n{PEM_END}\n"
|
|
70
69
|
|
|
71
|
-
|
|
72
|
-
|
|
70
|
+
pem = Path(pemPath).read_text()
|
|
71
|
+
# Remove any existing DiracX token there would be
|
|
72
|
+
new_pem = re.sub(RE_DIRACX_PEM, "", pem)
|
|
73
|
+
new_pem += token_pem
|
|
74
|
+
|
|
75
|
+
Path(pemPath).write_text(new_pem)
|
|
73
76
|
|
|
74
77
|
|
|
75
78
|
def diracxTokenFromPEM(pemPath) -> dict[str, Any] | None:
|
|
76
79
|
"""Extract the DiracX token from the proxy PEM file"""
|
|
77
80
|
pem = Path(pemPath).read_text()
|
|
78
|
-
if match := RE_DIRACX_PEM.
|
|
79
|
-
match
|
|
81
|
+
if match := RE_DIRACX_PEM.findall(pem):
|
|
82
|
+
if len(match) > 1:
|
|
83
|
+
raise ValueError("Found multiple DiracX tokens, this should never happen")
|
|
84
|
+
match = match[0]
|
|
80
85
|
return json.loads(base64.b64decode(match).decode("utf-8"))
|
|
81
86
|
|
|
82
87
|
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import base64
|
|
2
|
+
import json
|
|
3
|
+
import pytest
|
|
4
|
+
import tempfile
|
|
5
|
+
from pathlib import Path
|
|
6
|
+
from unittest.mock import patch, mock_open
|
|
7
|
+
|
|
8
|
+
from DIRAC.Core.Security.DiracX import diracxTokenFromPEM, PEM_BEGIN, PEM_END, RE_DIRACX_PEM
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class TestDiracxTokenFromPEM:
|
|
12
|
+
"""Test cases for diracxTokenFromPEM function"""
|
|
13
|
+
|
|
14
|
+
def create_valid_token_data(self):
|
|
15
|
+
"""Create valid token data for testing"""
|
|
16
|
+
return {
|
|
17
|
+
"access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.test",
|
|
18
|
+
"refresh_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.refresh",
|
|
19
|
+
"expires_in": 3600,
|
|
20
|
+
"token_type": "Bearer",
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
def create_pem_content(self, token_data=None, include_other_content=True):
|
|
24
|
+
"""Create PEM content with embedded DiracX token"""
|
|
25
|
+
if token_data is None:
|
|
26
|
+
token_data = self.create_valid_token_data()
|
|
27
|
+
|
|
28
|
+
# Encode token data
|
|
29
|
+
token_json = json.dumps(token_data)
|
|
30
|
+
encoded_token = base64.b64encode(token_json.encode("utf-8")).decode()
|
|
31
|
+
|
|
32
|
+
# Create PEM content
|
|
33
|
+
pem_content = ""
|
|
34
|
+
if include_other_content:
|
|
35
|
+
pem_content += "-----BEGIN CERTIFICATE-----\n"
|
|
36
|
+
pem_content += "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA...\n"
|
|
37
|
+
pem_content += "-----END CERTIFICATE-----\n"
|
|
38
|
+
|
|
39
|
+
pem_content += f"{PEM_BEGIN}\n"
|
|
40
|
+
pem_content += encoded_token + "\n"
|
|
41
|
+
pem_content += f"{PEM_END}\n"
|
|
42
|
+
|
|
43
|
+
return pem_content
|
|
44
|
+
|
|
45
|
+
def test_valid_token_extraction(self):
|
|
46
|
+
"""Test successful extraction of valid token from PEM file"""
|
|
47
|
+
token_data = self.create_valid_token_data()
|
|
48
|
+
pem_content = self.create_pem_content(token_data)
|
|
49
|
+
|
|
50
|
+
with tempfile.NamedTemporaryFile(mode="w", delete=False, suffix=".pem") as f:
|
|
51
|
+
f.write(pem_content)
|
|
52
|
+
temp_path = f.name
|
|
53
|
+
|
|
54
|
+
try:
|
|
55
|
+
result = diracxTokenFromPEM(temp_path)
|
|
56
|
+
assert result == token_data
|
|
57
|
+
finally:
|
|
58
|
+
Path(temp_path).unlink()
|
|
59
|
+
|
|
60
|
+
def test_no_token_in_pem(self):
|
|
61
|
+
"""Test behavior when no DiracX token is present in PEM file"""
|
|
62
|
+
pem_content = """-----BEGIN CERTIFICATE-----
|
|
63
|
+
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA...
|
|
64
|
+
-----END CERTIFICATE-----"""
|
|
65
|
+
|
|
66
|
+
with tempfile.NamedTemporaryFile(mode="w", delete=False, suffix=".pem") as f:
|
|
67
|
+
f.write(pem_content)
|
|
68
|
+
temp_path = f.name
|
|
69
|
+
|
|
70
|
+
try:
|
|
71
|
+
result = diracxTokenFromPEM(temp_path)
|
|
72
|
+
assert result is None
|
|
73
|
+
finally:
|
|
74
|
+
Path(temp_path).unlink()
|
|
75
|
+
|
|
76
|
+
def test_multiple_tokens_error(self):
|
|
77
|
+
"""Test that multiple tokens raise ValueError"""
|
|
78
|
+
token_data = self.create_valid_token_data()
|
|
79
|
+
|
|
80
|
+
# Create PEM with two tokens
|
|
81
|
+
pem_content = self.create_pem_content(token_data)
|
|
82
|
+
pem_content += "\n" + self.create_pem_content(token_data, include_other_content=False)
|
|
83
|
+
|
|
84
|
+
with tempfile.NamedTemporaryFile(mode="w", delete=False, suffix=".pem") as f:
|
|
85
|
+
f.write(pem_content)
|
|
86
|
+
temp_path = f.name
|
|
87
|
+
|
|
88
|
+
try:
|
|
89
|
+
with pytest.raises(ValueError, match="Found multiple DiracX tokens"):
|
|
90
|
+
diracxTokenFromPEM(temp_path)
|
|
91
|
+
finally:
|
|
92
|
+
Path(temp_path).unlink()
|
|
93
|
+
|
|
94
|
+
def test_malformed_base64(self):
|
|
95
|
+
"""Test behavior with malformed base64 data"""
|
|
96
|
+
pem_content = f"""{PEM_BEGIN}
|
|
97
|
+
invalid_base64_data_that_will_cause_error!
|
|
98
|
+
{PEM_END}"""
|
|
99
|
+
|
|
100
|
+
with tempfile.NamedTemporaryFile(mode="w", delete=False, suffix=".pem") as f:
|
|
101
|
+
f.write(pem_content)
|
|
102
|
+
temp_path = f.name
|
|
103
|
+
|
|
104
|
+
try:
|
|
105
|
+
with pytest.raises(Exception): # base64.b64decode will raise an exception
|
|
106
|
+
diracxTokenFromPEM(temp_path)
|
|
107
|
+
finally:
|
|
108
|
+
Path(temp_path).unlink()
|
|
109
|
+
|
|
110
|
+
def test_invalid_json_in_token(self):
|
|
111
|
+
"""Test behavior with invalid JSON in token data"""
|
|
112
|
+
invalid_json = "this is not valid json"
|
|
113
|
+
encoded_invalid = base64.b64encode(invalid_json.encode("utf-8")).decode()
|
|
114
|
+
|
|
115
|
+
pem_content = f"""{PEM_BEGIN}
|
|
116
|
+
{encoded_invalid}
|
|
117
|
+
{PEM_END}"""
|
|
118
|
+
|
|
119
|
+
with tempfile.NamedTemporaryFile(mode="w", delete=False, suffix=".pem") as f:
|
|
120
|
+
f.write(pem_content)
|
|
121
|
+
temp_path = f.name
|
|
122
|
+
|
|
123
|
+
try:
|
|
124
|
+
with pytest.raises(json.JSONDecodeError):
|
|
125
|
+
diracxTokenFromPEM(temp_path)
|
|
126
|
+
finally:
|
|
127
|
+
Path(temp_path).unlink()
|
|
128
|
+
|
|
129
|
+
def test_token_with_unicode_characters(self):
|
|
130
|
+
"""Test token with unicode characters"""
|
|
131
|
+
unicode_token = {
|
|
132
|
+
"access_token": "token_with_unicode_ñ_é_ü",
|
|
133
|
+
"refresh_token": "refresh_with_emoji_🚀_🎉",
|
|
134
|
+
"expires_in": 3600,
|
|
135
|
+
"token_type": "Bearer",
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
pem_content = self.create_pem_content(unicode_token)
|
|
139
|
+
|
|
140
|
+
with tempfile.NamedTemporaryFile(mode="w", delete=False, suffix=".pem") as f:
|
|
141
|
+
f.write(pem_content)
|
|
142
|
+
temp_path = f.name
|
|
143
|
+
|
|
144
|
+
try:
|
|
145
|
+
result = diracxTokenFromPEM(temp_path)
|
|
146
|
+
assert result == unicode_token
|
|
147
|
+
finally:
|
|
148
|
+
Path(temp_path).unlink()
|
|
149
|
+
|
|
150
|
+
def test_regex_pattern_validation(self):
|
|
151
|
+
"""Test that the regex pattern correctly identifies DiracX tokens"""
|
|
152
|
+
# Test that the regex matches the expected pattern
|
|
153
|
+
token_data = self.create_valid_token_data()
|
|
154
|
+
token_json = json.dumps(token_data)
|
|
155
|
+
encoded_token = base64.b64encode(token_json.encode("utf-8")).decode()
|
|
156
|
+
|
|
157
|
+
test_content = f"{PEM_BEGIN}\n{encoded_token}\n{PEM_END}"
|
|
158
|
+
matches = RE_DIRACX_PEM.findall(test_content)
|
|
159
|
+
|
|
160
|
+
assert len(matches) == 1
|
|
161
|
+
assert matches[0] == encoded_token
|
|
@@ -73,7 +73,7 @@ class TornadoService(BaseRequestHandler): # pylint: disable=abstract-method
|
|
|
73
73
|
:py:class:`BaseRequestHandler <DIRAC.Core.Tornado.Server.private.BaseRequestHandler.BaseRequestHandler>` for more details.
|
|
74
74
|
|
|
75
75
|
In order to pass information around and keep some states, we use instance attributes.
|
|
76
|
-
These are initialized in the
|
|
76
|
+
These are initialized in the ``initialize`` methods.
|
|
77
77
|
|
|
78
78
|
The handler only define the ``post`` verb. Please refer to :py:meth:`.post` for the details.
|
|
79
79
|
|
|
@@ -29,50 +29,50 @@ def test_base():
|
|
|
29
29
|
time.sleep(1)
|
|
30
30
|
p = Profiler(mainProcess.pid)
|
|
31
31
|
res = p.pid()
|
|
32
|
-
assert res["OK"] is True
|
|
32
|
+
assert res["OK"] is True, res
|
|
33
33
|
res = p.status()
|
|
34
|
-
assert res["OK"] is True
|
|
34
|
+
assert res["OK"] is True, res
|
|
35
35
|
res = p.runningTime()
|
|
36
|
-
assert res["OK"] is True
|
|
36
|
+
assert res["OK"] is True, res
|
|
37
37
|
assert res["Value"] > 0
|
|
38
38
|
|
|
39
39
|
res = p.memoryUsage()
|
|
40
|
-
assert res["OK"] is True
|
|
40
|
+
assert res["OK"] is True, res
|
|
41
41
|
assert res["Value"] > 0
|
|
42
42
|
resWC = p.memoryUsage(withChildren=True)
|
|
43
|
-
assert resWC["OK"] is True
|
|
43
|
+
assert resWC["OK"] is True, res
|
|
44
44
|
assert resWC["Value"] > 0
|
|
45
45
|
assert resWC["Value"] >= res["Value"]
|
|
46
46
|
|
|
47
47
|
res = p.vSizeUsage()
|
|
48
|
-
assert res["OK"] is True
|
|
48
|
+
assert res["OK"] is True, res
|
|
49
49
|
assert res["Value"] > 0
|
|
50
50
|
resWC = p.vSizeUsage(withChildren=True)
|
|
51
|
-
assert resWC["OK"] is True
|
|
51
|
+
assert resWC["OK"] is True, res
|
|
52
52
|
assert resWC["Value"] > 0
|
|
53
53
|
assert resWC["Value"] >= res["Value"]
|
|
54
54
|
|
|
55
55
|
res = p.vSizeUsage()
|
|
56
|
-
assert res["OK"] is True
|
|
56
|
+
assert res["OK"] is True, res
|
|
57
57
|
assert res["Value"] > 0
|
|
58
58
|
resWC = p.vSizeUsage(withChildren=True)
|
|
59
|
-
assert resWC["OK"] is True
|
|
59
|
+
assert resWC["OK"] is True, res
|
|
60
60
|
assert resWC["Value"] > 0
|
|
61
61
|
assert resWC["Value"] >= res["Value"]
|
|
62
62
|
|
|
63
63
|
res = p.numThreads()
|
|
64
|
-
assert res["OK"] is True
|
|
64
|
+
assert res["OK"] is True, res
|
|
65
65
|
assert res["Value"] > 0
|
|
66
66
|
resWC = p.numThreads(withChildren=True)
|
|
67
|
-
assert resWC["OK"] is True
|
|
67
|
+
assert resWC["OK"] is True, res
|
|
68
68
|
assert resWC["Value"] > 0
|
|
69
69
|
assert resWC["Value"] >= res["Value"]
|
|
70
70
|
|
|
71
71
|
res = p.cpuPercentage()
|
|
72
|
-
assert res["OK"] is True
|
|
72
|
+
assert res["OK"] is True, res
|
|
73
73
|
assert res["Value"] >= 0
|
|
74
74
|
resWC = p.cpuPercentage(withChildren=True)
|
|
75
|
-
assert resWC["OK"] is True
|
|
75
|
+
assert resWC["OK"] is True, res
|
|
76
76
|
assert resWC["Value"] >= 0
|
|
77
77
|
assert resWC["Value"] >= res["Value"]
|
|
78
78
|
|
|
@@ -88,13 +88,13 @@ def test_cpuUsage():
|
|
|
88
88
|
time.sleep(2)
|
|
89
89
|
p = Profiler(mainProcess.pid)
|
|
90
90
|
res = p.pid()
|
|
91
|
-
assert res["OK"] is True
|
|
91
|
+
assert res["OK"] is True, res
|
|
92
92
|
res = p.status()
|
|
93
|
-
assert res["OK"] is True
|
|
93
|
+
assert res["OK"] is True, res
|
|
94
94
|
|
|
95
95
|
# user
|
|
96
96
|
res = p.cpuUsageUser()
|
|
97
|
-
assert res["OK"] is True
|
|
97
|
+
assert res["OK"] is True, res
|
|
98
98
|
assert res["Value"] > 0
|
|
99
99
|
resC = p.cpuUsageUser(withChildren=True)
|
|
100
100
|
assert resC["OK"] is True
|
|
@@ -102,7 +102,7 @@ def test_cpuUsage():
|
|
|
102
102
|
assert resC["Value"] >= res["Value"]
|
|
103
103
|
|
|
104
104
|
res = p.cpuUsageUser()
|
|
105
|
-
assert res["OK"] is True
|
|
105
|
+
assert res["OK"] is True, res
|
|
106
106
|
assert res["Value"] > 0
|
|
107
107
|
resC = p.cpuUsageUser(withChildren=True)
|
|
108
108
|
assert resC["OK"] is True
|
|
@@ -121,15 +121,15 @@ def test_cpuUsage():
|
|
|
121
121
|
|
|
122
122
|
# system
|
|
123
123
|
res = p.cpuUsageSystem()
|
|
124
|
-
assert res["OK"] is True
|
|
124
|
+
assert res["OK"] is True, res
|
|
125
125
|
assert res["Value"] >= 0
|
|
126
126
|
resWC = p.cpuUsageSystem(withChildren=True)
|
|
127
|
-
assert resWC["OK"] is True
|
|
127
|
+
assert resWC["OK"] is True, res
|
|
128
128
|
assert resWC["Value"] >= 0
|
|
129
129
|
assert resWC["Value"] >= res["Value"]
|
|
130
130
|
|
|
131
131
|
res = p.cpuUsageSystem()
|
|
132
|
-
assert res["OK"] is True
|
|
132
|
+
assert res["OK"] is True, res
|
|
133
133
|
assert res["Value"] > 0
|
|
134
134
|
resC = p.cpuUsageSystem(withChildren=True)
|
|
135
135
|
assert resC["OK"] is True
|
|
@@ -601,13 +601,13 @@ class ProxyDB(DB):
|
|
|
601
601
|
:return: S_OK(dict)/S_ERROR() -- dict contain attribute and VOMS VO
|
|
602
602
|
"""
|
|
603
603
|
if requiredVOMSAttribute:
|
|
604
|
-
return S_OK({"attribute": requiredVOMSAttribute, "
|
|
604
|
+
return S_OK({"attribute": requiredVOMSAttribute, "VO": Registry.getVOForGroup(userGroup)})
|
|
605
605
|
|
|
606
606
|
csVOMSMapping = Registry.getVOMSAttributeForGroup(userGroup)
|
|
607
607
|
if not csVOMSMapping:
|
|
608
608
|
return S_ERROR(f"No mapping defined for group {userGroup} in the CS")
|
|
609
609
|
|
|
610
|
-
return S_OK({"attribute": csVOMSMapping, "
|
|
610
|
+
return S_OK({"attribute": csVOMSMapping, "VO": Registry.getVOForGroup(userGroup)})
|
|
611
611
|
|
|
612
612
|
def getVOMSProxy(self, userDN, userGroup, requiredLifeTime=None, requestedVOMSAttr=None):
|
|
613
613
|
"""Get proxy string from the Proxy Repository for use with userDN
|
|
@@ -624,7 +624,7 @@ class ProxyDB(DB):
|
|
|
624
624
|
if not retVal["OK"]:
|
|
625
625
|
return retVal
|
|
626
626
|
vomsAttr = retVal["Value"]["attribute"]
|
|
627
|
-
vomsVO = retVal["Value"]["
|
|
627
|
+
vomsVO = retVal["Value"]["VO"]
|
|
628
628
|
|
|
629
629
|
# Look in the cache
|
|
630
630
|
retVal = self.__getPemAndTimeLeft(userDN, userGroup, vomsAttr)
|
|
@@ -38,8 +38,8 @@ Script.disableCS()
|
|
|
38
38
|
from DIRAC.ConfigurationSystem.Client.Helpers.Registry import (
|
|
39
39
|
findDefaultGroupForDN,
|
|
40
40
|
getGroupOption,
|
|
41
|
+
getVOForGroup,
|
|
41
42
|
getVOMSAttributeForGroup,
|
|
42
|
-
getVOMSVOForGroup,
|
|
43
43
|
)
|
|
44
44
|
from DIRAC.FrameworkSystem.Client.ProxyManagerClient import gProxyManager
|
|
45
45
|
from DIRAC.FrameworkSystem.private.authorization.utils.Tokens import (
|
|
@@ -285,7 +285,7 @@ class Params:
|
|
|
285
285
|
if not (vomsAttr := getVOMSAttributeForGroup(self.group)):
|
|
286
286
|
print(HTML(f"<yellow>No VOMS attribute foud for {self.group}</yellow>"))
|
|
287
287
|
else:
|
|
288
|
-
vo =
|
|
288
|
+
vo = getVOForGroup(self.group)
|
|
289
289
|
if not (result := VOMS().setVOMSAttributes(self.outputFile, attribute=vomsAttr, vo=vo))["OK"]:
|
|
290
290
|
return S_ERROR(f"Failed adding VOMS attribute: {result['Message']}")
|
|
291
291
|
chain = result["Value"]
|
|
@@ -96,7 +96,7 @@ class ProxyInit:
|
|
|
96
96
|
)
|
|
97
97
|
|
|
98
98
|
resultVomsAttributes = VOMS.VOMS().setVOMSAttributes(
|
|
99
|
-
self.__proxyGenerated, attribute=vomsAttr, vo=Registry.
|
|
99
|
+
self.__proxyGenerated, attribute=vomsAttr, vo=Registry.getVOForGroup(self.__piParams.diracGroup)
|
|
100
100
|
)
|
|
101
101
|
if not resultVomsAttributes["OK"]:
|
|
102
102
|
return S_ERROR(
|
|
@@ -5,8 +5,7 @@ Wrapper on top of ElasticDB. It is used to manage the DIRAC monitoring types.
|
|
|
5
5
|
|
|
6
6
|
The following option can be set in `Systems/Monitoring/Databases/MonitoringDB`
|
|
7
7
|
|
|
8
|
-
* *IndexPrefix*: Prefix used to prepend to indexes created in the
|
|
9
|
-
is not present in the CS, the indexes are prefixed with the setup name.
|
|
8
|
+
* *IndexPrefix*: Prefix used to prepend to indexes created in the OpenSearch instance.
|
|
10
9
|
|
|
11
10
|
For each monitoring types managed, the Period (how often a new index is created)
|
|
12
11
|
can be defined with::
|
|
@@ -33,7 +32,6 @@ import time
|
|
|
33
32
|
|
|
34
33
|
from DIRAC import S_ERROR, S_OK
|
|
35
34
|
from DIRAC.ConfigurationSystem.Client.Config import gConfig
|
|
36
|
-
from DIRAC.ConfigurationSystem.Client.Helpers import CSGlobals
|
|
37
35
|
from DIRAC.ConfigurationSystem.Client.PathFinder import getDatabaseSection
|
|
38
36
|
from DIRAC.Core.Base.ElasticDB import ElasticDB
|
|
39
37
|
from DIRAC.Core.Utilities.Plotting.TypeLoader import TypeLoader
|
|
@@ -48,7 +46,7 @@ class MonitoringDB(ElasticDB):
|
|
|
48
46
|
|
|
49
47
|
try:
|
|
50
48
|
section = getDatabaseSection("Monitoring/MonitoringDB")
|
|
51
|
-
indexPrefix = gConfig.getValue(f"{section}/IndexPrefix",
|
|
49
|
+
indexPrefix = gConfig.getValue(f"{section}/IndexPrefix", "").lower()
|
|
52
50
|
# Connecting to the ES cluster
|
|
53
51
|
super().__init__(fullName=name, indexPrefix=indexPrefix)
|
|
54
52
|
except RuntimeError as ex:
|
|
@@ -192,7 +190,10 @@ class MonitoringDB(ElasticDB):
|
|
|
192
190
|
# and now we group with bucket aggregation
|
|
193
191
|
groupingAggregation = self._A("terms", field=grouping, size=self.RESULT_SIZE)
|
|
194
192
|
groupingAggregation.bucket(
|
|
195
|
-
"end_data",
|
|
193
|
+
"end_data",
|
|
194
|
+
"date_histogram",
|
|
195
|
+
field="timestamp",
|
|
196
|
+
interval=interval,
|
|
196
197
|
).metric("timeAggregation", timeAggregation).pipeline(
|
|
197
198
|
"timeAggregation_avg_bucket", "avg_bucket", buckets_path="timeAggregation>total", gap_policy="insert_zeros"
|
|
198
199
|
)
|
|
@@ -28,19 +28,29 @@ class WebAppHandler(RequestHandler):
|
|
|
28
28
|
result = ObjectLoader().loadObject("WorkloadManagementSystem.DB.PilotAgentsDB", "PilotAgentsDB")
|
|
29
29
|
if not result["OK"]:
|
|
30
30
|
return result
|
|
31
|
-
|
|
31
|
+
try:
|
|
32
|
+
cls.pilotAgentsDB = result["Value"](parentLogger=cls.log)
|
|
33
|
+
except RuntimeError:
|
|
34
|
+
cls.log.warn("Could not connect to PilotAgentsDB")
|
|
32
35
|
|
|
33
36
|
result = ObjectLoader().loadObject("WorkloadManagementSystem.DB.JobDB", "JobDB")
|
|
34
37
|
if not result["OK"]:
|
|
35
38
|
return result
|
|
36
|
-
|
|
39
|
+
try:
|
|
40
|
+
cls.jobDB = result["Value"](parentLogger=cls.log)
|
|
41
|
+
except RuntimeError:
|
|
42
|
+
cls.log.warn("Could not connect to JobDB")
|
|
37
43
|
|
|
38
44
|
result = ObjectLoader().loadObject("TransformationSystem.DB.TransformationDB", "TransformationDB")
|
|
39
45
|
if not result["OK"]:
|
|
40
46
|
return result
|
|
41
|
-
|
|
47
|
+
try:
|
|
48
|
+
cls.transformationDB = result["Value"](parentLogger=cls.log)
|
|
49
|
+
except RuntimeError:
|
|
50
|
+
cls.log.warn("Could not connect to TransformationDB")
|
|
42
51
|
|
|
43
52
|
except RuntimeError as excp:
|
|
53
|
+
cls.log.exception()
|
|
44
54
|
return S_ERROR(f"Can't connect to DB: {excp}")
|
|
45
55
|
|
|
46
56
|
return S_OK()
|