rucio 34.4.2__tar.gz → 34.5.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of rucio might be problematic. Click here for more details.
- {rucio-34.4.2 → rucio-34.5.0}/PKG-INFO +1 -1
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio +4 -1
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/rule.py +108 -25
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/accountlimitclient.py +36 -6
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/baseclient.py +16 -7
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/configclient.py +18 -3
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/credentialclient.py +8 -1
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/didclient.py +216 -45
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/downloadclient.py +1 -1
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/lifetimeclient.py +20 -2
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/requestclient.py +34 -16
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/ruleclient.py +28 -20
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/subscriptionclient.py +39 -26
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/uploadclient.py +3 -2
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/config.py +4 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/logging.py +54 -37
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/pcache.py +114 -91
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/schema/generic.py +1 -1
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/types.py +44 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/utils.py +140 -95
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/account.py +97 -26
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/account_counter.py +56 -16
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/did_meta_plugins/filter_engine.py +58 -42
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/oidc.py +1 -1
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/replica.py +11 -3
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/abacus/account.py +7 -7
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/cache/consumer.py +3 -4
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/models.py +29 -18
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/util.py +41 -37
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/transfertool/fts3.py +95 -60
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/transfertool/fts3_plugins.py +2 -6
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/transfertool/mock.py +17 -9
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/transfertool/transfertool.py +21 -18
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/vcsversion.py +3 -3
- {rucio-34.4.2/lib/rucio/web/rest → rucio-34.5.0/lib/rucio/web}/__init__.py +0 -0
- {rucio-34.4.2/lib/rucio/web/rest/flaskapi → rucio-34.5.0/lib/rucio/web/rest}/__init__.py +0 -0
- rucio-34.5.0/lib/rucio/web/rest/flaskapi/v1/__init__.py +13 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_did.py +18 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_transfer_plugins.py +22 -4
- rucio-34.4.2/lib/rucio/daemons/cache/__init__.py +0 -14
- {rucio-34.4.2 → rucio-34.5.0}/AUTHORS.rst +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/ChangeLog +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/LICENSE +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/MANIFEST.in +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/README.rst +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-abacus-account +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-abacus-collection-replica +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-abacus-rse +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-admin +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-atropos +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-auditor +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-automatix +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-bb8 +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-c3po +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-cache-client +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-cache-consumer +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-conveyor-finisher +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-conveyor-poller +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-conveyor-preparer +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-conveyor-receiver +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-conveyor-stager +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-conveyor-submitter +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-conveyor-throttler +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-dark-reaper +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-dumper +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-follower +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-hermes +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-judge-cleaner +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-judge-evaluator +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-judge-injector +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-judge-repairer +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-kronos +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-minos +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-minos-temporary-expiration +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-necromancer +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-oauth-manager +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-reaper +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-replica-recoverer +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-rse-decommissioner +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-storage-consistency-actions +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-transmogrifier +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/bin/rucio-undertaker +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/etc/alembic.ini.template +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/etc/alembic_offline.ini.template +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/etc/globus-config.yml.template +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/etc/ldap.cfg.template +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/etc/mail_templates/rule_approval_request.tmpl +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/etc/mail_templates/rule_approved_admin.tmpl +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/etc/mail_templates/rule_approved_user.tmpl +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/etc/mail_templates/rule_denied_admin.tmpl +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/etc/mail_templates/rule_denied_user.tmpl +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/etc/mail_templates/rule_ok_notification.tmpl +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/etc/rse-accounts.cfg.template +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/etc/rucio.cfg.atlas.client.template +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/etc/rucio.cfg.template +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/etc/rucio_multi_vo.cfg.template +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/alembicrevision.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/account.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/account_limit.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/authentication.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/config.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/credential.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/did.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/dirac.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/exporter.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/heartbeat.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/identity.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/importer.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/lifetime_exception.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/lock.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/meta_conventions.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/permission.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/quarantined_replica.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/replica.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/request.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/rse.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/scope.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/subscription.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/api/vo.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/accountclient.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/client.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/diracclient.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/exportclient.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/fileclient.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/importclient.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/lockclient.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/metaconventionsclient.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/pingclient.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/replicaclient.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/rseclient.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/scopeclient.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/client/touchclient.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/cache.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/constants.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/constraints.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/didtype.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/dumper/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/dumper/consistency.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/dumper/data_models.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/dumper/path_parsing.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/exception.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/extra.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/plugins.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/policy.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/schema/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/schema/atlas.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/schema/belleii.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/schema/domatpc.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/schema/escape.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/schema/generic_multi_vo.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/schema/icecube.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/stomp_utils.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/stopwatch.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/common/test_rucio_server.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/account_limit.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/authentication.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/config.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/credential.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/did.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/did_meta_plugins/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/did_meta_plugins/did_column_meta.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/did_meta_plugins/did_meta_plugin_interface.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/did_meta_plugins/json_meta.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/did_meta_plugins/mongo_meta.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/did_meta_plugins/postgres_meta.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/dirac.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/distance.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/exporter.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/heartbeat.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/identity.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/importer.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/lifetime_exception.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/lock.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/message.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/meta_conventions.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/monitor.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/naming_convention.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/nongrid_trace.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/permission/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/permission/atlas.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/permission/belleii.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/permission/escape.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/permission/generic.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/permission/generic_multi_vo.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/quarantined_replica.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/replica_sorter.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/request.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/rse.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/rse_counter.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/rse_expression_parser.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/rse_selector.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/rule.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/rule_grouping.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/scope.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/subscription.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/topology.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/trace.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/transfer.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/vo.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/core/volatile_replica.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/abacus/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/abacus/collection_replica.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/abacus/rse.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/atropos/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/atropos/atropos.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/auditor/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/auditor/hdfs.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/auditor/srmdumps.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/automatix/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/automatix/automatix.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/badreplicas/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/badreplicas/minos.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/badreplicas/minos_temporary_expiration.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/badreplicas/necromancer.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/bb8/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/bb8/bb8.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/bb8/common.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/bb8/nuclei_background_rebalance.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/bb8/t2_background_rebalance.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/algorithms/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/algorithms/simple.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/algorithms/t2_free_space.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/algorithms/t2_free_space_only_pop.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/algorithms/t2_free_space_only_pop_with_network.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/c3po.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/collectors/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/collectors/agis.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/collectors/free_space.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/collectors/jedi_did.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/collectors/mock_did.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/collectors/network_metrics.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/collectors/workload.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/utils/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/utils/dataset_cache.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/utils/expiring_dataset_cache.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/utils/expiring_list.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/utils/popularity.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/c3po/utils/timeseries.py +0 -0
- {rucio-34.4.2/lib/rucio/daemons/conveyor → rucio-34.5.0/lib/rucio/daemons/cache}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/common.py +0 -0
- {rucio-34.4.2/lib/rucio/daemons/follower → rucio-34.5.0/lib/rucio/daemons/conveyor}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/conveyor/common.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/conveyor/finisher.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/conveyor/poller.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/conveyor/preparer.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/conveyor/receiver.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/conveyor/stager.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/conveyor/submitter.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/conveyor/throttler.py +0 -0
- {rucio-34.4.2/lib/rucio/daemons/hermes → rucio-34.5.0/lib/rucio/daemons/follower}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/follower/follower.py +0 -0
- {rucio-34.4.2/lib/rucio/daemons/judge → rucio-34.5.0/lib/rucio/daemons/hermes}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/hermes/hermes.py +0 -0
- {rucio-34.4.2/lib/rucio/daemons/oauthmanager → rucio-34.5.0/lib/rucio/daemons/judge}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/judge/cleaner.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/judge/evaluator.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/judge/injector.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/judge/repairer.py +0 -0
- {rucio-34.4.2/lib/rucio/daemons/reaper → rucio-34.5.0/lib/rucio/daemons/oauthmanager}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/oauthmanager/oauthmanager.py +0 -0
- {rucio-34.4.2/lib/rucio/daemons/replicarecoverer → rucio-34.5.0/lib/rucio/daemons/reaper}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/reaper/dark_reaper.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/reaper/reaper.py +0 -0
- {rucio-34.4.2/lib/rucio/daemons/rsedecommissioner → rucio-34.5.0/lib/rucio/daemons/replicarecoverer}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/replicarecoverer/suspicious_replica_recoverer.py +0 -0
- {rucio-34.4.2/lib/rucio/daemons/storage → rucio-34.5.0/lib/rucio/daemons/rsedecommissioner}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/rsedecommissioner/config.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/rsedecommissioner/profiles/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/rsedecommissioner/profiles/atlas.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/rsedecommissioner/profiles/generic.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/rsedecommissioner/profiles/types.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/rsedecommissioner/rse_decommissioner.py +0 -0
- {rucio-34.4.2/lib/rucio/daemons/storage/consistency → rucio-34.5.0/lib/rucio/daemons/storage}/__init__.py +0 -0
- {rucio-34.4.2/lib/rucio/daemons/tracer → rucio-34.5.0/lib/rucio/daemons/storage/consistency}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/storage/consistency/actions.py +0 -0
- {rucio-34.4.2/lib/rucio/daemons/transmogrifier → rucio-34.5.0/lib/rucio/daemons/tracer}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/tracer/kronos.py +0 -0
- {rucio-34.4.2/lib/rucio/daemons/undertaker → rucio-34.5.0/lib/rucio/daemons/transmogrifier}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/transmogrifier/transmogrifier.py +0 -0
- {rucio-34.4.2/lib/rucio/db → rucio-34.5.0/lib/rucio/daemons/undertaker}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/daemons/undertaker/undertaker.py +0 -0
- {rucio-34.4.2/lib/rucio/db/sqla/migrate_repo → rucio-34.5.0/lib/rucio/db}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/constants.py +0 -0
- {rucio-34.4.2/lib/rucio/rse/protocols → rucio-34.5.0/lib/rucio/db/sqla/migrate_repo}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/env.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/01eaf73ab656_add_new_rule_notification_state_progress.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/0437a40dbfd1_add_eol_at_in_rules.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/0f1adb7a599a_create_transfer_hops_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/102efcf145f4_added_stuck_at_column_to_rules.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/13d4f70c66a9_introduce_transfer_limits.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/140fef722e91_cleanup_distances_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/14ec5aeb64cf_add_request_external_host.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/156fb5b5a14_add_request_type_to_requests_idx.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/1677d4d803c8_split_rse_availability_into_multiple.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/16a0aca82e12_create_index_on_table_replicas_path.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/1803333ac20f_adding_provenance_and_phys_group.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/1a29d6a9504c_add_didtype_chck_to_requests.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/1a80adff031a_create_index_on_rules_hist_recent.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/1c45d9730ca6_increase_identity_length.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/1d1215494e95_add_quarantined_replicas_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/1d96f484df21_asynchronous_rules_and_rule_approval.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/1f46c5f240ac_add_bytes_column_to_bad_replicas.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/1fc15ab60d43_add_message_history_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/2190e703eb6e_move_rse_settings_to_rse_attributes.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/21d6b9dc9961_add_mismatch_scheme_state_to_requests.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/22cf51430c78_add_availability_column_to_table_rses.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/22d887e4ec0a_create_sources_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/25821a8a45a3_remove_unique_constraint_on_requests.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/25fc855625cf_added_unique_constraint_to_rules.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/269fee20dee9_add_repair_cnt_to_locks.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/271a46ea6244_add_ignore_availability_column_to_rules.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/277b5fbb41d3_switch_heartbeats_executable.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/27e3a68927fb_remove_replicas_tombstone_and_replicas_.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/2854cd9e168_added_rule_id_column.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/295289b5a800_processed_by_and__at_in_requests.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/2962ece31cf4_add_nbaccesses_column_in_the_did_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/2af3291ec4c_added_replicas_history_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/2b69addda658_add_columns_for_third_party_copy_read_.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/2b8e7bcb4783_add_config_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/2ba5229cb54c_add_submitted_at_to_requests_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/2cbee484dcf9_added_column_volume_to_rse_transfer_.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/2edee4a83846_add_source_to_requests_and_requests_.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/2eef46be23d4_change_tokens_pk.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/2f648fc909f3_index_in_rule_history_on_scope_name.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/3082b8cef557_add_naming_convention_table_and_closed_.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/30fa38b6434e_add_index_on_service_column_in_the_message_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/3152492b110b_added_staging_area_column.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/32c7d2783f7e_create_bad_replicas_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/3345511706b8_replicas_table_pk_definition_is_in_.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/35ef10d1e11b_change_index_on_table_requests.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/379a19b5332d_create_rse_limits_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/384b96aa0f60_created_rule_history_tables.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/3ac1660a1a72_extend_distance_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/3ad36e2268b0_create_collection_replicas_updates_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/3c9df354071b_extend_waiting_request_state.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/3d9813fab443_add_a_new_state_lost_in_badfilesstatus.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/40ad39ce3160_add_transferred_at_to_requests_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/4207be2fd914_add_notification_column_to_rules.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/42db2617c364_create_index_on_requests_external_id.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/436827b13f82_added_column_activity_to_table_requests.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/44278720f774_update_requests_typ_sta_upd_idx_index.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/45378a1e76a8_create_collection_replica_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/469d262be19_removing_created_at_index.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/4783c1f49cb4_create_distance_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/49a21b4d4357_create_index_on_table_tokens.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/4a2cbedda8b9_add_source_replica_expression_column_to_.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/4a7182d9578b_added_bytes_length_accessed_at_columns.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/4bab9edd01fc_create_index_on_requests_rule_id.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/4c3a4acfe006_new_attr_account_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/4cf0a2e127d4_adding_transient_metadata.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/4df2c5ddabc0_remove_temporary_dids.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/50280c53117c_add_qos_class_to_rse.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/52153819589c_add_rse_id_to_replicas_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/52fd9f4916fa_added_activity_to_rules.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/53b479c3cb0f_fix_did_meta_table_missing_updated_at_.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/5673b4b6e843_add_wfms_metadata_to_rule_tables.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/575767d9f89_added_source_history_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/58bff7008037_add_started_at_to_requests.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/58c8b78301ab_rename_callback_to_message.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/5f139f77382a_added_child_rule_id_column.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/688ef1840840_adding_did_meta_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/6e572a9bfbf3_add_new_split_container_column_to_rules.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/70587619328_add_comment_column_for_subscriptions.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/739064d31565_remove_history_table_pks.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/7541902bf173_add_didsfollowed_and_followevents_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/7ec22226cdbf_new_replica_state_for_temporary_.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/810a41685bc1_added_columns_rse_transfer_limits.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/83f991c63a93_correct_rse_expression_length.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/8523998e2e76_increase_size_of_extended_attributes_.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/8ea9122275b1_adding_missing_function_based_indices.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/90f47792bb76_add_clob_payload_to_messages.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/914b8f02df38_new_table_for_lifetime_model_exceptions.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/94a5961ddbf2_add_estimator_columns.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/9a1b149a2044_add_saml_identity_type.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/9a45bc4ea66d_add_vp_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/9eb936a81eb1_true_is_true.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/a08fa8de1545_transfer_stats_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/a118956323f8_added_vo_table_and_vo_col_to_rse.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/a193a275255c_add_status_column_in_messages.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/a5f6f6e928a7_1_7_0.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/a616581ee47_added_columns_to_table_requests.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/a6eb23955c28_state_idx_non_functional.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/a74275a1ad30_added_global_quota_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/a93e4e47bda_heartbeats.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/ae2a56fcc89_added_comment_column_to_rules.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/b4293a99f344_added_column_identity_to_table_tokens.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/b7d287de34fd_removal_of_replicastate_source.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/b818052fa670_add_index_to_quarantined_replicas.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/b8caac94d7f0_add_comments_column_for_subscriptions_.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/b96a1c7e1cc4_new_bad_pfns_table_and_bad_replicas_.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/bb695f45c04_extend_request_state.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/bc68e9946deb_add_staging_timestamps_to_request.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/bf3baa1c1474_correct_pk_and_idx_for_history_tables.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/c0937668555f_add_qos_policy_map_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/c129ccdb2d5_add_lumiblocknr_to_dids.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/ccdbcd48206e_add_did_type_column_index_on_did_meta_.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/cebad904c4dd_new_payload_column_for_heartbeats.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/d1189a09c6e0_oauth2_0_and_jwt_feature_support_adding_.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/d23453595260_extend_request_state_for_preparer.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/d6dceb1de2d_added_purge_column_to_rules.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/d6e2c3b2cf26_remove_third_party_copy_column_from_rse.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/d91002c5841_new_account_limits_table.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/e138c364ebd0_extending_columns_for_filter_and_.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/e59300c8b179_support_for_archive.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/f1b14a8c2ac1_postgres_use_check_constraints.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/f41ffe206f37_oracle_global_temporary_tables.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/f85a2962b021_adding_transfertool_column_to_requests_.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/fa7a7d78b602_increase_refresh_token_size.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/fb28a95fe288_add_replicas_rse_id_tombstone_idx.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/fe1a65b176c9_set_third_party_copy_read_and_write_.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/migrate_repo/versions/fe8ea2fa9788_added_third_party_copy_column_to_rse_.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/sautils.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/session.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/db/sqla/types.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/__init__.py +0 -0
- {rucio-34.4.2/lib/rucio/tests → rucio-34.5.0/lib/rucio/rse/protocols}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/protocols/bittorrent.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/protocols/cache.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/protocols/dummy.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/protocols/gfal.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/protocols/globus.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/protocols/gsiftp.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/protocols/http_cache.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/protocols/mock.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/protocols/ngarc.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/protocols/posix.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/protocols/protocol.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/protocols/rclone.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/protocols/rfio.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/protocols/srm.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/protocols/ssh.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/protocols/storm.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/protocols/webdav.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/protocols/xrootd.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/rse/rsemanager.py +0 -0
- {rucio-34.4.2/lib/rucio/transfertool → rucio-34.5.0/lib/rucio/tests}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/tests/common.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/tests/common_server.py +0 -0
- {rucio-34.4.2/lib/rucio/web → rucio-34.5.0/lib/rucio/transfertool}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/transfertool/bittorrent.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/transfertool/bittorrent_driver.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/transfertool/bittorrent_driver_qbittorrent.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/transfertool/globus.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/transfertool/globus_library.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/version.py +0 -0
- {rucio-34.4.2/lib/rucio/web/rest/flaskapi/v1 → rucio-34.5.0/lib/rucio/web/rest/flaskapi}/__init__.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/authenticated_bp.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/accountlimits.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/accounts.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/archives.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/auth.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/common.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/config.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/credentials.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/dids.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/dirac.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/export.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/heartbeats.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/identities.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/import.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/lifetime_exceptions.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/locks.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/main.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/meta_conventions.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/metrics.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/nongrid_traces.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/ping.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/redirect.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/replicas.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/requests.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/rses.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/rules.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/scopes.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/subscriptions.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/templates/auth_crash.html +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/templates/auth_granted.html +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/traces.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/flaskapi/v1/vos.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/main.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/metrics.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio/web/rest/ping.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/lib/rucio.egg-info/SOURCES.txt +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/pylintrc +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/pyproject.toml +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/requirements.txt +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/setup.cfg +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/setup.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/setuputil.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_abacus_account.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_abacus_collection_replica.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_abacus_rse.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_account.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_account_limits.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_api_external_representation.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_archive.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_auditor.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_auditor_hdfs.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_auditor_srmdumps.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_authentication.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_automatix.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_bad_replica.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_bb8.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_belleii.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_bin_rucio.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_boolean.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_clients.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_common_types.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_config.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_conveyor.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_conveyor_submitter.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_counter.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_credential.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_curl.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_daemons.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_dataset_replicas.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_db.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_did_meta_plugins.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_didtype.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_download.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_dumper.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_dumper_consistency.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_dumper_data_model.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_dumper_path_parsing.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_filter_engine.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_heartbeat.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_hermes.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_identity.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_impl_upload_download.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_import_export.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_judge_cleaner.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_judge_evaluator.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_judge_injector.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_judge_repairer.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_lifetime.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_message.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_meta_conventions.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_meta_did.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_module_import.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_monitor.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_multi_vo.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_naming_convention.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_oauthmanager.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_oidc.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_permission.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_pfns.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_ping.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_preparer.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_qos.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_quarantined_replica.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_reaper.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_redirect.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_replica.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_replica_recoverer.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_replica_sorting.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_request.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_root_proxy.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_rse.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_rse_expression_parser.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_rse_lfn2path.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_rse_protocol_gfal2.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_rse_protocol_gfal2_impl.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_rse_protocol_posix.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_rse_protocol_rclone.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_rse_protocol_rsync.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_rse_protocol_srm.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_rse_protocol_ssh.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_rse_protocol_webdav.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_rse_protocol_xrootd.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_rse_selector.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_rucio_server.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_rule.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_scope.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_subscription.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_throttler.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_tpc.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_trace.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_transfer.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_undertaker.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_upload.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tests/test_utils.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tools/bootstrap.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tools/merge_rucio_configs.py +0 -0
- {rucio-34.4.2 → rucio-34.5.0}/tools/reset_database.py +0 -0
|
@@ -234,6 +234,8 @@ def get_client(args):
|
|
|
234
234
|
'oidc_issuer': args.oidc_issuer,
|
|
235
235
|
'oidc_username': args.oidc_username,
|
|
236
236
|
'oidc_password': args.oidc_password}
|
|
237
|
+
elif auth_type == "x509":
|
|
238
|
+
creds = {'client_cert': args.certificate, "client_key": args.client_key}
|
|
237
239
|
else:
|
|
238
240
|
creds = None
|
|
239
241
|
|
|
@@ -1854,7 +1856,8 @@ def get_parser():
|
|
|
1854
1856
|
+ 'to the keys configured in the /etc/idpsecrets.json auth server configuration file.') # NOQA: W503
|
|
1855
1857
|
|
|
1856
1858
|
# Options for the x509 auth_strategy
|
|
1857
|
-
oparser.add_argument('--certificate', dest='certificate', default=None, help='Client certificate file.')
|
|
1859
|
+
oparser.add_argument('--certificate', dest='certificate', default=None, help='Client certificate file for x509 Authentication.')
|
|
1860
|
+
oparser.add_argument('--client_key', dest='client_key', default=None, help='Client key for x509 Authentication.')
|
|
1858
1861
|
oparser.add_argument('--ca-certificate', dest='ca_certificate', default=None, help='CA certificate to verify peer against (SSL).')
|
|
1859
1862
|
|
|
1860
1863
|
# Ping command
|
|
@@ -12,8 +12,7 @@
|
|
|
12
12
|
# See the License for the specific language governing permissions and
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
|
|
15
|
-
from
|
|
16
|
-
from typing import TYPE_CHECKING, Any, Optional
|
|
15
|
+
from typing import TYPE_CHECKING, Any, Literal, Optional
|
|
17
16
|
|
|
18
17
|
from rucio.api.permission import has_permission
|
|
19
18
|
from rucio.common.config import config_get_bool
|
|
@@ -25,11 +24,13 @@ from rucio.core import rule
|
|
|
25
24
|
from rucio.db.sqla.session import read_session, stream_session, transactional_session
|
|
26
25
|
|
|
27
26
|
if TYPE_CHECKING:
|
|
27
|
+
from collections.abc import Iterator, Sequence
|
|
28
|
+
|
|
28
29
|
from sqlalchemy.orm import Session
|
|
29
30
|
|
|
30
31
|
|
|
31
32
|
@read_session
|
|
32
|
-
def is_multi_vo(*, session: "Session"):
|
|
33
|
+
def is_multi_vo(*, session: "Session") -> bool:
|
|
33
34
|
"""
|
|
34
35
|
Check whether this instance is configured for multi-VO
|
|
35
36
|
returns: Boolean True if running in multi-VO
|
|
@@ -38,9 +39,33 @@ def is_multi_vo(*, session: "Session"):
|
|
|
38
39
|
|
|
39
40
|
|
|
40
41
|
@transactional_session
|
|
41
|
-
def add_replication_rule(
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
def add_replication_rule(
|
|
43
|
+
dids: "Sequence[dict[str, str]]",
|
|
44
|
+
copies: int,
|
|
45
|
+
rse_expression: str,
|
|
46
|
+
weight: Optional[str],
|
|
47
|
+
lifetime: Optional[int],
|
|
48
|
+
grouping: Literal['ALL', 'DATASET', 'NONE'],
|
|
49
|
+
account: str,
|
|
50
|
+
locked: bool,
|
|
51
|
+
subscription_id: Optional[str],
|
|
52
|
+
source_replica_expression: Optional[str],
|
|
53
|
+
activity: Optional[str],
|
|
54
|
+
notify: Optional[Literal['Y', 'N', 'C', 'P']],
|
|
55
|
+
purge_replicas: bool,
|
|
56
|
+
ignore_availability: bool,
|
|
57
|
+
comment: Optional[str],
|
|
58
|
+
ask_approval: bool,
|
|
59
|
+
asynchronous: bool,
|
|
60
|
+
delay_injection: Optional[int],
|
|
61
|
+
priority: int,
|
|
62
|
+
split_container: bool,
|
|
63
|
+
meta: Optional[dict[str, Any]],
|
|
64
|
+
issuer: str,
|
|
65
|
+
vo: str = 'def',
|
|
66
|
+
*,
|
|
67
|
+
session: "Session"
|
|
68
|
+
) -> list[str]:
|
|
44
69
|
"""
|
|
45
70
|
Adds a replication rule.
|
|
46
71
|
|
|
@@ -89,12 +114,11 @@ def add_replication_rule(dids, copies, rse_expression, weight, lifetime, groupin
|
|
|
89
114
|
if not has_permission(issuer=issuer, vo=vo, action='add_rule', kwargs=kwargs, session=session):
|
|
90
115
|
raise AccessDenied('Account %s can not add replication rule' % (issuer))
|
|
91
116
|
|
|
92
|
-
|
|
93
|
-
for d in dids
|
|
94
|
-
d['scope'] = InternalScope(d['scope'], vo=vo)
|
|
117
|
+
account_internal = InternalAccount(account, vo=vo)
|
|
118
|
+
dids_with_internal_scope = [{'name': d['name'], 'scope': InternalScope(d['scope'], vo=vo)} for d in dids]
|
|
95
119
|
|
|
96
|
-
return rule.add_rule(account=
|
|
97
|
-
dids=
|
|
120
|
+
return rule.add_rule(account=account_internal,
|
|
121
|
+
dids=dids_with_internal_scope,
|
|
98
122
|
copies=copies,
|
|
99
123
|
rse_expression=rse_expression,
|
|
100
124
|
grouping=grouping,
|
|
@@ -118,7 +142,7 @@ def add_replication_rule(dids, copies, rse_expression, weight, lifetime, groupin
|
|
|
118
142
|
|
|
119
143
|
|
|
120
144
|
@read_session
|
|
121
|
-
def get_replication_rule(rule_id, issuer, vo='def', *, session: "Session"):
|
|
145
|
+
def get_replication_rule(rule_id: str, issuer: str, vo: str = 'def', *, session: "Session") -> dict[str, Any]:
|
|
122
146
|
"""
|
|
123
147
|
Get replication rule by it's id.
|
|
124
148
|
|
|
@@ -135,7 +159,12 @@ def get_replication_rule(rule_id, issuer, vo='def', *, session: "Session"):
|
|
|
135
159
|
|
|
136
160
|
|
|
137
161
|
@stream_session
|
|
138
|
-
def list_replication_rules(
|
|
162
|
+
def list_replication_rules(
|
|
163
|
+
filters: Optional[dict[str, Any]] = None,
|
|
164
|
+
vo: str = 'def',
|
|
165
|
+
*,
|
|
166
|
+
session: "Session"
|
|
167
|
+
) -> "Iterator[dict[str, Any]]":
|
|
139
168
|
"""
|
|
140
169
|
Lists replication rules based on a filter.
|
|
141
170
|
|
|
@@ -164,7 +193,13 @@ def list_replication_rules(filters: Optional[dict[str, Any]] = None, vo: str = '
|
|
|
164
193
|
|
|
165
194
|
|
|
166
195
|
@read_session
|
|
167
|
-
def list_replication_rule_history(
|
|
196
|
+
def list_replication_rule_history(
|
|
197
|
+
rule_id: str,
|
|
198
|
+
issuer: str,
|
|
199
|
+
vo: str = 'def',
|
|
200
|
+
*,
|
|
201
|
+
session: "Session"
|
|
202
|
+
) -> "Iterator[dict[str, Any]]":
|
|
168
203
|
"""
|
|
169
204
|
Lists replication rule history..
|
|
170
205
|
|
|
@@ -180,7 +215,13 @@ def list_replication_rule_history(rule_id, issuer, vo='def', *, session: "Sessio
|
|
|
180
215
|
|
|
181
216
|
|
|
182
217
|
@stream_session
|
|
183
|
-
def list_replication_rule_full_history(
|
|
218
|
+
def list_replication_rule_full_history(
|
|
219
|
+
scope: str,
|
|
220
|
+
name: str,
|
|
221
|
+
vo: str = 'def',
|
|
222
|
+
*,
|
|
223
|
+
session: "Session"
|
|
224
|
+
) -> "Iterator[dict[str, Any]]":
|
|
184
225
|
"""
|
|
185
226
|
List the rule history of a DID.
|
|
186
227
|
|
|
@@ -189,14 +230,20 @@ def list_replication_rule_full_history(scope, name, vo='def', *, session: "Sessi
|
|
|
189
230
|
:param vo: The VO to act on.
|
|
190
231
|
:param session: The database session in use.
|
|
191
232
|
"""
|
|
192
|
-
|
|
193
|
-
rules = rule.list_rule_full_history(
|
|
233
|
+
scope_internal = InternalScope(scope, vo=vo)
|
|
234
|
+
rules = rule.list_rule_full_history(scope_internal, name, session=session)
|
|
194
235
|
for r in rules:
|
|
195
236
|
yield api_update_return_dict(r, session=session)
|
|
196
237
|
|
|
197
238
|
|
|
198
239
|
@stream_session
|
|
199
|
-
def list_associated_replication_rules_for_file(
|
|
240
|
+
def list_associated_replication_rules_for_file(
|
|
241
|
+
scope: str,
|
|
242
|
+
name: str,
|
|
243
|
+
vo: str = 'def',
|
|
244
|
+
*,
|
|
245
|
+
session: "Session"
|
|
246
|
+
) -> "Iterator[dict[str, Any]]":
|
|
200
247
|
"""
|
|
201
248
|
Lists associated replication rules by file.
|
|
202
249
|
|
|
@@ -205,14 +252,21 @@ def list_associated_replication_rules_for_file(scope, name, vo='def', *, session
|
|
|
205
252
|
:param vo: The VO to act on.
|
|
206
253
|
:param session: The database session in use.
|
|
207
254
|
"""
|
|
208
|
-
|
|
209
|
-
rules = rule.list_associated_rules_for_file(scope=
|
|
255
|
+
scope_internal = InternalScope(scope, vo=vo)
|
|
256
|
+
rules = rule.list_associated_rules_for_file(scope=scope_internal, name=name, session=session)
|
|
210
257
|
for r in rules:
|
|
211
258
|
yield api_update_return_dict(r, session=session)
|
|
212
259
|
|
|
213
260
|
|
|
214
261
|
@transactional_session
|
|
215
|
-
def delete_replication_rule(
|
|
262
|
+
def delete_replication_rule(
|
|
263
|
+
rule_id: str,
|
|
264
|
+
purge_replicas: Optional[bool],
|
|
265
|
+
issuer: str,
|
|
266
|
+
vo: str = 'def',
|
|
267
|
+
*,
|
|
268
|
+
session: "Session"
|
|
269
|
+
) -> None:
|
|
216
270
|
"""
|
|
217
271
|
Deletes a replication rule and all associated locks.
|
|
218
272
|
|
|
@@ -232,7 +286,14 @@ def delete_replication_rule(rule_id, purge_replicas, issuer, vo='def', *, sessio
|
|
|
232
286
|
|
|
233
287
|
|
|
234
288
|
@transactional_session
|
|
235
|
-
def update_replication_rule(
|
|
289
|
+
def update_replication_rule(
|
|
290
|
+
rule_id: str,
|
|
291
|
+
options: dict[str, Any],
|
|
292
|
+
issuer: str,
|
|
293
|
+
vo: str = 'def',
|
|
294
|
+
*,
|
|
295
|
+
session: "Session"
|
|
296
|
+
) -> None:
|
|
236
297
|
"""
|
|
237
298
|
Update lock state of a replication rule.
|
|
238
299
|
|
|
@@ -264,7 +325,15 @@ def update_replication_rule(rule_id: str, options: dict[str, Any], issuer: str,
|
|
|
264
325
|
|
|
265
326
|
|
|
266
327
|
@transactional_session
|
|
267
|
-
def reduce_replication_rule(
|
|
328
|
+
def reduce_replication_rule(
|
|
329
|
+
rule_id: str,
|
|
330
|
+
copies: int,
|
|
331
|
+
exclude_expression: Optional[str],
|
|
332
|
+
issuer: str,
|
|
333
|
+
vo: str = 'def',
|
|
334
|
+
*,
|
|
335
|
+
session: "Session"
|
|
336
|
+
) -> str:
|
|
268
337
|
"""
|
|
269
338
|
Reduce the number of copies for a rule by atomically replacing the rule.
|
|
270
339
|
|
|
@@ -286,7 +355,13 @@ def reduce_replication_rule(rule_id, copies, exclude_expression, issuer, vo='def
|
|
|
286
355
|
|
|
287
356
|
|
|
288
357
|
@read_session
|
|
289
|
-
def examine_replication_rule(
|
|
358
|
+
def examine_replication_rule(
|
|
359
|
+
rule_id: str,
|
|
360
|
+
issuer: str,
|
|
361
|
+
vo: str = 'def',
|
|
362
|
+
*,
|
|
363
|
+
session: "Session"
|
|
364
|
+
) -> dict[str, Any]:
|
|
290
365
|
"""
|
|
291
366
|
Examine a replication rule.
|
|
292
367
|
|
|
@@ -306,7 +381,15 @@ def examine_replication_rule(rule_id, issuer, vo='def', *, session: "Session"):
|
|
|
306
381
|
|
|
307
382
|
|
|
308
383
|
@transactional_session
|
|
309
|
-
def move_replication_rule(
|
|
384
|
+
def move_replication_rule(
|
|
385
|
+
rule_id: str,
|
|
386
|
+
rse_expression: str,
|
|
387
|
+
override: dict[str, Any],
|
|
388
|
+
issuer: str,
|
|
389
|
+
vo: str = 'def',
|
|
390
|
+
*,
|
|
391
|
+
session: "Session"
|
|
392
|
+
) -> str:
|
|
310
393
|
"""
|
|
311
394
|
Move a replication rule to another RSE and, once done, delete the original one.
|
|
312
395
|
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
|
|
15
15
|
from json import dumps
|
|
16
|
+
from typing import Literal
|
|
16
17
|
from urllib.parse import quote_plus
|
|
17
18
|
|
|
18
19
|
from requests.status_codes import codes
|
|
@@ -27,7 +28,13 @@ class AccountLimitClient(BaseClient):
|
|
|
27
28
|
|
|
28
29
|
ACCOUNTLIMIT_BASEURL = 'accountlimits'
|
|
29
30
|
|
|
30
|
-
def set_account_limit(
|
|
31
|
+
def set_account_limit(
|
|
32
|
+
self,
|
|
33
|
+
account: str,
|
|
34
|
+
rse: str,
|
|
35
|
+
bytes_: int,
|
|
36
|
+
locality: Literal['local', 'global']
|
|
37
|
+
) -> bool:
|
|
31
38
|
"""
|
|
32
39
|
Sets an account limit for a given limit scope.
|
|
33
40
|
|
|
@@ -46,7 +53,12 @@ class AccountLimitClient(BaseClient):
|
|
|
46
53
|
from rucio.common.exception import UnsupportedOperation
|
|
47
54
|
raise UnsupportedOperation('The provided scope (%s) for the account limit was invalid' % locality)
|
|
48
55
|
|
|
49
|
-
def delete_account_limit(
|
|
56
|
+
def delete_account_limit(
|
|
57
|
+
self,
|
|
58
|
+
account: str,
|
|
59
|
+
rse: str,
|
|
60
|
+
locality: Literal['local', 'global']
|
|
61
|
+
) -> bool:
|
|
50
62
|
"""
|
|
51
63
|
Deletes an account limit for a given limit scope.
|
|
52
64
|
|
|
@@ -64,7 +76,12 @@ class AccountLimitClient(BaseClient):
|
|
|
64
76
|
from rucio.common.exception import UnsupportedOperation
|
|
65
77
|
raise UnsupportedOperation('The provided scope (%s) for the account limit was invalid' % locality)
|
|
66
78
|
|
|
67
|
-
def set_local_account_limit(
|
|
79
|
+
def set_local_account_limit(
|
|
80
|
+
self,
|
|
81
|
+
account: str,
|
|
82
|
+
rse: str,
|
|
83
|
+
bytes_: int
|
|
84
|
+
) -> bool:
|
|
68
85
|
"""
|
|
69
86
|
Sends the request to set an account limit for an account.
|
|
70
87
|
|
|
@@ -86,7 +103,11 @@ class AccountLimitClient(BaseClient):
|
|
|
86
103
|
exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content)
|
|
87
104
|
raise exc_cls(exc_msg)
|
|
88
105
|
|
|
89
|
-
def delete_local_account_limit(
|
|
106
|
+
def delete_local_account_limit(
|
|
107
|
+
self,
|
|
108
|
+
account: str,
|
|
109
|
+
rse: str
|
|
110
|
+
) -> bool:
|
|
90
111
|
"""
|
|
91
112
|
Sends the request to remove an account limit.
|
|
92
113
|
|
|
@@ -108,7 +129,12 @@ class AccountLimitClient(BaseClient):
|
|
|
108
129
|
exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content)
|
|
109
130
|
raise exc_cls(exc_msg)
|
|
110
131
|
|
|
111
|
-
def set_global_account_limit(
|
|
132
|
+
def set_global_account_limit(
|
|
133
|
+
self,
|
|
134
|
+
account: str,
|
|
135
|
+
rse_expression: str,
|
|
136
|
+
bytes_: int
|
|
137
|
+
) -> bool:
|
|
112
138
|
"""
|
|
113
139
|
Sends the request to set a global account limit for an account.
|
|
114
140
|
|
|
@@ -130,7 +156,11 @@ class AccountLimitClient(BaseClient):
|
|
|
130
156
|
exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content)
|
|
131
157
|
raise exc_cls(exc_msg)
|
|
132
158
|
|
|
133
|
-
def delete_global_account_limit(
|
|
159
|
+
def delete_global_account_limit(
|
|
160
|
+
self,
|
|
161
|
+
account: str,
|
|
162
|
+
rse_expression: str
|
|
163
|
+
) -> bool:
|
|
134
164
|
"""
|
|
135
165
|
Sends the request to remove a global account limit.
|
|
136
166
|
|
|
@@ -107,8 +107,6 @@ class BaseClient:
|
|
|
107
107
|
:param logger: Logger object to use. If None, use the default LOG created by the module
|
|
108
108
|
"""
|
|
109
109
|
|
|
110
|
-
self.host = rucio_host
|
|
111
|
-
self.auth_host = auth_host
|
|
112
110
|
self.logger = logger
|
|
113
111
|
self.session = Session()
|
|
114
112
|
self.user_agent = "%s/%s" % (user_agent, version.version_string()) # e.g. "rucio-clients/0.2.13"
|
|
@@ -117,9 +115,17 @@ class BaseClient:
|
|
|
117
115
|
if self.script_id == '': # Python interpreter used
|
|
118
116
|
self.script_id = 'python'
|
|
119
117
|
try:
|
|
120
|
-
if
|
|
118
|
+
if rucio_host is not None:
|
|
119
|
+
self.host = rucio_host
|
|
120
|
+
else:
|
|
121
121
|
self.host = config_get('client', 'rucio_host')
|
|
122
|
-
|
|
122
|
+
except (NoOptionError, NoSectionError) as error:
|
|
123
|
+
raise MissingClientParameter('Section client and Option \'%s\' cannot be found in config file' % error.args[0])
|
|
124
|
+
|
|
125
|
+
try:
|
|
126
|
+
if auth_host is not None:
|
|
127
|
+
self.auth_host = auth_host
|
|
128
|
+
else:
|
|
123
129
|
self.auth_host = config_get('client', 'auth_host')
|
|
124
130
|
except (NoOptionError, NoSectionError) as error:
|
|
125
131
|
raise MissingClientParameter('Section client and Option \'%s\' cannot be found in config file' % error.args[0])
|
|
@@ -318,9 +324,12 @@ class BaseClient:
|
|
|
318
324
|
|
|
319
325
|
:return: A rucio exception class and an error string.
|
|
320
326
|
"""
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
327
|
+
if data is not None:
|
|
328
|
+
try:
|
|
329
|
+
data = parse_response(data)
|
|
330
|
+
except ValueError:
|
|
331
|
+
data = {}
|
|
332
|
+
else:
|
|
324
333
|
data = {}
|
|
325
334
|
|
|
326
335
|
exc_cls = 'RucioException'
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
|
|
15
15
|
from json import dumps
|
|
16
|
+
from typing import Any, Optional
|
|
16
17
|
|
|
17
18
|
from requests.status_codes import codes
|
|
18
19
|
|
|
@@ -26,7 +27,11 @@ class ConfigClient(BaseClient):
|
|
|
26
27
|
|
|
27
28
|
CONFIG_BASEURL = 'config'
|
|
28
29
|
|
|
29
|
-
def get_config(
|
|
30
|
+
def get_config(
|
|
31
|
+
self,
|
|
32
|
+
section: Optional[str] = None,
|
|
33
|
+
option: Optional[str] = None
|
|
34
|
+
) -> dict[str, Any]:
|
|
30
35
|
"""
|
|
31
36
|
Sends the request to get the matching configuration.
|
|
32
37
|
|
|
@@ -53,7 +58,13 @@ class ConfigClient(BaseClient):
|
|
|
53
58
|
exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content)
|
|
54
59
|
raise exc_cls(exc_msg)
|
|
55
60
|
|
|
56
|
-
def set_config_option(
|
|
61
|
+
def set_config_option(
|
|
62
|
+
self,
|
|
63
|
+
section: str,
|
|
64
|
+
option: str,
|
|
65
|
+
value: Any,
|
|
66
|
+
use_body_for_params: bool = True
|
|
67
|
+
) -> bool:
|
|
57
68
|
"""
|
|
58
69
|
Sends the request to create or set an option within a section. Missing sections will be created.
|
|
59
70
|
|
|
@@ -90,7 +101,11 @@ class ConfigClient(BaseClient):
|
|
|
90
101
|
exc_cls, exc_msg = self._get_exception(headers=r.headers, status_code=r.status_code, data=r.content)
|
|
91
102
|
raise exc_cls(exc_msg)
|
|
92
103
|
|
|
93
|
-
def delete_config_option(
|
|
104
|
+
def delete_config_option(
|
|
105
|
+
self,
|
|
106
|
+
section: str,
|
|
107
|
+
option: str
|
|
108
|
+
) -> bool:
|
|
94
109
|
"""
|
|
95
110
|
Sends the request to remove an option from a section
|
|
96
111
|
|
|
@@ -23,7 +23,14 @@ class CredentialClient(BaseClient):
|
|
|
23
23
|
|
|
24
24
|
CREDENTIAL_BASEURL = 'credentials'
|
|
25
25
|
|
|
26
|
-
def get_signed_url(
|
|
26
|
+
def get_signed_url(
|
|
27
|
+
self,
|
|
28
|
+
rse: str,
|
|
29
|
+
service: str,
|
|
30
|
+
operation: str,
|
|
31
|
+
url: str,
|
|
32
|
+
lifetime: int = 3600
|
|
33
|
+
) -> str:
|
|
27
34
|
"""
|
|
28
35
|
Return a signed version of the given URL for the given operation.
|
|
29
36
|
|