rucio 37.1.0.post1__tar.gz → 38.5.1__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.
- rucio-38.5.1/AUTHORS.rst +101 -0
- rucio-38.5.1/PKG-INFO +93 -0
- rucio-38.5.1/bin/rucio +137 -0
- rucio-38.5.1/bin/rucio-abacus-account +81 -0
- rucio-38.5.1/bin/rucio-abacus-rse +85 -0
- rucio-38.5.1/bin/rucio-auditor +206 -0
- rucio-38.5.1/bin/rucio-conveyor-throttler +110 -0
- rucio-38.5.1/bin/rucio-follower +44 -0
- rucio-38.5.1/bin/rucio-judge-cleaner +97 -0
- rucio-38.5.1/bin/rucio-necromancer +126 -0
- rucio-38.5.1/bin/rucio-replica-recoverer +270 -0
- rucio-38.5.1/bin/rucio-undertaker +82 -0
- rucio-38.5.1/etc/alembic.ini.template +71 -0
- rucio-38.5.1/etc/alembic_offline.ini.template +74 -0
- rucio-38.5.1/etc/rucio.cfg.template +239 -0
- rucio-38.5.1/etc/rucio_multi_vo.cfg.template +215 -0
- rucio-38.5.1/lib/rucio/alembicrevision.py +15 -0
- rucio-38.5.1/lib/rucio/cli/account.py +216 -0
- rucio-38.5.1/lib/rucio/cli/bin_legacy/rucio.py +2729 -0
- rucio-38.5.1/lib/rucio/cli/bin_legacy/rucio_admin.py +2500 -0
- rucio-38.5.1/lib/rucio/cli/command.py +283 -0
- rucio-38.5.1/lib/rucio/cli/config.py +87 -0
- rucio-38.5.1/lib/rucio/cli/did.py +188 -0
- rucio-38.5.1/lib/rucio/cli/download.py +128 -0
- rucio-38.5.1/lib/rucio/cli/opendata.py +200 -0
- rucio-38.5.1/lib/rucio/cli/replica.py +176 -0
- rucio-38.5.1/lib/rucio/cli/rse.py +292 -0
- rucio-38.5.1/lib/rucio/cli/rule.py +166 -0
- rucio-38.5.1/lib/rucio/cli/scope.py +41 -0
- rucio-38.5.1/lib/rucio/cli/subscription.py +73 -0
- rucio-38.5.1/lib/rucio/cli/utils.py +262 -0
- rucio-38.5.1/lib/rucio/client/accountclient.py +578 -0
- rucio-38.5.1/lib/rucio/client/accountlimitclient.py +243 -0
- rucio-38.5.1/lib/rucio/client/baseclient.py +1030 -0
- rucio-38.5.1/lib/rucio/client/client.py +130 -0
- rucio-38.5.1/lib/rucio/client/configclient.py +173 -0
- rucio-38.5.1/lib/rucio/client/credentialclient.py +70 -0
- rucio-38.5.1/lib/rucio/client/didclient.py +1057 -0
- rucio-38.5.1/lib/rucio/client/diracclient.py +125 -0
- rucio-38.5.1/lib/rucio/client/downloadclient.py +2054 -0
- rucio-38.5.1/lib/rucio/client/exportclient.py +92 -0
- rucio-38.5.1/lib/rucio/client/importclient.py +46 -0
- rucio-38.5.1/lib/rucio/client/lifetimeclient.py +141 -0
- rucio-38.5.1/lib/rucio/client/lockclient.py +125 -0
- rucio-38.5.1/lib/rucio/client/metaconventionsclient.py +179 -0
- rucio-38.5.1/lib/rucio/client/opendataclient.py +250 -0
- rucio-38.5.1/lib/rucio/client/pingclient.py +78 -0
- rucio-38.5.1/lib/rucio/client/replicaclient.py +570 -0
- rucio-38.5.1/lib/rucio/client/requestclient.py +233 -0
- rucio-38.5.1/lib/rucio/client/richclient.py +323 -0
- rucio-38.5.1/lib/rucio/client/rseclient.py +974 -0
- rucio-38.5.1/lib/rucio/client/ruleclient.py +391 -0
- rucio-38.5.1/lib/rucio/client/scopeclient.py +116 -0
- rucio-38.5.1/lib/rucio/client/subscriptionclient.py +237 -0
- rucio-38.5.1/lib/rucio/client/touchclient.py +92 -0
- rucio-38.5.1/lib/rucio/client/uploadclient.py +1511 -0
- rucio-38.5.1/lib/rucio/common/cache.py +110 -0
- rucio-38.5.1/lib/rucio/common/client.py +96 -0
- rucio-38.5.1/lib/rucio/common/config.py +786 -0
- rucio-38.5.1/lib/rucio/common/constants.py +244 -0
- rucio-38.5.1/lib/rucio/common/didtype.py +244 -0
- rucio-38.5.1/lib/rucio/common/dumper/__init__.py +342 -0
- rucio-38.5.1/lib/rucio/common/exception.py +1293 -0
- rucio-38.5.1/lib/rucio/common/pcache.py +1404 -0
- rucio-38.5.1/lib/rucio/common/plugins.py +233 -0
- rucio-38.5.1/lib/rucio/common/policy.py +94 -0
- rucio-38.5.1/lib/rucio/common/schema/__init__.py +187 -0
- rucio-38.5.1/lib/rucio/common/schema/generic.py +418 -0
- rucio-38.5.1/lib/rucio/common/schema/generic_multi_vo.py +397 -0
- rucio-38.5.1/lib/rucio/common/types.py +486 -0
- rucio-38.5.1/lib/rucio/common/utils.py +1873 -0
- rucio-38.5.1/lib/rucio/core/account.py +497 -0
- rucio-38.5.1/lib/rucio/core/account_counter.py +220 -0
- rucio-38.5.1/lib/rucio/core/account_limit.py +403 -0
- rucio-38.5.1/lib/rucio/core/authentication.py +620 -0
- rucio-38.5.1/lib/rucio/core/config.py +439 -0
- rucio-38.5.1/lib/rucio/core/credential.py +217 -0
- rucio-38.5.1/lib/rucio/core/did.py +3033 -0
- rucio-38.5.1/lib/rucio/core/did_meta_plugins/__init__.py +253 -0
- rucio-38.5.1/lib/rucio/core/did_meta_plugins/did_column_meta.py +480 -0
- rucio-38.5.1/lib/rucio/core/did_meta_plugins/did_meta_plugin_interface.py +179 -0
- rucio-38.5.1/lib/rucio/core/did_meta_plugins/elasticsearch_meta.py +399 -0
- rucio-38.5.1/lib/rucio/core/did_meta_plugins/json_meta.py +234 -0
- rucio-38.5.1/lib/rucio/core/did_meta_plugins/mongo_meta.py +220 -0
- rucio-38.5.1/lib/rucio/core/did_meta_plugins/postgres_meta.py +345 -0
- rucio-38.5.1/lib/rucio/core/dirac.py +238 -0
- rucio-38.5.1/lib/rucio/core/distance.py +188 -0
- rucio-38.5.1/lib/rucio/core/exporter.py +61 -0
- rucio-38.5.1/lib/rucio/core/importer.py +260 -0
- rucio-38.5.1/lib/rucio/core/lifetime_exception.py +377 -0
- rucio-38.5.1/lib/rucio/core/lock.py +578 -0
- rucio-38.5.1/lib/rucio/core/meta_conventions.py +203 -0
- rucio-38.5.1/lib/rucio/core/monitor.py +448 -0
- rucio-38.5.1/lib/rucio/core/naming_convention.py +185 -0
- rucio-38.5.1/lib/rucio/core/nongrid_trace.py +136 -0
- rucio-38.5.1/lib/rucio/core/oidc.py +1463 -0
- rucio-38.5.1/lib/rucio/core/opendata.py +886 -0
- rucio-38.5.1/lib/rucio/core/permission/__init__.py +170 -0
- rucio-38.5.1/lib/rucio/core/permission/generic.py +1162 -0
- rucio-38.5.1/lib/rucio/core/permission/generic_multi_vo.py +1143 -0
- rucio-38.5.1/lib/rucio/core/replica.py +4482 -0
- rucio-38.5.1/lib/rucio/core/request.py +3096 -0
- rucio-38.5.1/lib/rucio/core/rse.py +2083 -0
- rucio-38.5.1/lib/rucio/core/rse_counter.py +203 -0
- rucio-38.5.1/lib/rucio/core/rule.py +4547 -0
- rucio-38.5.1/lib/rucio/core/rule_grouping.py +1618 -0
- rucio-38.5.1/lib/rucio/core/scope.py +195 -0
- rucio-38.5.1/lib/rucio/core/trace.py +375 -0
- rucio-38.5.1/lib/rucio/core/transfer.py +1530 -0
- rucio-38.5.1/lib/rucio/core/vo.py +170 -0
- rucio-38.5.1/lib/rucio/core/volatile_replica.py +148 -0
- rucio-38.5.1/lib/rucio/daemons/abacus/account.py +130 -0
- rucio-38.5.1/lib/rucio/daemons/abacus/collection_replica.py +124 -0
- rucio-38.5.1/lib/rucio/daemons/abacus/rse.py +131 -0
- rucio-38.5.1/lib/rucio/daemons/atropos/atropos.py +243 -0
- rucio-38.5.1/lib/rucio/daemons/auditor/__init__.py +289 -0
- rucio-38.5.1/lib/rucio/daemons/automatix/automatix.py +307 -0
- rucio-38.5.1/lib/rucio/daemons/badreplicas/minos.py +329 -0
- rucio-38.5.1/lib/rucio/daemons/badreplicas/minos_temporary_expiration.py +174 -0
- rucio-38.5.1/lib/rucio/daemons/badreplicas/necromancer.py +202 -0
- rucio-38.5.1/lib/rucio/daemons/bb8/bb8.py +354 -0
- rucio-38.5.1/lib/rucio/daemons/bb8/common.py +759 -0
- rucio-38.5.1/lib/rucio/daemons/bb8/nuclei_background_rebalance.py +153 -0
- rucio-38.5.1/lib/rucio/daemons/bb8/t2_background_rebalance.py +153 -0
- rucio-38.5.1/lib/rucio/daemons/cache/consumer.py +200 -0
- rucio-38.5.1/lib/rucio/daemons/common.py +405 -0
- rucio-38.5.1/lib/rucio/daemons/conveyor/common.py +562 -0
- rucio-38.5.1/lib/rucio/daemons/conveyor/finisher.py +538 -0
- rucio-38.5.1/lib/rucio/daemons/conveyor/poller.py +397 -0
- rucio-38.5.1/lib/rucio/daemons/conveyor/preparer.py +205 -0
- rucio-38.5.1/lib/rucio/daemons/conveyor/receiver.py +249 -0
- rucio-38.5.1/lib/rucio/daemons/conveyor/submitter.py +404 -0
- rucio-38.5.1/lib/rucio/daemons/conveyor/throttler.py +533 -0
- rucio-38.5.1/lib/rucio/daemons/follower/follower.py +101 -0
- rucio-38.5.1/lib/rucio/daemons/hermes/hermes.py +866 -0
- rucio-38.5.1/lib/rucio/daemons/judge/cleaner.py +159 -0
- rucio-38.5.1/lib/rucio/daemons/judge/evaluator.py +185 -0
- rucio-38.5.1/lib/rucio/daemons/judge/injector.py +163 -0
- rucio-38.5.1/lib/rucio/daemons/judge/repairer.py +154 -0
- rucio-38.5.1/lib/rucio/daemons/reaper/dark_reaper.py +283 -0
- rucio-38.5.1/lib/rucio/daemons/reaper/reaper.py +739 -0
- rucio-38.5.1/lib/rucio/daemons/replicarecoverer/suspicious_replica_recoverer.py +626 -0
- rucio-38.5.1/lib/rucio/daemons/storage/consistency/actions.py +848 -0
- rucio-38.5.1/lib/rucio/daemons/tracer/kronos.py +537 -0
- rucio-38.5.1/lib/rucio/daemons/transmogrifier/transmogrifier.py +764 -0
- rucio-38.5.1/lib/rucio/daemons/undertaker/undertaker.py +138 -0
- rucio-38.5.1/lib/rucio/db/sqla/constants.py +213 -0
- rucio-38.5.1/lib/rucio/db/sqla/migrate_repo/versions/13d4f70c66a9_introduce_transfer_limits.py +91 -0
- rucio-38.5.1/lib/rucio/db/sqla/migrate_repo/versions/3082b8cef557_add_naming_convention_table_and_closed_.py +67 -0
- rucio-38.5.1/lib/rucio/db/sqla/migrate_repo/versions/4df2c5ddabc0_remove_temporary_dids.py +55 -0
- rucio-38.5.1/lib/rucio/db/sqla/migrate_repo/versions/a62db546a1f1_opendata_initial_model.py +85 -0
- rucio-38.5.1/lib/rucio/db/sqla/migrate_repo/versions/c129ccdb2d5_add_lumiblocknr_to_dids.py +43 -0
- rucio-38.5.1/lib/rucio/db/sqla/models.py +1834 -0
- rucio-38.5.1/lib/rucio/db/sqla/session.py +536 -0
- rucio-38.5.1/lib/rucio/db/sqla/util.py +544 -0
- rucio-38.5.1/lib/rucio/gateway/account.py +322 -0
- rucio-38.5.1/lib/rucio/gateway/account_limit.py +301 -0
- rucio-38.5.1/lib/rucio/gateway/authentication.py +352 -0
- rucio-38.5.1/lib/rucio/gateway/config.py +181 -0
- rucio-38.5.1/lib/rucio/gateway/credential.py +65 -0
- rucio-38.5.1/lib/rucio/gateway/did.py +903 -0
- rucio-38.5.1/lib/rucio/gateway/dirac.py +83 -0
- rucio-38.5.1/lib/rucio/gateway/exporter.py +58 -0
- rucio-38.5.1/lib/rucio/gateway/heartbeat.py +73 -0
- rucio-38.5.1/lib/rucio/gateway/identity.py +190 -0
- rucio-38.5.1/lib/rucio/gateway/importer.py +45 -0
- rucio-38.5.1/lib/rucio/gateway/lifetime_exception.py +114 -0
- rucio-38.5.1/lib/rucio/gateway/lock.py +141 -0
- rucio-38.5.1/lib/rucio/gateway/meta_conventions.py +90 -0
- rucio-38.5.1/lib/rucio/gateway/opendata.py +190 -0
- rucio-38.5.1/lib/rucio/gateway/permission.py +75 -0
- rucio-38.5.1/lib/rucio/gateway/quarantined_replica.py +77 -0
- rucio-38.5.1/lib/rucio/gateway/replica.py +623 -0
- rucio-38.5.1/lib/rucio/gateway/request.py +289 -0
- rucio-38.5.1/lib/rucio/gateway/rse.py +606 -0
- rucio-38.5.1/lib/rucio/gateway/rule.py +407 -0
- rucio-38.5.1/lib/rucio/gateway/scope.py +94 -0
- rucio-38.5.1/lib/rucio/gateway/subscription.py +265 -0
- rucio-38.5.1/lib/rucio/gateway/trace.py +48 -0
- rucio-38.5.1/lib/rucio/gateway/vo.py +122 -0
- rucio-38.5.1/lib/rucio/rse/__init__.py +97 -0
- rucio-38.5.1/lib/rucio/rse/protocols/ngarc.py +209 -0
- rucio-38.5.1/lib/rucio/rse/protocols/protocol.py +365 -0
- rucio-38.5.1/lib/rucio/rse/protocols/srm.py +338 -0
- rucio-38.5.1/lib/rucio/rse/protocols/webdav.py +604 -0
- rucio-38.5.1/lib/rucio/rse/rsemanager.py +882 -0
- rucio-38.5.1/lib/rucio/rse/translation.py +271 -0
- rucio-38.5.1/lib/rucio/tests/common.py +333 -0
- rucio-38.5.1/lib/rucio/transfertool/fts3.py +1582 -0
- rucio-38.5.1/lib/rucio/transfertool/fts3_plugins.py +157 -0
- rucio-38.5.1/lib/rucio/vcsversion.py +11 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/accountlimits.py +237 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/accounts.py +1098 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/archives.py +103 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/auth.py +1669 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/common.py +473 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/config.py +344 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/credentials.py +220 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/dids.py +2679 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/dirac.py +117 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/export.py +77 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/heartbeats.py +128 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/identities.py +286 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/import.py +133 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/lifetime_exceptions.py +313 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/locks.py +359 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/main.py +95 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/meta_conventions.py +227 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/metrics.py +37 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/nongrid_traces.py +98 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/opendata.py +392 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/opendata_public.py +147 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/ping.py +89 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/redirect.py +367 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/replicas.py +1895 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/requests.py +1193 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/rses.py +2257 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/rules.py +855 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/scopes.py +160 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/subscriptions.py +648 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/traces.py +136 -0
- rucio-38.5.1/lib/rucio/web/rest/flaskapi/v1/vos.py +277 -0
- rucio-38.5.1/lib/rucio.egg-info/SOURCES.txt +589 -0
- rucio-38.5.1/pyproject.toml +190 -0
- rucio-38.5.1/requirements/requirements.server.txt +300 -0
- rucio-38.5.1/setuputil.py +138 -0
- rucio-38.5.1/tests/test_abacus_account.py +78 -0
- rucio-38.5.1/tests/test_abacus_collection_replica.py +179 -0
- rucio-38.5.1/tests/test_abacus_rse.py +69 -0
- rucio-38.5.1/tests/test_account.py +348 -0
- rucio-38.5.1/tests/test_account_limits.py +199 -0
- rucio-38.5.1/tests/test_archive.py +250 -0
- rucio-38.5.1/tests/test_automatix.py +94 -0
- rucio-38.5.1/tests/test_bb8.py +270 -0
- rucio-38.5.1/tests/test_belleii.py +130 -0
- rucio-38.5.1/tests/test_bin_rucio.py +1376 -0
- rucio-38.5.1/tests/test_cli_client_structure.py +904 -0
- rucio-38.5.1/tests/test_clients.py +255 -0
- rucio-38.5.1/tests/test_config.py +171 -0
- rucio-38.5.1/tests/test_conveyor.py +1811 -0
- rucio-38.5.1/tests/test_conveyor_submitter.py +488 -0
- rucio-38.5.1/tests/test_counter.py +200 -0
- rucio-38.5.1/tests/test_curl.py +151 -0
- rucio-38.5.1/tests/test_dataset_replicas.py +558 -0
- rucio-38.5.1/tests/test_did.py +1301 -0
- rucio-38.5.1/tests/test_did_meta_plugins.py +851 -0
- rucio-38.5.1/tests/test_download.py +829 -0
- rucio-38.5.1/tests/test_gateway_external_representation.py +483 -0
- rucio-38.5.1/tests/test_heartbeat.py +194 -0
- rucio-38.5.1/tests/test_hermes.py +302 -0
- rucio-38.5.1/tests/test_import_export.py +1298 -0
- rucio-38.5.1/tests/test_judge_evaluator.py +525 -0
- rucio-38.5.1/tests/test_judge_injector.py +232 -0
- rucio-38.5.1/tests/test_multi_vo.py +1106 -0
- rucio-38.5.1/tests/test_naming_convention.py +82 -0
- rucio-38.5.1/tests/test_oidc.py +1991 -0
- rucio-38.5.1/tests/test_opendata.py +674 -0
- rucio-38.5.1/tests/test_permission.py +79 -0
- rucio-38.5.1/tests/test_policy_package.py +174 -0
- rucio-38.5.1/tests/test_reaper.py +515 -0
- rucio-38.5.1/tests/test_replica.py +1224 -0
- rucio-38.5.1/tests/test_replica_recoverer.py +595 -0
- rucio-38.5.1/tests/test_replica_sorting.py +531 -0
- rucio-38.5.1/tests/test_rse.py +1610 -0
- rucio-38.5.1/tests/test_rse_selector.py +162 -0
- rucio-38.5.1/tests/test_rule.py +1642 -0
- rucio-38.5.1/tests/test_scope.py +176 -0
- rucio-38.5.1/tests/test_subscription.py +925 -0
- rucio-38.5.1/tests/test_throttler.py +1020 -0
- rucio-38.5.1/tests/test_trace.py +160 -0
- rucio-38.5.1/tests/test_transfer_plugins.py +395 -0
- rucio-38.5.1/tests/test_undertaker.py +188 -0
- rucio-38.5.1/tests/test_upload.py +751 -0
- rucio-38.5.1/tests/test_utils.py +260 -0
- rucio-38.5.1/tools/reset_database.py +87 -0
- rucio-37.1.0.post1/AUTHORS.rst +0 -100
- rucio-37.1.0.post1/PKG-INFO +0 -93
- rucio-37.1.0.post1/bin/rucio +0 -133
- rucio-37.1.0.post1/bin/rucio-abacus-account +0 -74
- rucio-37.1.0.post1/bin/rucio-abacus-rse +0 -78
- rucio-37.1.0.post1/bin/rucio-auditor +0 -206
- rucio-37.1.0.post1/bin/rucio-conveyor-throttler +0 -104
- rucio-37.1.0.post1/bin/rucio-follower +0 -44
- rucio-37.1.0.post1/bin/rucio-judge-cleaner +0 -89
- rucio-37.1.0.post1/bin/rucio-necromancer +0 -120
- rucio-37.1.0.post1/bin/rucio-replica-recoverer +0 -248
- rucio-37.1.0.post1/bin/rucio-undertaker +0 -76
- rucio-37.1.0.post1/etc/alembic.ini.template +0 -71
- rucio-37.1.0.post1/etc/alembic_offline.ini.template +0 -74
- rucio-37.1.0.post1/etc/rucio.cfg.template +0 -241
- rucio-37.1.0.post1/etc/rucio_multi_vo.cfg.template +0 -217
- rucio-37.1.0.post1/lib/rucio/alembicrevision.py +0 -15
- rucio-37.1.0.post1/lib/rucio/cli/account.py +0 -216
- rucio-37.1.0.post1/lib/rucio/cli/bin_legacy/rucio.py +0 -2825
- rucio-37.1.0.post1/lib/rucio/cli/bin_legacy/rucio_admin.py +0 -2500
- rucio-37.1.0.post1/lib/rucio/cli/command.py +0 -272
- rucio-37.1.0.post1/lib/rucio/cli/config.py +0 -72
- rucio-37.1.0.post1/lib/rucio/cli/did.py +0 -191
- rucio-37.1.0.post1/lib/rucio/cli/download.py +0 -128
- rucio-37.1.0.post1/lib/rucio/cli/replica.py +0 -162
- rucio-37.1.0.post1/lib/rucio/cli/rse.py +0 -293
- rucio-37.1.0.post1/lib/rucio/cli/rule.py +0 -158
- rucio-37.1.0.post1/lib/rucio/cli/scope.py +0 -40
- rucio-37.1.0.post1/lib/rucio/cli/subscription.py +0 -73
- rucio-37.1.0.post1/lib/rucio/cli/utils.py +0 -226
- rucio-37.1.0.post1/lib/rucio/client/accountclient.py +0 -432
- rucio-37.1.0.post1/lib/rucio/client/accountlimitclient.py +0 -183
- rucio-37.1.0.post1/lib/rucio/client/baseclient.py +0 -980
- rucio-37.1.0.post1/lib/rucio/client/client.py +0 -120
- rucio-37.1.0.post1/lib/rucio/client/configclient.py +0 -126
- rucio-37.1.0.post1/lib/rucio/client/credentialclient.py +0 -59
- rucio-37.1.0.post1/lib/rucio/client/didclient.py +0 -868
- rucio-37.1.0.post1/lib/rucio/client/diracclient.py +0 -56
- rucio-37.1.0.post1/lib/rucio/client/downloadclient.py +0 -1783
- rucio-37.1.0.post1/lib/rucio/client/exportclient.py +0 -44
- rucio-37.1.0.post1/lib/rucio/client/fileclient.py +0 -50
- rucio-37.1.0.post1/lib/rucio/client/importclient.py +0 -42
- rucio-37.1.0.post1/lib/rucio/client/lifetimeclient.py +0 -123
- rucio-37.1.0.post1/lib/rucio/client/lockclient.py +0 -109
- rucio-37.1.0.post1/lib/rucio/client/metaconventionsclient.py +0 -140
- rucio-37.1.0.post1/lib/rucio/client/pingclient.py +0 -44
- rucio-37.1.0.post1/lib/rucio/client/replicaclient.py +0 -452
- rucio-37.1.0.post1/lib/rucio/client/requestclient.py +0 -125
- rucio-37.1.0.post1/lib/rucio/client/richclient.py +0 -317
- rucio-37.1.0.post1/lib/rucio/client/rseclient.py +0 -746
- rucio-37.1.0.post1/lib/rucio/client/ruleclient.py +0 -294
- rucio-37.1.0.post1/lib/rucio/client/scopeclient.py +0 -90
- rucio-37.1.0.post1/lib/rucio/client/subscriptionclient.py +0 -173
- rucio-37.1.0.post1/lib/rucio/client/touchclient.py +0 -82
- rucio-37.1.0.post1/lib/rucio/client/uploadclient.py +0 -969
- rucio-37.1.0.post1/lib/rucio/common/cache.py +0 -111
- rucio-37.1.0.post1/lib/rucio/common/client.py +0 -122
- rucio-37.1.0.post1/lib/rucio/common/config.py +0 -762
- rucio-37.1.0.post1/lib/rucio/common/constants.py +0 -217
- rucio-37.1.0.post1/lib/rucio/common/didtype.py +0 -237
- rucio-37.1.0.post1/lib/rucio/common/dumper/__init__.py +0 -342
- rucio-37.1.0.post1/lib/rucio/common/exception.py +0 -1208
- rucio-37.1.0.post1/lib/rucio/common/pcache.py +0 -1409
- rucio-37.1.0.post1/lib/rucio/common/plugins.py +0 -185
- rucio-37.1.0.post1/lib/rucio/common/policy.py +0 -93
- rucio-37.1.0.post1/lib/rucio/common/schema/__init__.py +0 -200
- rucio-37.1.0.post1/lib/rucio/common/schema/generic.py +0 -416
- rucio-37.1.0.post1/lib/rucio/common/schema/generic_multi_vo.py +0 -395
- rucio-37.1.0.post1/lib/rucio/common/types.py +0 -483
- rucio-37.1.0.post1/lib/rucio/common/utils.py +0 -1685
- rucio-37.1.0.post1/lib/rucio/core/account.py +0 -496
- rucio-37.1.0.post1/lib/rucio/core/account_counter.py +0 -236
- rucio-37.1.0.post1/lib/rucio/core/account_limit.py +0 -402
- rucio-37.1.0.post1/lib/rucio/core/authentication.py +0 -620
- rucio-37.1.0.post1/lib/rucio/core/config.py +0 -437
- rucio-37.1.0.post1/lib/rucio/core/credential.py +0 -224
- rucio-37.1.0.post1/lib/rucio/core/did.py +0 -3004
- rucio-37.1.0.post1/lib/rucio/core/did_meta_plugins/__init__.py +0 -252
- rucio-37.1.0.post1/lib/rucio/core/did_meta_plugins/did_column_meta.py +0 -331
- rucio-37.1.0.post1/lib/rucio/core/did_meta_plugins/did_meta_plugin_interface.py +0 -165
- rucio-37.1.0.post1/lib/rucio/core/did_meta_plugins/elasticsearch_meta.py +0 -407
- rucio-37.1.0.post1/lib/rucio/core/did_meta_plugins/json_meta.py +0 -240
- rucio-37.1.0.post1/lib/rucio/core/did_meta_plugins/mongo_meta.py +0 -229
- rucio-37.1.0.post1/lib/rucio/core/did_meta_plugins/postgres_meta.py +0 -352
- rucio-37.1.0.post1/lib/rucio/core/dirac.py +0 -237
- rucio-37.1.0.post1/lib/rucio/core/distance.py +0 -187
- rucio-37.1.0.post1/lib/rucio/core/exporter.py +0 -59
- rucio-37.1.0.post1/lib/rucio/core/importer.py +0 -260
- rucio-37.1.0.post1/lib/rucio/core/lifetime_exception.py +0 -377
- rucio-37.1.0.post1/lib/rucio/core/lock.py +0 -577
- rucio-37.1.0.post1/lib/rucio/core/meta_conventions.py +0 -203
- rucio-37.1.0.post1/lib/rucio/core/monitor.py +0 -448
- rucio-37.1.0.post1/lib/rucio/core/naming_convention.py +0 -195
- rucio-37.1.0.post1/lib/rucio/core/nongrid_trace.py +0 -136
- rucio-37.1.0.post1/lib/rucio/core/oidc.py +0 -1463
- rucio-37.1.0.post1/lib/rucio/core/permission/__init__.py +0 -161
- rucio-37.1.0.post1/lib/rucio/core/permission/generic.py +0 -1124
- rucio-37.1.0.post1/lib/rucio/core/permission/generic_multi_vo.py +0 -1144
- rucio-37.1.0.post1/lib/rucio/core/replica.py +0 -4483
- rucio-37.1.0.post1/lib/rucio/core/request.py +0 -3091
- rucio-37.1.0.post1/lib/rucio/core/rse.py +0 -2079
- rucio-37.1.0.post1/lib/rucio/core/rse_counter.py +0 -185
- rucio-37.1.0.post1/lib/rucio/core/rule.py +0 -4484
- rucio-37.1.0.post1/lib/rucio/core/rule_grouping.py +0 -1619
- rucio-37.1.0.post1/lib/rucio/core/scope.py +0 -181
- rucio-37.1.0.post1/lib/rucio/core/trace.py +0 -375
- rucio-37.1.0.post1/lib/rucio/core/transfer.py +0 -1531
- rucio-37.1.0.post1/lib/rucio/core/vo.py +0 -169
- rucio-37.1.0.post1/lib/rucio/core/volatile_replica.py +0 -151
- rucio-37.1.0.post1/lib/rucio/daemons/abacus/account.py +0 -116
- rucio-37.1.0.post1/lib/rucio/daemons/abacus/collection_replica.py +0 -124
- rucio-37.1.0.post1/lib/rucio/daemons/abacus/rse.py +0 -117
- rucio-37.1.0.post1/lib/rucio/daemons/atropos/atropos.py +0 -242
- rucio-37.1.0.post1/lib/rucio/daemons/auditor/__init__.py +0 -289
- rucio-37.1.0.post1/lib/rucio/daemons/automatix/automatix.py +0 -304
- rucio-37.1.0.post1/lib/rucio/daemons/badreplicas/minos.py +0 -322
- rucio-37.1.0.post1/lib/rucio/daemons/badreplicas/minos_temporary_expiration.py +0 -171
- rucio-37.1.0.post1/lib/rucio/daemons/badreplicas/necromancer.py +0 -196
- rucio-37.1.0.post1/lib/rucio/daemons/bb8/bb8.py +0 -353
- rucio-37.1.0.post1/lib/rucio/daemons/bb8/common.py +0 -759
- rucio-37.1.0.post1/lib/rucio/daemons/bb8/nuclei_background_rebalance.py +0 -153
- rucio-37.1.0.post1/lib/rucio/daemons/bb8/t2_background_rebalance.py +0 -153
- rucio-37.1.0.post1/lib/rucio/daemons/cache/consumer.py +0 -197
- rucio-37.1.0.post1/lib/rucio/daemons/common.py +0 -405
- rucio-37.1.0.post1/lib/rucio/daemons/conveyor/common.py +0 -562
- rucio-37.1.0.post1/lib/rucio/daemons/conveyor/finisher.py +0 -529
- rucio-37.1.0.post1/lib/rucio/daemons/conveyor/poller.py +0 -394
- rucio-37.1.0.post1/lib/rucio/daemons/conveyor/preparer.py +0 -205
- rucio-37.1.0.post1/lib/rucio/daemons/conveyor/receiver.py +0 -249
- rucio-37.1.0.post1/lib/rucio/daemons/conveyor/submitter.py +0 -403
- rucio-37.1.0.post1/lib/rucio/daemons/conveyor/throttler.py +0 -532
- rucio-37.1.0.post1/lib/rucio/daemons/follower/follower.py +0 -101
- rucio-37.1.0.post1/lib/rucio/daemons/hermes/hermes.py +0 -835
- rucio-37.1.0.post1/lib/rucio/daemons/judge/cleaner.py +0 -159
- rucio-37.1.0.post1/lib/rucio/daemons/judge/evaluator.py +0 -185
- rucio-37.1.0.post1/lib/rucio/daemons/judge/injector.py +0 -162
- rucio-37.1.0.post1/lib/rucio/daemons/judge/repairer.py +0 -154
- rucio-37.1.0.post1/lib/rucio/daemons/reaper/dark_reaper.py +0 -282
- rucio-37.1.0.post1/lib/rucio/daemons/reaper/reaper.py +0 -739
- rucio-37.1.0.post1/lib/rucio/daemons/replicarecoverer/suspicious_replica_recoverer.py +0 -626
- rucio-37.1.0.post1/lib/rucio/daemons/storage/consistency/actions.py +0 -848
- rucio-37.1.0.post1/lib/rucio/daemons/tracer/kronos.py +0 -536
- rucio-37.1.0.post1/lib/rucio/daemons/transmogrifier/transmogrifier.py +0 -762
- rucio-37.1.0.post1/lib/rucio/daemons/undertaker/undertaker.py +0 -137
- rucio-37.1.0.post1/lib/rucio/db/sqla/constants.py +0 -206
- rucio-37.1.0.post1/lib/rucio/db/sqla/migrate_repo/versions/13d4f70c66a9_introduce_transfer_limits.py +0 -91
- rucio-37.1.0.post1/lib/rucio/db/sqla/migrate_repo/versions/3082b8cef557_add_naming_convention_table_and_closed_.py +0 -67
- rucio-37.1.0.post1/lib/rucio/db/sqla/migrate_repo/versions/4df2c5ddabc0_remove_temporary_dids.py +0 -55
- rucio-37.1.0.post1/lib/rucio/db/sqla/migrate_repo/versions/c129ccdb2d5_add_lumiblocknr_to_dids.py +0 -43
- rucio-37.1.0.post1/lib/rucio/db/sqla/models.py +0 -1743
- rucio-37.1.0.post1/lib/rucio/db/sqla/session.py +0 -529
- rucio-37.1.0.post1/lib/rucio/db/sqla/util.py +0 -543
- rucio-37.1.0.post1/lib/rucio/gateway/account.py +0 -345
- rucio-37.1.0.post1/lib/rucio/gateway/account_limit.py +0 -327
- rucio-37.1.0.post1/lib/rucio/gateway/authentication.py +0 -381
- rucio-37.1.0.post1/lib/rucio/gateway/config.py +0 -227
- rucio-37.1.0.post1/lib/rucio/gateway/credential.py +0 -70
- rucio-37.1.0.post1/lib/rucio/gateway/did.py +0 -987
- rucio-37.1.0.post1/lib/rucio/gateway/dirac.py +0 -83
- rucio-37.1.0.post1/lib/rucio/gateway/exporter.py +0 -60
- rucio-37.1.0.post1/lib/rucio/gateway/heartbeat.py +0 -76
- rucio-37.1.0.post1/lib/rucio/gateway/identity.py +0 -189
- rucio-37.1.0.post1/lib/rucio/gateway/importer.py +0 -46
- rucio-37.1.0.post1/lib/rucio/gateway/lifetime_exception.py +0 -121
- rucio-37.1.0.post1/lib/rucio/gateway/lock.py +0 -153
- rucio-37.1.0.post1/lib/rucio/gateway/meta_conventions.py +0 -98
- rucio-37.1.0.post1/lib/rucio/gateway/permission.py +0 -74
- rucio-37.1.0.post1/lib/rucio/gateway/quarantined_replica.py +0 -79
- rucio-37.1.0.post1/lib/rucio/gateway/replica.py +0 -538
- rucio-37.1.0.post1/lib/rucio/gateway/request.py +0 -330
- rucio-37.1.0.post1/lib/rucio/gateway/rse.py +0 -632
- rucio-37.1.0.post1/lib/rucio/gateway/rule.py +0 -437
- rucio-37.1.0.post1/lib/rucio/gateway/scope.py +0 -100
- rucio-37.1.0.post1/lib/rucio/gateway/subscription.py +0 -280
- rucio-37.1.0.post1/lib/rucio/gateway/vo.py +0 -126
- rucio-37.1.0.post1/lib/rucio/rse/__init__.py +0 -96
- rucio-37.1.0.post1/lib/rucio/rse/protocols/ngarc.py +0 -209
- rucio-37.1.0.post1/lib/rucio/rse/protocols/protocol.py +0 -361
- rucio-37.1.0.post1/lib/rucio/rse/protocols/srm.py +0 -338
- rucio-37.1.0.post1/lib/rucio/rse/protocols/webdav.py +0 -594
- rucio-37.1.0.post1/lib/rucio/rse/rsemanager.py +0 -881
- rucio-37.1.0.post1/lib/rucio/rse/translation.py +0 -260
- rucio-37.1.0.post1/lib/rucio/tests/common.py +0 -280
- rucio-37.1.0.post1/lib/rucio/transfertool/fts3.py +0 -1600
- rucio-37.1.0.post1/lib/rucio/transfertool/fts3_plugins.py +0 -152
- rucio-37.1.0.post1/lib/rucio/vcsversion.py +0 -11
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/accountlimits.py +0 -236
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/accounts.py +0 -1097
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/archives.py +0 -102
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/auth.py +0 -1644
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/common.py +0 -432
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/config.py +0 -304
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/credentials.py +0 -213
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/dids.py +0 -2340
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/dirac.py +0 -116
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/export.py +0 -75
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/heartbeats.py +0 -127
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/identities.py +0 -285
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/import.py +0 -132
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/lifetime_exceptions.py +0 -312
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/locks.py +0 -358
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/main.py +0 -91
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/meta_conventions.py +0 -241
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/metrics.py +0 -36
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/nongrid_traces.py +0 -97
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/ping.py +0 -88
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/redirect.py +0 -366
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/replicas.py +0 -1894
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/requests.py +0 -998
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/rses.py +0 -2250
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/rules.py +0 -854
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/scopes.py +0 -159
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/subscriptions.py +0 -650
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/traces.py +0 -137
- rucio-37.1.0.post1/lib/rucio/web/rest/flaskapi/v1/vos.py +0 -278
- rucio-37.1.0.post1/lib/rucio.egg-info/SOURCES.txt +0 -581
- rucio-37.1.0.post1/pyproject.toml +0 -187
- rucio-37.1.0.post1/requirements/requirements.server.txt +0 -297
- rucio-37.1.0.post1/setuputil.py +0 -127
- rucio-37.1.0.post1/tests/test_abacus_account.py +0 -77
- rucio-37.1.0.post1/tests/test_abacus_collection_replica.py +0 -180
- rucio-37.1.0.post1/tests/test_abacus_rse.py +0 -70
- rucio-37.1.0.post1/tests/test_account.py +0 -334
- rucio-37.1.0.post1/tests/test_account_limits.py +0 -199
- rucio-37.1.0.post1/tests/test_archive.py +0 -250
- rucio-37.1.0.post1/tests/test_automatix.py +0 -91
- rucio-37.1.0.post1/tests/test_bb8.py +0 -270
- rucio-37.1.0.post1/tests/test_belleii.py +0 -128
- rucio-37.1.0.post1/tests/test_bin_rucio.py +0 -2433
- rucio-37.1.0.post1/tests/test_cli_client_structure.py +0 -759
- rucio-37.1.0.post1/tests/test_clients.py +0 -253
- rucio-37.1.0.post1/tests/test_config.py +0 -151
- rucio-37.1.0.post1/tests/test_conveyor.py +0 -1794
- rucio-37.1.0.post1/tests/test_conveyor_submitter.py +0 -487
- rucio-37.1.0.post1/tests/test_counter.py +0 -173
- rucio-37.1.0.post1/tests/test_curl.py +0 -143
- rucio-37.1.0.post1/tests/test_dataset_replicas.py +0 -543
- rucio-37.1.0.post1/tests/test_did.py +0 -1269
- rucio-37.1.0.post1/tests/test_did_meta_plugins.py +0 -831
- rucio-37.1.0.post1/tests/test_download.py +0 -750
- rucio-37.1.0.post1/tests/test_gateway_external_representation.py +0 -475
- rucio-37.1.0.post1/tests/test_heartbeat.py +0 -192
- rucio-37.1.0.post1/tests/test_hermes.py +0 -278
- rucio-37.1.0.post1/tests/test_import_export.py +0 -1295
- rucio-37.1.0.post1/tests/test_judge_evaluator.py +0 -524
- rucio-37.1.0.post1/tests/test_judge_injector.py +0 -231
- rucio-37.1.0.post1/tests/test_multi_vo.py +0 -1073
- rucio-37.1.0.post1/tests/test_naming_convention.py +0 -64
- rucio-37.1.0.post1/tests/test_oidc.py +0 -1991
- rucio-37.1.0.post1/tests/test_permission.py +0 -76
- rucio-37.1.0.post1/tests/test_policy_package.py +0 -66
- rucio-37.1.0.post1/tests/test_reaper.py +0 -514
- rucio-37.1.0.post1/tests/test_replica.py +0 -1225
- rucio-37.1.0.post1/tests/test_replica_recoverer.py +0 -595
- rucio-37.1.0.post1/tests/test_replica_sorting.py +0 -531
- rucio-37.1.0.post1/tests/test_rse.py +0 -1597
- rucio-37.1.0.post1/tests/test_rse_selector.py +0 -156
- rucio-37.1.0.post1/tests/test_rule.py +0 -1636
- rucio-37.1.0.post1/tests/test_scope.py +0 -172
- rucio-37.1.0.post1/tests/test_subscription.py +0 -843
- rucio-37.1.0.post1/tests/test_throttler.py +0 -1018
- rucio-37.1.0.post1/tests/test_trace.py +0 -131
- rucio-37.1.0.post1/tests/test_transfer_plugins.py +0 -395
- rucio-37.1.0.post1/tests/test_undertaker.py +0 -188
- rucio-37.1.0.post1/tests/test_upload.py +0 -446
- rucio-37.1.0.post1/tests/test_utils.py +0 -184
- rucio-37.1.0.post1/tools/reset_database.py +0 -40
- {rucio-37.1.0.post1 → rucio-38.5.1}/ChangeLog +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/LICENSE +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/MANIFEST.in +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/README.md +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-abacus-collection-replica +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-admin +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-atropos +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-automatix +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-bb8 +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-cache-client +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-cache-consumer +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-conveyor-finisher +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-conveyor-poller +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-conveyor-preparer +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-conveyor-receiver +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-conveyor-stager +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-conveyor-submitter +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-dark-reaper +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-dumper +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-hermes +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-judge-evaluator +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-judge-injector +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-judge-repairer +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-kronos +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-minos +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-minos-temporary-expiration +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-oauth-manager +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-reaper +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-rse-decommissioner +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-storage-consistency-actions +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/bin/rucio-transmogrifier +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/etc/globus-config.yml.template +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/etc/ldap.cfg.template +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/etc/mail_templates/rule_approval_request.tmpl +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/etc/mail_templates/rule_approved_admin.tmpl +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/etc/mail_templates/rule_approved_user.tmpl +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/etc/mail_templates/rule_denied_admin.tmpl +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/etc/mail_templates/rule_denied_user.tmpl +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/etc/mail_templates/rule_ok_notification.tmpl +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/etc/rse-accounts.cfg.template +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/etc/rucio.cfg.atlas.client.template +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/cli/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/cli/bin_legacy/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/cli/lifetime_exception.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/cli/upload.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/client/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/common/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/common/bittorrent.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/common/checksum.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/common/constraints.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/common/dumper/consistency.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/common/dumper/data_models.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/common/dumper/path_parsing.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/common/extra.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/common/logging.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/common/stomp_utils.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/common/stopwatch.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/common/test_rucio_server.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/core/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/core/did_meta_plugins/filter_engine.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/core/heartbeat.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/core/identity.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/core/message.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/core/quarantined_replica.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/core/replica_sorter.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/core/rse_expression_parser.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/core/rse_selector.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/core/subscription.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/core/topology.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/abacus/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/atropos/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/auditor/hdfs.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/auditor/srmdumps.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/automatix/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/badreplicas/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/bb8/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/cache/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/conveyor/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/conveyor/stager.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/follower/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/hermes/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/judge/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/oauthmanager/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/oauthmanager/oauthmanager.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/reaper/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/replicarecoverer/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/rsedecommissioner/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/rsedecommissioner/config.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/rsedecommissioner/profiles/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/rsedecommissioner/profiles/atlas.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/rsedecommissioner/profiles/generic.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/rsedecommissioner/profiles/types.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/rsedecommissioner/rse_decommissioner.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/storage/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/storage/consistency/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/tracer/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/transmogrifier/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/daemons/undertaker/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/env.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/01eaf73ab656_add_new_rule_notification_state_progress.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/0437a40dbfd1_add_eol_at_in_rules.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/0f1adb7a599a_create_transfer_hops_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/102efcf145f4_added_stuck_at_column_to_rules.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/140fef722e91_cleanup_distances_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/14ec5aeb64cf_add_request_external_host.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/156fb5b5a14_add_request_type_to_requests_idx.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/1677d4d803c8_split_rse_availability_into_multiple.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/16a0aca82e12_create_index_on_table_replicas_path.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/1803333ac20f_adding_provenance_and_phys_group.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/1a29d6a9504c_add_didtype_chck_to_requests.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/1a80adff031a_create_index_on_rules_hist_recent.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/1c45d9730ca6_increase_identity_length.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/1d1215494e95_add_quarantined_replicas_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/1d96f484df21_asynchronous_rules_and_rule_approval.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/1f46c5f240ac_add_bytes_column_to_bad_replicas.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/1fc15ab60d43_add_message_history_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/2190e703eb6e_move_rse_settings_to_rse_attributes.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/21d6b9dc9961_add_mismatch_scheme_state_to_requests.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/22cf51430c78_add_availability_column_to_table_rses.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/22d887e4ec0a_create_sources_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/25821a8a45a3_remove_unique_constraint_on_requests.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/25fc855625cf_added_unique_constraint_to_rules.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/269fee20dee9_add_repair_cnt_to_locks.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/271a46ea6244_add_ignore_availability_column_to_rules.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/277b5fbb41d3_switch_heartbeats_executable.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/27e3a68927fb_remove_replicas_tombstone_and_replicas_.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/2854cd9e168_added_rule_id_column.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/295289b5a800_processed_by_and__at_in_requests.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/2962ece31cf4_add_nbaccesses_column_in_the_did_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/2af3291ec4c_added_replicas_history_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/2b69addda658_add_columns_for_third_party_copy_read_.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/2b8e7bcb4783_add_config_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/2ba5229cb54c_add_submitted_at_to_requests_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/2cbee484dcf9_added_column_volume_to_rse_transfer_.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/2edee4a83846_add_source_to_requests_and_requests_.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/2eef46be23d4_change_tokens_pk.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/2f648fc909f3_index_in_rule_history_on_scope_name.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/30d5206e9cad_increase_oauthrequest_redirect_msg_.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/30fa38b6434e_add_index_on_service_column_in_the_message_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/3152492b110b_added_staging_area_column.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/32c7d2783f7e_create_bad_replicas_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/3345511706b8_replicas_table_pk_definition_is_in_.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/35ef10d1e11b_change_index_on_table_requests.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/379a19b5332d_create_rse_limits_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/384b96aa0f60_created_rule_history_tables.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/3ac1660a1a72_extend_distance_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/3ad36e2268b0_create_collection_replicas_updates_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/3c9df354071b_extend_waiting_request_state.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/3d9813fab443_add_a_new_state_lost_in_badfilesstatus.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/40ad39ce3160_add_transferred_at_to_requests_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/4207be2fd914_add_notification_column_to_rules.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/42db2617c364_create_index_on_requests_external_id.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/436827b13f82_added_column_activity_to_table_requests.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/44278720f774_update_requests_typ_sta_upd_idx_index.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/45378a1e76a8_create_collection_replica_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/469d262be19_removing_created_at_index.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/4783c1f49cb4_create_distance_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/49a21b4d4357_create_index_on_table_tokens.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/4a2cbedda8b9_add_source_replica_expression_column_to_.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/4a7182d9578b_added_bytes_length_accessed_at_columns.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/4bab9edd01fc_create_index_on_requests_rule_id.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/4c3a4acfe006_new_attr_account_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/4cf0a2e127d4_adding_transient_metadata.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/50280c53117c_add_qos_class_to_rse.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/52153819589c_add_rse_id_to_replicas_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/52fd9f4916fa_added_activity_to_rules.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/53b479c3cb0f_fix_did_meta_table_missing_updated_at_.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/5673b4b6e843_add_wfms_metadata_to_rule_tables.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/575767d9f89_added_source_history_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/58bff7008037_add_started_at_to_requests.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/58c8b78301ab_rename_callback_to_message.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/5f139f77382a_added_child_rule_id_column.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/688ef1840840_adding_did_meta_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/6e572a9bfbf3_add_new_split_container_column_to_rules.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/70587619328_add_comment_column_for_subscriptions.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/739064d31565_remove_history_table_pks.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/7541902bf173_add_didsfollowed_and_followevents_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/7ec22226cdbf_new_replica_state_for_temporary_.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/810a41685bc1_added_columns_rse_transfer_limits.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/83f991c63a93_correct_rse_expression_length.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/8523998e2e76_increase_size_of_extended_attributes_.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/8ea9122275b1_adding_missing_function_based_indices.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/90f47792bb76_add_clob_payload_to_messages.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/914b8f02df38_new_table_for_lifetime_model_exceptions.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/94a5961ddbf2_add_estimator_columns.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/9a1b149a2044_add_saml_identity_type.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/9a45bc4ea66d_add_vp_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/9eb936a81eb1_true_is_true.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/a08fa8de1545_transfer_stats_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/a118956323f8_added_vo_table_and_vo_col_to_rse.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/a193a275255c_add_status_column_in_messages.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/a5f6f6e928a7_1_7_0.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/a616581ee47_added_columns_to_table_requests.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/a6eb23955c28_state_idx_non_functional.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/a74275a1ad30_added_global_quota_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/a93e4e47bda_heartbeats.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/ae2a56fcc89_added_comment_column_to_rules.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/b0070f3695c8_add_deletedidmeta_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/b4293a99f344_added_column_identity_to_table_tokens.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/b5493606bbf5_fix_primary_key_for_subscription_history.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/b7d287de34fd_removal_of_replicastate_source.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/b818052fa670_add_index_to_quarantined_replicas.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/b8caac94d7f0_add_comments_column_for_subscriptions_.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/b96a1c7e1cc4_new_bad_pfns_table_and_bad_replicas_.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/bb695f45c04_extend_request_state.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/bc68e9946deb_add_staging_timestamps_to_request.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/bf3baa1c1474_correct_pk_and_idx_for_history_tables.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/c0937668555f_add_qos_policy_map_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/ccdbcd48206e_add_did_type_column_index_on_did_meta_.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/cebad904c4dd_new_payload_column_for_heartbeats.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/d1189a09c6e0_oauth2_0_and_jwt_feature_support_adding_.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/d23453595260_extend_request_state_for_preparer.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/d6dceb1de2d_added_purge_column_to_rules.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/d6e2c3b2cf26_remove_third_party_copy_column_from_rse.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/d91002c5841_new_account_limits_table.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/e138c364ebd0_extending_columns_for_filter_and_.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/e59300c8b179_support_for_archive.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/f1b14a8c2ac1_postgres_use_check_constraints.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/f41ffe206f37_oracle_global_temporary_tables.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/f85a2962b021_adding_transfertool_column_to_requests_.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/fa7a7d78b602_increase_refresh_token_size.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/fb28a95fe288_add_replicas_rse_id_tombstone_idx.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/fe1a65b176c9_set_third_party_copy_read_and_write_.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/migrate_repo/versions/fe8ea2fa9788_added_third_party_copy_column_to_rse_.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/sautils.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/db/sqla/types.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/gateway/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/rse/protocols/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/rse/protocols/bittorrent.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/rse/protocols/cache.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/rse/protocols/dummy.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/rse/protocols/gfal.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/rse/protocols/globus.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/rse/protocols/http_cache.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/rse/protocols/mock.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/rse/protocols/posix.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/rse/protocols/rclone.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/rse/protocols/rfio.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/rse/protocols/ssh.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/rse/protocols/storm.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/rse/protocols/xrootd.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/tests/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/tests/common_server.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/transfertool/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/transfertool/bittorrent.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/transfertool/bittorrent_driver.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/transfertool/bittorrent_driver_qbittorrent.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/transfertool/globus.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/transfertool/globus_library.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/transfertool/mock.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/transfertool/transfertool.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/version.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/web/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/web/rest/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/web/rest/flaskapi/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/web/rest/flaskapi/authenticated_bp.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/web/rest/flaskapi/v1/__init__.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/web/rest/flaskapi/v1/templates/auth_crash.html +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/web/rest/flaskapi/v1/templates/auth_granted.html +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/web/rest/flaskapi/v1/types.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/web/rest/main.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/web/rest/metrics.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/lib/rucio/web/rest/ping.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/setup.cfg +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/setup.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_auditor.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_auditor_hdfs.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_auditor_srmdumps.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_authentication.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_bad_replica.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_boolean.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_credential.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_daemons.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_db.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_dumper.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_filter_engine.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_identity.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_impl_upload_download.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_judge_cleaner.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_judge_repairer.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_lifetime.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_message.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_meta_conventions.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_meta_did.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_module_import.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_monitor.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_oauthmanager.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_pfns.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_ping.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_preparer.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_qos.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_quarantined_replica.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_redirect.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_request.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_root_proxy.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_rse_expression_parser.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_rse_lfn2path.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_rse_protocol_gfal2.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_rse_protocol_gfal2_impl.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_rse_protocol_posix.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_rse_protocol_rclone.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_rse_protocol_rsync.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_rse_protocol_srm.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_rse_protocol_ssh.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_rse_protocol_webdav.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_rse_protocol_xrootd.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_rucio_server.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_tpc.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tests/test_transfer.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tools/bootstrap.py +0 -0
- {rucio-37.1.0.post1 → rucio-38.5.1}/tools/merge_rucio_configs.py +0 -0
rucio-38.5.1/AUTHORS.rst
ADDED
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
Individual contributors to the source code
|
|
2
|
+
------------------------------------------
|
|
3
|
+
- Mario Lassnig <mario.lassnig@cern.ch>, 2012-2019
|
|
4
|
+
- Vincent Garonne <vgaronne@gmail.com>, 2012-2019
|
|
5
|
+
- Angelos Molfetas <Angelos.Molfetas@cern.ch>, 2012
|
|
6
|
+
- Martin Barisits <martin.barisits@cern.ch>, 2012-2019
|
|
7
|
+
- Thomas Beermann <thomas.beermann@cern.ch>, 2012-2019
|
|
8
|
+
- Ralph Vigne <ralph.vigne@cern.ch>, 2012-2016
|
|
9
|
+
- Graeme Stewart <graeme.andrew.stewart@cern.ch>, 2012
|
|
10
|
+
- Yun-Pin Sun <winter0128@gmail.com>, 2012-2013
|
|
11
|
+
- Cedric Serfon <cedric.serfon@cern.ch>, 2012-2020
|
|
12
|
+
- Luis Rodrigues <lfrodrigues@gmail.com>, 2013
|
|
13
|
+
- WeiJen Chang <e4523744@gmail.com>, 2013-2014
|
|
14
|
+
- Gancho Dimitrov <gancho.dimitrov@cern.ch>, 2013
|
|
15
|
+
- Wen Guan <wguan.icedew@gmail.com>, 2014-2017
|
|
16
|
+
- David Cameron <d.g.cameron@gmail.com>, 2014-2016
|
|
17
|
+
- Tomáš Kouba <tomas.kouba@cern.ch>, 2014-2015
|
|
18
|
+
- Cheng-Hsi Chao <cheng-hsi.chao@cern.ch>, 2014
|
|
19
|
+
- Evangelia Liotiri <evangelia.liotiri@cern.ch>, 2014-2015
|
|
20
|
+
- Joaquín Bogado <jbogado@linti.unlp.edu.ar>, 2014-2018
|
|
21
|
+
- Fernando López <fernando.e.lopez@gmail.com>, 2015-2016
|
|
22
|
+
- Sylvain Blunier <sylvain.blunier@cern.ch>, 2016
|
|
23
|
+
- Tomas Javurek <tomas.javurek@cern.ch>, 2016-2019
|
|
24
|
+
- Brian Bockelman <bbockelm@cse.unl.edu>, 2016-2018
|
|
25
|
+
- Tobias Wegner <twegner@cern.ch>, 2017-2019
|
|
26
|
+
- Frank Berghaus <frank.berghaus@cern.ch>, 2017
|
|
27
|
+
- Vitjan Zavrtanik <vitjan.zavrtanik@cern.ch>, 2017
|
|
28
|
+
- Stefan Prenner <stefan.prenner@cern.ch>, 2017-2018
|
|
29
|
+
- Nicolo Magini <Nicolo.Magini@cern.ch>, 2017-2018
|
|
30
|
+
- Oliver Freyermuth <o.freyermuth@googlemail.com>, 2017
|
|
31
|
+
- Eric Vaandering <ericvaandering@gmail.com>, 2018
|
|
32
|
+
- Dimitrios Christidis <dimitrios.christidis@cern.ch>, 2018-2019
|
|
33
|
+
- Igor Mandrichenko <ivm@fnal.gov>, 2018
|
|
34
|
+
- Shreyansh Khajanchi <shreyansh_k@live.com>, 2018
|
|
35
|
+
- Robert Illingworth <illingwo@fnal.gov>, 2018
|
|
36
|
+
- Hannes Hansen <hannes.jakob.hansen@cern.ch>, 2018-2019
|
|
37
|
+
- Gabriele Gaetano Fronzé <gabriele.fronze@to.infn.it>, 2018-2021
|
|
38
|
+
- James Perry <j.perry@epcc.ed.ac.uk>, 2019
|
|
39
|
+
- Vivek Nigam <viveknigam.nigam3@gmail.com>, 2019 - 2020
|
|
40
|
+
- Kaustubh Hiware <hiwarekaustubh@gmail.com>, 2019
|
|
41
|
+
- Florido Paganelli <florido.paganelli@hep.lu.se>, 2019
|
|
42
|
+
- Boris Bauermeister <Boris.Bauermeister@gmail.com> 2019
|
|
43
|
+
- Ruturaj Gujar <ruturaj.gujar23@gmail.com> 2019
|
|
44
|
+
- Andrew Lister <andrew.lister@stfc.ac.uk>, 2019
|
|
45
|
+
- Aristeidis Fkiaras <aristeidis.fkiaras@cern.ch>, 2019
|
|
46
|
+
- Matt Snyder <msnyder@bnl.gov>, 2019
|
|
47
|
+
- Brandon White <bjwhite@fnal.gov> 2019-2023
|
|
48
|
+
- Benedikt Ziemons <benedikt.ziemons@cern.ch>, 2020
|
|
49
|
+
- Muhammad Aditya Hilmy <mhilmy@hey.com>, 2020
|
|
50
|
+
- Eli Chadwick <eli.chadwick@stfc.ac.uk>, 2020
|
|
51
|
+
- Patrick Austin <patrick.austin@stfc.ac.uk>, 2020
|
|
52
|
+
- Rob Barnsley <R.Barnsley@skatelescope.org>, 2020
|
|
53
|
+
- Alan Malta Rodrigues <alan.malta@cern.ch>, 2020
|
|
54
|
+
- Mayank Sharma <mayank.sharma@cern.ch>, 2020
|
|
55
|
+
- Ian Johnson, <ian.johnson@stfc.ac.uk>, 2021
|
|
56
|
+
- Radu Carpa <radu.carpa@cern.ch>, 2021
|
|
57
|
+
- Dhruv Sondhi <dhruvsondhi05@gmail.com>, 2021
|
|
58
|
+
- Simon Fayer <simon.fayer05@imperial.ac.uk>, 2021
|
|
59
|
+
- Ilija Vukotic <ivukotic@uchicago.edu>, 2020-2021
|
|
60
|
+
- David Población Criado <david.poblacion.criado@cern.ch>, 2021
|
|
61
|
+
- Nick Smith <nick.smith@cern.ch>, 2021
|
|
62
|
+
- Rizart Dona <rizart.dona@cern.ch>, 2021
|
|
63
|
+
- Rakshita Varadarajan <rakshitajps@gmail.com>, 2021
|
|
64
|
+
- Fabio Luchetti <fabio.luchetti@cern.ch>, 2021
|
|
65
|
+
- Stefan Piperov <stefan.piperov@cern.ch>, 2021
|
|
66
|
+
- Jensen Zhang <hack@jensen-zhang.site>, 2022
|
|
67
|
+
- Aksel Lunde Aase <aksel.lunde.aase@gmail.com>, 2022
|
|
68
|
+
- Elena Gazzarrini <gazzarrini.elena@gmail.com>, 2022-2023
|
|
69
|
+
- Maximilian Linhoff, <maximilian.linhoff@tu-dortmund.de>, 2024
|
|
70
|
+
- Eric Banzuzi, <eric.banzuzi@gmail.com>, 2024
|
|
71
|
+
- Paul Millar, <paul.millar@desy.de>, 2025
|
|
72
|
+
- Vimalan S <vimalan.github@gmail.com>, 2025
|
|
73
|
+
|
|
74
|
+
Organisations employing contributors
|
|
75
|
+
------------------------------------
|
|
76
|
+
- European Organisation for Nuclear Research (Switzerland)
|
|
77
|
+
- University of Oslo (Norway)
|
|
78
|
+
- University of Wisconsin Madison (USA)
|
|
79
|
+
- National University of La Plata (Argentina)
|
|
80
|
+
- Albert Ludwigs Universität Freiburg (Germany)
|
|
81
|
+
- University of Nebraska Lincoln (USA)
|
|
82
|
+
- Bergische Universität Wuppertal (Germany)
|
|
83
|
+
- University of Victoria (Canada)
|
|
84
|
+
- INFN e Universita Genova (Italy)
|
|
85
|
+
- University of Bonn (Germany)
|
|
86
|
+
- Fermi National Accelerator Laboratory (USA)
|
|
87
|
+
- Leopold-Franzens Universität Innsbruck (Austria)
|
|
88
|
+
- Academia Sinica (Taiwan)
|
|
89
|
+
- University of Edinburgh (UK)
|
|
90
|
+
- Birla Institute of Technology, Mesra (India)
|
|
91
|
+
- Indian Institute of Technology, Kharagpur (India)
|
|
92
|
+
- Stockholm University, Stockholm (Sweden)
|
|
93
|
+
- Dwarkadas J. Sanghvi College of Engineering (India)
|
|
94
|
+
- Science and Technology Facilities Council (UK)
|
|
95
|
+
- Brookhaven National Laboratory (USA)
|
|
96
|
+
- Institut Teknologi Bandung (Indonesia)
|
|
97
|
+
- Imperial College London (UK)
|
|
98
|
+
- University of Chicago (USA)
|
|
99
|
+
- Purdue University (USA)
|
|
100
|
+
- TU Dortmund University (Germany)
|
|
101
|
+
- Deutsches Elektronen-Synchrotron DESY (Germany)
|
rucio-38.5.1/PKG-INFO
ADDED
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: rucio
|
|
3
|
+
Version: 38.5.1
|
|
4
|
+
Summary: Rucio Package
|
|
5
|
+
Home-page: https://rucio.cern.ch/
|
|
6
|
+
Author: Rucio
|
|
7
|
+
Author-email: rucio-dev@cern.ch
|
|
8
|
+
License: Apache License, Version 2.0
|
|
9
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
10
|
+
Classifier: License :: OSI Approved :: Apache Software License
|
|
11
|
+
Classifier: Intended Audience :: Information Technology
|
|
12
|
+
Classifier: Intended Audience :: System Administrators
|
|
13
|
+
Classifier: Operating System :: POSIX :: Linux
|
|
14
|
+
Classifier: Natural Language :: English
|
|
15
|
+
Classifier: Programming Language :: Python
|
|
16
|
+
Classifier: Programming Language :: Python :: 3
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
19
|
+
Classifier: Environment :: No Input/Output (Daemon)
|
|
20
|
+
Requires-Python: >=3.9, <4
|
|
21
|
+
License-File: LICENSE
|
|
22
|
+
License-File: AUTHORS.rst
|
|
23
|
+
Requires-Dist: requests<=2.32.3
|
|
24
|
+
Requires-Dist: urllib3<=1.26.19
|
|
25
|
+
Requires-Dist: dogpile-cache<=1.2.2
|
|
26
|
+
Requires-Dist: packaging<=24.1
|
|
27
|
+
Requires-Dist: tabulate<=0.9.0
|
|
28
|
+
Requires-Dist: jsonschema<=4.23.0
|
|
29
|
+
Requires-Dist: rich<=13.9.4
|
|
30
|
+
Requires-Dist: typing_extensions<=4.12.2
|
|
31
|
+
Requires-Dist: argcomplete<=3.5.3
|
|
32
|
+
Requires-Dist: boto
|
|
33
|
+
Requires-Dist: python-magic<=0.4.27
|
|
34
|
+
Requires-Dist: paramiko<=3.5.1
|
|
35
|
+
Requires-Dist: boto3<=1.37.5
|
|
36
|
+
Requires-Dist: sqlalchemy<=2.0.38
|
|
37
|
+
Requires-Dist: alembic<=1.14.1
|
|
38
|
+
Requires-Dist: pymemcache<=4.0.0
|
|
39
|
+
Requires-Dist: python-dateutil<=2.9.0.post0
|
|
40
|
+
Requires-Dist: stomp-py<=8.2.0
|
|
41
|
+
Requires-Dist: statsd<=4.0.1
|
|
42
|
+
Requires-Dist: geoip2<=5.0.1
|
|
43
|
+
Requires-Dist: google-auth<=2.38.0
|
|
44
|
+
Requires-Dist: redis<=5.2.1
|
|
45
|
+
Requires-Dist: flask<=3.1.0
|
|
46
|
+
Requires-Dist: oic<=1.7.0
|
|
47
|
+
Requires-Dist: prometheus_client<=0.21.1
|
|
48
|
+
Provides-Extra: oracle
|
|
49
|
+
Requires-Dist: oracledb<=3.1.1; extra == "oracle"
|
|
50
|
+
Provides-Extra: mongo
|
|
51
|
+
Requires-Dist: pymongo<=4.11.2; extra == "mongo"
|
|
52
|
+
Provides-Extra: elastic
|
|
53
|
+
Requires-Dist: elasticsearch<=8.15.1; extra == "elastic"
|
|
54
|
+
Provides-Extra: postgresql
|
|
55
|
+
Requires-Dist: psycopg<=3.2.3; extra == "postgresql"
|
|
56
|
+
Requires-Dist: psycopg-binary<=3.2.3; extra == "postgresql"
|
|
57
|
+
Requires-Dist: psycopg-pool<=3.2.3; extra == "postgresql"
|
|
58
|
+
Provides-Extra: mysql
|
|
59
|
+
Requires-Dist: PyMySQL<=1.1.1; extra == "mysql"
|
|
60
|
+
Provides-Extra: kerberos
|
|
61
|
+
Requires-Dist: kerberos<=1.3.1; extra == "kerberos"
|
|
62
|
+
Requires-Dist: pykerberos<=1.2.4; extra == "kerberos"
|
|
63
|
+
Requires-Dist: requests-kerberos<=0.15.0; extra == "kerberos"
|
|
64
|
+
Provides-Extra: globus
|
|
65
|
+
Requires-Dist: PyYAML<=6.0.2; extra == "globus"
|
|
66
|
+
Requires-Dist: globus-sdk<=3.41.0; extra == "globus"
|
|
67
|
+
Provides-Extra: saml
|
|
68
|
+
Requires-Dist: python3-saml<=1.16.0; extra == "saml"
|
|
69
|
+
Provides-Extra: dev
|
|
70
|
+
Requires-Dist: pytest; extra == "dev"
|
|
71
|
+
Requires-Dist: pytest-xdist; extra == "dev"
|
|
72
|
+
Requires-Dist: pytest-cov; extra == "dev"
|
|
73
|
+
Requires-Dist: pyflakes; extra == "dev"
|
|
74
|
+
Requires-Dist: flake8; extra == "dev"
|
|
75
|
+
Requires-Dist: pylint; extra == "dev"
|
|
76
|
+
Requires-Dist: isort; extra == "dev"
|
|
77
|
+
Requires-Dist: xmltodict; extra == "dev"
|
|
78
|
+
Requires-Dist: pytz; extra == "dev"
|
|
79
|
+
Requires-Dist: pycodestyle; extra == "dev"
|
|
80
|
+
Requires-Dist: pydoc-markdown; extra == "dev"
|
|
81
|
+
Requires-Dist: docspec_python; extra == "dev"
|
|
82
|
+
Requires-Dist: sh; extra == "dev"
|
|
83
|
+
Requires-Dist: PyYAML; extra == "dev"
|
|
84
|
+
Dynamic: author
|
|
85
|
+
Dynamic: author-email
|
|
86
|
+
Dynamic: classifier
|
|
87
|
+
Dynamic: home-page
|
|
88
|
+
Dynamic: license
|
|
89
|
+
Dynamic: license-file
|
|
90
|
+
Dynamic: provides-extra
|
|
91
|
+
Dynamic: requires-dist
|
|
92
|
+
Dynamic: requires-python
|
|
93
|
+
Dynamic: summary
|
rucio-38.5.1/bin/rucio
ADDED
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
# Copyright European Organization for Nuclear Research (CERN) since 2012
|
|
3
|
+
#
|
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
# you may not use this file except in compliance with the License.
|
|
6
|
+
# You may obtain a copy of the License at
|
|
7
|
+
#
|
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
#
|
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
# See the License for the specific language governing permissions and
|
|
14
|
+
# limitations under the License.
|
|
15
|
+
|
|
16
|
+
import argparse
|
|
17
|
+
import sys
|
|
18
|
+
from typing import TYPE_CHECKING, Optional
|
|
19
|
+
|
|
20
|
+
from rucio.cli.bin_legacy.rucio import get_parser
|
|
21
|
+
from rucio.cli.bin_legacy.rucio import main as main_legacy
|
|
22
|
+
from rucio.cli.command import main
|
|
23
|
+
from rucio.common.utils import setup_logger
|
|
24
|
+
|
|
25
|
+
if TYPE_CHECKING:
|
|
26
|
+
from logging import Logger
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
def _get_first_command(args: list[str]) -> Optional[str]:
|
|
30
|
+
return next(
|
|
31
|
+
(
|
|
32
|
+
arg for arg in args
|
|
33
|
+
if arg != 'rucio' and (arg[0] != "-" or arg in ("-h", "--help", "--version"))
|
|
34
|
+
),
|
|
35
|
+
None
|
|
36
|
+
)
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
def make_warning(logger: "Logger") -> None:
|
|
40
|
+
base_warning = "This method is being deprecated."
|
|
41
|
+
new_command = map_legacy_command()
|
|
42
|
+
if new_command is not None:
|
|
43
|
+
warning = f"{base_warning} Please replace your command with `rucio {' '.join(new_command)}`"
|
|
44
|
+
else:
|
|
45
|
+
warning = base_warning + " Please view rucio -h for an updated help menu."
|
|
46
|
+
|
|
47
|
+
logger.warning(warning)
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
def map_legacy_command() -> Optional[list[str]]:
|
|
51
|
+
command = _get_first_command(sys.argv[1:])
|
|
52
|
+
|
|
53
|
+
new_command = None
|
|
54
|
+
if command not in ("-h", "--version", None):
|
|
55
|
+
command_map = {
|
|
56
|
+
"list-file-replicas": ["replica", "list", "file"],
|
|
57
|
+
"list-dataset-replicas": ["replica", "list", "dataset"],
|
|
58
|
+
"list-datasets-rse": ["replica", "list", "dataset", "--rse"],
|
|
59
|
+
"add-dataset": ["did", "add", "--type dataset"],
|
|
60
|
+
"add-container": ["did", "add", "--type container"],
|
|
61
|
+
"attach": ["did", "content", "add"],
|
|
62
|
+
"detach": ["did", "content", "remove"],
|
|
63
|
+
"ls": ["did", "list"],
|
|
64
|
+
"list-dids": ["did", "list"],
|
|
65
|
+
"list-parent-dids": ["did", "list", "--parent"],
|
|
66
|
+
"list-scopes": ["scope", "list"],
|
|
67
|
+
"close": ["did", "update", "--close"],
|
|
68
|
+
"reopen": ["did", "update", "--open"],
|
|
69
|
+
"stat": ["did", "show"],
|
|
70
|
+
"erase": ["did", "remove"],
|
|
71
|
+
"list-content": ["did", "content", "list"],
|
|
72
|
+
"list-content-history": ["did", "content", "history"],
|
|
73
|
+
"upload": ["upload"],
|
|
74
|
+
"get": ["download"],
|
|
75
|
+
"download": ["download"],
|
|
76
|
+
"get-metadata": ["did", "metadata", "list"],
|
|
77
|
+
"set-metadata": ["did", "metadata", "add"],
|
|
78
|
+
"delete-metadata": ["did", "metadata", "remove"],
|
|
79
|
+
"list-rse-usage": ["rse", "show"],
|
|
80
|
+
"list-account-usage": ["account", "limit", "list"],
|
|
81
|
+
"list-account-limits": ["account", "limit", "list"],
|
|
82
|
+
"add-rule": ["rule", "add"],
|
|
83
|
+
"delete-rule": ["rule", "remove"],
|
|
84
|
+
"rule-info": ["rule", "show"],
|
|
85
|
+
"list-rules": ["rule", "list"],
|
|
86
|
+
"list-rules-history": ["rule", "history"],
|
|
87
|
+
"update-rule": ["rule", "update"],
|
|
88
|
+
"move-rule": ["rule", "move"],
|
|
89
|
+
"list-rses": ["rse", "list"],
|
|
90
|
+
"list-suspicious-replicas": ["replica", "state", "suspicious"],
|
|
91
|
+
"list-rse-attributes": ["rse", "attribute", "list"],
|
|
92
|
+
"touch": ["did", "update", "--touch"],
|
|
93
|
+
"add-lifetime-exception": ["lifetime-exception", "add"],
|
|
94
|
+
}
|
|
95
|
+
new_command = command_map.get(command)
|
|
96
|
+
|
|
97
|
+
return new_command
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
if __name__ == "__main__":
|
|
101
|
+
commands = ("account", "config", "did", "replica", "rse", "rule", "scope", "subscription", "ping", "whoami", "test-server", "lifetime-exception", "upload", "download", "opendata")
|
|
102
|
+
|
|
103
|
+
parser = argparse.ArgumentParser(add_help=False)
|
|
104
|
+
# Check for legacy flag
|
|
105
|
+
parser.add_argument("--legacy", action="store_true")
|
|
106
|
+
# Check for commands in the new command list
|
|
107
|
+
parser.add_argument("-h", "--help", action="store_true")
|
|
108
|
+
parser.add_argument("--version", action="store_true")
|
|
109
|
+
|
|
110
|
+
args, _ = parser.parse_known_args()
|
|
111
|
+
|
|
112
|
+
logger = setup_logger(module_name=__name__)
|
|
113
|
+
|
|
114
|
+
if args.legacy:
|
|
115
|
+
make_warning(logger)
|
|
116
|
+
sys.argv.pop(sys.argv.index('--legacy'))
|
|
117
|
+
main_legacy()
|
|
118
|
+
|
|
119
|
+
elif (any(arg in commands for arg in sys.argv)) or args.help or args.version:
|
|
120
|
+
main() # pylint: disable=E1120
|
|
121
|
+
|
|
122
|
+
else:
|
|
123
|
+
try:
|
|
124
|
+
get_parser().parse_args()
|
|
125
|
+
make_warning(logger)
|
|
126
|
+
main_legacy()
|
|
127
|
+
|
|
128
|
+
# Make a custom warning - show the new help menu when invalid commands are called.
|
|
129
|
+
except argparse.ArgumentError:
|
|
130
|
+
logger.error("Invalid argument(s) - %s " % sys.argv[1:])
|
|
131
|
+
command = map_legacy_command()
|
|
132
|
+
if command is not None:
|
|
133
|
+
sys.argv = ["rucio"] + command + ["-h"]
|
|
134
|
+
else:
|
|
135
|
+
sys.argv = ["rucio", "-h"]
|
|
136
|
+
|
|
137
|
+
main() # pylint: disable=E1120
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# Copyright European Organization for Nuclear Research (CERN) since 2012
|
|
3
|
+
#
|
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
# you may not use this file except in compliance with the License.
|
|
6
|
+
# You may obtain a copy of the License at
|
|
7
|
+
#
|
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
#
|
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
# See the License for the specific language governing permissions and
|
|
14
|
+
# limitations under the License.
|
|
15
|
+
|
|
16
|
+
"""
|
|
17
|
+
Abacus account is a daemon to update account counters.
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
import argparse
|
|
21
|
+
import signal
|
|
22
|
+
|
|
23
|
+
from rucio.daemons.abacus.account import run, stop
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
def get_parser():
|
|
27
|
+
"""
|
|
28
|
+
Returns the argparse parser.
|
|
29
|
+
"""
|
|
30
|
+
description = (
|
|
31
|
+
"The Abacus-Account daemon is responsible for updating account usages. "
|
|
32
|
+
"It checks if there are new entries in the UpdatedAccountCounter table "
|
|
33
|
+
"and updates the account counters in the AccountCounter table by adding "
|
|
34
|
+
"or subtracting the amount and size of files and recalculating the quotas."
|
|
35
|
+
)
|
|
36
|
+
|
|
37
|
+
parser = argparse.ArgumentParser(description=description, epilog='''
|
|
38
|
+
Upload a file::
|
|
39
|
+
|
|
40
|
+
$ rucio upload --rse MOCK --scope mock filename.txt
|
|
41
|
+
|
|
42
|
+
Check account usage::
|
|
43
|
+
|
|
44
|
+
$ rucio list-account-usage username
|
|
45
|
+
+-------+---------+---------+--------------+
|
|
46
|
+
| RSE | USAGE | LIMIT | QUOTA LEFT |
|
|
47
|
+
|-------+---------+---------+--------------|
|
|
48
|
+
+-------+---------+---------+--------------+
|
|
49
|
+
|
|
50
|
+
Run the daemon::
|
|
51
|
+
|
|
52
|
+
$ rucio-abacus-account --run-once
|
|
53
|
+
|
|
54
|
+
Check account usage again::
|
|
55
|
+
|
|
56
|
+
$ rucio list-account-usage username
|
|
57
|
+
+-------+------------+---------+--------------+
|
|
58
|
+
| RSE | USAGE | LIMIT | QUOTA LEFT |
|
|
59
|
+
|-------+------------+---------+--------------|
|
|
60
|
+
| MOCK | 211.724 kB | 0.000 B | 0.000 B |
|
|
61
|
+
+-------+------------+---------+--------------+
|
|
62
|
+
|
|
63
|
+
''', formatter_class=argparse.RawDescriptionHelpFormatter)
|
|
64
|
+
parser.add_argument("--run-once", action="store_true", default=False, help='One iteration only')
|
|
65
|
+
parser.add_argument("--threads", action="store", default=1, type=int, help='Concurrency control: total number of threads on this process')
|
|
66
|
+
parser.add_argument("--enable-history", action="store_true", default=False, help='Record account usage into history table every hour.')
|
|
67
|
+
parser.add_argument('--sleep-time', action="store", default=10, type=int, help='Concurrency control: thread sleep time after each chunk of work')
|
|
68
|
+
|
|
69
|
+
return parser
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
if __name__ == "__main__":
|
|
73
|
+
|
|
74
|
+
signal.signal(signal.SIGTERM, stop)
|
|
75
|
+
|
|
76
|
+
parser = get_parser()
|
|
77
|
+
args = parser.parse_args()
|
|
78
|
+
try:
|
|
79
|
+
run(once=args.run_once, threads=args.threads, fill_history_table=args.enable_history, sleep_time=args.sleep_time)
|
|
80
|
+
except KeyboardInterrupt:
|
|
81
|
+
stop()
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# Copyright European Organization for Nuclear Research (CERN) since 2012
|
|
3
|
+
#
|
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
# you may not use this file except in compliance with the License.
|
|
6
|
+
# You may obtain a copy of the License at
|
|
7
|
+
#
|
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
#
|
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
# See the License for the specific language governing permissions and
|
|
14
|
+
# limitations under the License.
|
|
15
|
+
|
|
16
|
+
"""
|
|
17
|
+
Abacus rse is a daemon to update rse counters.
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
import argparse
|
|
21
|
+
import signal
|
|
22
|
+
|
|
23
|
+
from rucio.daemons.abacus.rse import run, stop
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
def get_parser():
|
|
27
|
+
"""
|
|
28
|
+
Returns the argparse parser.
|
|
29
|
+
"""
|
|
30
|
+
description = (
|
|
31
|
+
"The Abacus-RSE daemon is responsible for updating RSE usages. "
|
|
32
|
+
"It checks if there are new entries in the UpdatedRSECounter table "
|
|
33
|
+
"and updates the RSE counter in the RSECounter table "
|
|
34
|
+
"by adding or subtracting the amount of files and the size."
|
|
35
|
+
)
|
|
36
|
+
|
|
37
|
+
parser = argparse.ArgumentParser(description=description, epilog='''
|
|
38
|
+
Upload a file to your RSE::
|
|
39
|
+
|
|
40
|
+
$ rucio upload --rse MOCK --scope mock filename.txt
|
|
41
|
+
|
|
42
|
+
Check RSE usage::
|
|
43
|
+
|
|
44
|
+
$ rucio list-rse-usage MOCK
|
|
45
|
+
USAGE:
|
|
46
|
+
------
|
|
47
|
+
files: 0
|
|
48
|
+
used: 0.000 B
|
|
49
|
+
rse: MOCK
|
|
50
|
+
updated_at: 2018-11-30 14:28:34
|
|
51
|
+
source: rucio
|
|
52
|
+
------
|
|
53
|
+
|
|
54
|
+
Run the daemon::
|
|
55
|
+
|
|
56
|
+
$ rucio-abacus-rse --run-once
|
|
57
|
+
|
|
58
|
+
Check RSE usage again::
|
|
59
|
+
|
|
60
|
+
$ rucio list-rse-usage MOCK
|
|
61
|
+
USAGE:
|
|
62
|
+
------
|
|
63
|
+
files: 1
|
|
64
|
+
used: 213.481 kB
|
|
65
|
+
rse: MOCK
|
|
66
|
+
updated_at: 2018-12-03 08:58:33
|
|
67
|
+
source: rucio
|
|
68
|
+
------
|
|
69
|
+
''', formatter_class=argparse.RawDescriptionHelpFormatter)
|
|
70
|
+
parser.add_argument("--run-once", action="store_true", default=False, help='One iteration only')
|
|
71
|
+
parser.add_argument("--threads", action="store", default=1, type=int, help='Concurrency control: total number of threads on this process')
|
|
72
|
+
parser.add_argument("--enable-history", action="store_true", default=False, help='Record RSE usage into history table every hour.')
|
|
73
|
+
parser.add_argument('--sleep-time', action="store", default=10, type=int, help='Concurrency control: thread sleep time after each chunk of work')
|
|
74
|
+
return parser
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
if __name__ == "__main__":
|
|
78
|
+
|
|
79
|
+
signal.signal(signal.SIGTERM, stop)
|
|
80
|
+
parser = get_parser()
|
|
81
|
+
args = parser.parse_args()
|
|
82
|
+
try:
|
|
83
|
+
run(once=args.run_once, threads=args.threads, fill_history_table=args.enable_history, sleep_time=args.sleep_time)
|
|
84
|
+
except KeyboardInterrupt:
|
|
85
|
+
stop()
|