Daemon rucio-transmogrifier¶
The Transmogrifier daemon is responsible for the creation of replication rules for DIDs matching a subscription.
usage: rucio-transmogrifier [-h] [--run-once] [--threads THREADS] [--bulk BULK] [--sleep-time SLEEP_TIME]
Named Arguments¶
- --run-once
 Runs one loop iteration
Default: False
- --threads
 Concurrency control: number of threads
Default: 1
- --bulk
 Bulk control: number of requests per cycle
Default: 1000
- --sleep-time
 Seconds to sleep between two cycles
Default: 60
Create a DID:
$ python
from rucio.core.did import add_did
from rucio.db.sqla.constants import DIDType
add_did(scope='mock', name='test', type=DIDType.DATASET, account='root', meta={'project': 'test_project'})
Create a subscription that matches the DID:
$ rucio-admin subscription add test '{"scope": ["mock"], "project": ["test_project"]}' '[{"copies": 1, "rse_expression": "MOCK", "activity": "User Subscriptions"}]' 'df'
Check if there are rules for the DID:
$ rucio list-rules mock:test
ID                                ACCOUNT    SCOPE:NAME    STATE[OK/REPL/STUCK]    RSE_EXPRESSION      COPIES  EXPIRES (UTC)    CREATED (UTC)
--------------------------------  ---------  ------------  ----------------------  ----------------  --------  ---------------  -------------------
Run the daemon:
$ rucio-transmogrifier --run-once
Check again if there are rules for the DID:
$ rucio list-rules mock:test
ID                                ACCOUNT    SCOPE:NAME    STATE[OK/REPL/STUCK]    RSE_EXPRESSION      COPIES  EXPIRES (UTC)    CREATED (UTC)
--------------------------------  ---------  ------------  ----------------------  ----------------  --------  ---------------  -------------------
e658f6f47f444326aad624dabef7b785  root       mock:test     OK[0/0/0]               MOCK                     1                   2018-12-03 14:01:19