rucio / containers

Containers for Rucio
Apache License 2.0
8 stars 54 forks source link

WIP: Update fts image to use alma9 #327

Closed maxnoe closed 4 days ago

maxnoe commented 3 weeks ago

Today I was following the new installation instructions and trying to setup a docker container for fts on alma 9.

Here is how far I came.

This is not tested yet in any meaningful way, happy to hear what you'd like to see for testing.

Side note: the docker-compose file is not really helpful, it doesn't actually start as all the certificates are missing and are required for fts / httpd to actually startup

bari12 commented 3 weeks ago

👍 In terms of testing: Since we don't have a CI pipeline really on the containers repo, I think the main thing to do is to see if the integration tests on the main repository would pass with this. I think this can be tested relatively easy.

maxnoe commented 3 weeks ago

Could you provide some guidance how I could run the rucio tests with this custom fts image?

maany commented 2 weeks ago

You can locally build the new fts image. Then modify the fts service in the docker-compose.yml shown below to point to your local fts image

https://github.com/rucio/rucio/blob/ba102506d470c417fd2b136304e4fa4f7fc3a870/etc/docker/dev/docker-compose.yml#L135-L164

You can bring up the docker compose ( select the right profiles ), initialize the test environment and run a couple of integration tests. Here's how we do it in the integration tests, just modify the commands to fit your local setup:

https://github.com/rucio/rucio/blob/ba102506d470c417fd2b136304e4fa4f7fc3a870/.github/workflows/integration_tests.yml#L121-L129

p.s. I'd recommend writing a custom script to save you some with time bringing up, testing and taking down the containers.

maxnoe commented 2 weeks ago

I guess the tests involving FTS only start around here? https://github.com/rucio/rucio/blob/ba102506d470c417fd2b136304e4fa4f7fc3a870/.github/workflows/integration_tests.yml#L144

rdimaio commented 2 weeks ago

I guess the tests involving FTS only start around here? https://github.com/rucio/rucio/blob/ba102506d470c417fd2b136304e4fa4f7fc3a870/.github/workflows/integration_tests.yml#L144

Yes, those are the integ tests - unfortunately they're not too clearly separated from the rest of the tests. I opened a discussion about it here: https://github.com/rucio/rucio/discussions/6584

maany commented 2 weeks ago

@maxnoe yes, for your case, you can just run Test Conveyor, Execute transfer and export FTS transfer details and Verify TPC transfers from FTS logs steps.

maxnoe commented 1 week ago

Hi again,

I tried running the tests, but it fails with dependencies of rucio not being installed. The tools/run_tests.sh -ir script has a section that would pip install -r requirements.server.txt -r requirements.dev.txt, but that command is not triggered because the requirements directory is not mounted into the dev_rucio_1 container.

How does this work in the CI?

maxnoe commented 1 week ago

For now I just mounted the directory.

Using this diff:

diff --git a/etc/docker/dev/docker-compose.yml b/etc/docker/dev/docker-compose.yml
index 83079f217..0eb6fb207 100644
--- a/etc/docker/dev/docker-compose.yml
+++ b/etc/docker/dev/docker-compose.yml
@@ -50,6 +50,7 @@ services:
       - ../../../bin:/opt/rucio/bin:Z
       - ../../../lib:/opt/rucio/lib:Z
       - ../../../tests:/opt/rucio/tests:Z
+      - ../../../requirements:/opt/rucio/requirements:Z
       - ../../../:/rucio_source:ro
     environment:
       - REQUESTS_CA_BUNDLE=/etc/pki/tls/certs/ca-bundle.crt
@@ -134,7 +135,7 @@ services:
       - ./oracle_setup.sh:/container-entrypoint-initdb.d/oracle_setup.sh:Z
   fts:
     container_name: dev_fts_1
-    image: docker.io/rucio/fts
+    image: fts-alma9
     platform: linux/amd64
     profiles:
       - storage

and this script to run the tests, everything worked fine (one test was skipped):

❯  cat run-fts-tests.sh
set -eux -o pipefail
export COMPOSE_FILE="./etc/docker/dev/docker-compose.yml"
export CMOPOSE_PROJECT_NAME="dev"

profiles="--profile storage --profile externalmetadata --profile iam"

# cleanup from any previous runs
docker compose ${profiles} down --remove-orphans --volumes

docker compose ${profiles} up -d

# setup steps
docker exec -t dev_rucio_1 cp etc/rse-accounts.cfg.template etc/rse-accounts.cfg
docker exec -t dev_rucio_1 tools/run_tests.sh -ir

docker exec -t dev_rucio_1 tools/pytest.sh -v --tb=short tests/test_conveyor.py

docker exec -t dev_rucio_1 tools/pytest.sh -v --tb=short --export-artifacts-from="test_tpc" tests/test_tpc.py
docker exec -t dev_rucio_1 grep -Fq "3rd pull" /tmp/test_tpc.artifact

Output:

❯ bash run-fts-tests.sh
+ export COMPOSE_FILE=./etc/docker/dev/docker-compose.yml
+ COMPOSE_FILE=./etc/docker/dev/docker-compose.yml
+ export CMOPOSE_PROJECT_NAME=dev
+ CMOPOSE_PROJECT_NAME=dev
+ profiles='--profile storage --profile externalmetadata --profile iam'
+ docker compose --profile storage --profile externalmetadata --profile iam down --remove-orphans --volumes
WARN[0000] /home/mnoethe/Projects/rucio/rucio/etc/docker/dev/docker-compose.yml: `version` is obsolete 
[+] Running 24/24
 ✔ Container dev-minio-1                    Removed                                                                                                                                                             1.6s 
 ✔ Container dev-mongo-noauth-1             Removed                                                                                                                                                             1.5s 
 ✔ Container dev-ftsdb-1                    Removed                                                                                                                                                             3.4s 
 ✔ Container dev-mongo-1                    Removed                                                                                                                                                             1.6s 
 ✔ Container dev-graphite-1                 Removed                                                                                                                                                             3.4s 
 ✔ Container dev-elasticsearch-1            Removed                                                                                                                                                             1.9s 
 ✔ Container dev-xrd3-1                     Removed                                                                                                                                                            10.7s 
 ✔ Container dev-xrd5-1                     Removed                                                                                                                                                            10.8s 
 ✔ Container dev_rucio_1                    Removed                                                                                                                                                             1.8s 
 ✔ Container dev-influxdb-1                 Removed                                                                                                                                                             1.3s 
 ✔ Container dev-xrd4-1                     Removed                                                                                                                                                            10.6s 
 ✔ Container dev-activemq-1                 Removed                                                                                                                                                             2.2s 
 ✔ Container dev-ssh1-1                     Removed                                                                                                                                                             0.9s 
 ✔ Container dev-postgres-1                 Removed                                                                                                                                                             1.4s 
 ✔ Container dev-indigoiam-1                Removed                                                                                                                                                             2.0s 
 ✔ Container dev-ruciodb-1                  Removed                                                                                                                                                             1.2s 
 ✔ Container dev-xrd1-1                     Removed                                                                                                                                                            10.7s 
 ✔ Container dev-keycloak-1                 Removed                                                                                                                                                             2.1s 
 ✔ Container dev_fts_1                      Removed                                                                                                                                                            12.0s 
 ✔ Container dev-web1-1                     Removed                                                                                                                                                             1.7s 
 ✔ Container dev-xrd2-1                     Removed                                                                                                                                                            10.9s 
 ✔ Container dev-indigoiam-login-service-1  Removed                                                                                                                                                            10.3s 
 ✔ Container dev-iam-db-1                   Removed                                                                                                                                                             0.6s 
 ✔ Network dev_default                      Removed                                                                                                                                                             0.1s 
+ docker compose --profile storage --profile externalmetadata --profile iam up -d
WARN[0000] /home/mnoethe/Projects/rucio/rucio/etc/docker/dev/docker-compose.yml: `version` is obsolete 
[+] Running 24/24
 ✔ Network dev_default                      Created                                                                                                                                                             0.0s 
 ✔ Container dev-xrd3-1                     Started                                                                                                                                                             2.1s 
 ✔ Container dev-influxdb-1                 Started                                                                                                                                                             1.2s 
 ✔ Container dev-xrd2-1                     Started                                                                                                                                                             1.2s 
 ✔ Container dev-minio-1                    Started                                                                                                                                                             2.3s 
 ✔ Container dev-postgres-1                 Started                                                                                                                                                             2.0s 
 ✔ Container dev-ssh1-1                     Started                                                                                                                                                             2.3s 
 ✔ Container dev-iam-db-1                   Healthy                                                                                                                                                            12.7s 
 ✔ Container dev-mongo-noauth-1             Started                                                                                                                                                             1.4s 
 ✔ Container dev-activemq-1                 Started                                                                                                                                                             0.7s 
 ✔ Container dev-mongo-1                    Started                                                                                                                                                             2.3s 
 ✔ Container dev-xrd1-1                     Started                                                                                                                                                             1.5s 
 ✔ Container dev-web1-1                     Started                                                                                                                                                             2.3s 
 ✔ Container dev-graphite-1                 Started                                                                                                                                                             2.3s 
 ✔ Container dev-xrd4-1                     Started                                                                                                                                                             2.2s 
 ✔ Container dev-elasticsearch-1            Started                                                                                                                                                             2.3s 
 ✔ Container dev_fts_1                      Started                                                                                                                                                             2.3s 
 ✔ Container dev-ftsdb-1                    Started                                                                                                                                                             1.7s 
 ✔ Container dev-xrd5-1                     Started                                                                                                                                                             2.1s 
 ✔ Container dev-ruciodb-1                  Started                                                                                                                                                             2.1s 
 ✔ Container dev_rucio_1                    Started                                                                                                                                                             2.3s 
 ✔ Container dev-indigoiam-login-service-1  Started                                                                                                                                                            13.0s 
 ✔ Container dev-keycloak-1                 Started                                                                                                                                                            13.0s 
 ✔ Container dev-indigoiam-1                Started                                                                                                                                                            13.2s 
+ docker exec -t dev_rucio_1 cp etc/rse-accounts.cfg.template etc/rse-accounts.cfg
+ docker exec -t dev_rucio_1 tools/run_tests.sh -ir
Clearing memcache
tools/run_tests.sh: connect: Connection refused
tools/run_tests.sh: line 64: /dev/tcp/127.0.0.1/11211: Connection refused
Update dependencies with pip
Collecting aiohttp==3.9.5 (from -r ./requirements/requirements.server.txt (line 7))
  Downloading aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (7.5 kB)
Collecting aiosignal==1.3.1 (from -r ./requirements/requirements.server.txt (line 9))
  Downloading aiosignal-1.3.1-py3-none-any.whl.metadata (4.0 kB)
Collecting alembic==1.12.1 (from -r ./requirements/requirements.server.txt (line 11))
  Downloading alembic-1.12.1-py3-none-any.whl.metadata (7.3 kB)
Collecting annotated-types==0.6.0 (from -r ./requirements/requirements.server.txt (line 13))
  Downloading annotated_types-0.6.0-py3-none-any.whl.metadata (12 kB)
Collecting argcomplete==3.1.6 (from -r ./requirements/requirements.server.txt (line 15))
  Downloading argcomplete-3.1.6-py3-none-any.whl.metadata (16 kB)
Collecting async-timeout==4.0.3 (from -r ./requirements/requirements.server.txt (line 17))
  Downloading async_timeout-4.0.3-py3-none-any.whl.metadata (4.2 kB)
Collecting attrs==23.2.0 (from -r ./requirements/requirements.server.txt (line 21))
  Downloading attrs-23.2.0-py3-none-any.whl.metadata (9.5 kB)
Collecting bcrypt==4.1.2 (from -r ./requirements/requirements.server.txt (line 26))
  Downloading bcrypt-4.1.2-cp39-abi3-manylinux_2_28_x86_64.whl.metadata (9.5 kB)
Collecting blinker==1.8.1 (from -r ./requirements/requirements.server.txt (line 28))
  Downloading blinker-1.8.1-py3-none-any.whl.metadata (1.6 kB)
Collecting boto3==1.29.5 (from -r ./requirements/requirements.server.txt (line 30))
  Downloading boto3-1.29.5-py3-none-any.whl.metadata (6.7 kB)
Collecting botocore==1.32.7 (from -r ./requirements/requirements.server.txt (line 32))
  Downloading botocore-1.32.7-py3-none-any.whl.metadata (6.1 kB)
Collecting cachetools==5.3.3 (from -r ./requirements/requirements.server.txt (line 36))
  Downloading cachetools-5.3.3-py3-none-any.whl.metadata (5.3 kB)
Requirement already satisfied: certifi==2024.2.2 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.server.txt (line 38)) (2024.2.2)
Collecting cffi==1.16.0 (from -r ./requirements/requirements.server.txt (line 40))
  Downloading cffi-1.16.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (1.5 kB)
Requirement already satisfied: charset-normalizer==3.3.2 in /usr/local/lib64/python3.9/site-packages (from -r ./requirements/requirements.server.txt (line 44)) (3.3.2)
Requirement already satisfied: click==8.1.7 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.server.txt (line 46)) (8.1.7)
Collecting cryptography==42.0.5 (from -r ./requirements/requirements.server.txt (line 48))
  Downloading cryptography-42.0.5-cp39-abi3-manylinux_2_28_x86_64.whl.metadata (5.3 kB)
Collecting cx-oracle==8.3.0 (from -r ./requirements/requirements.server.txt (line 56))
  Downloading cx_Oracle-8.3.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.metadata (3.3 kB)
Collecting decorator==5.1.1 (from -r ./requirements/requirements.server.txt (line 58))
  Downloading decorator-5.1.1-py3-none-any.whl.metadata (4.0 kB)
Collecting defusedxml==0.7.1 (from -r ./requirements/requirements.server.txt (line 62))
  Downloading defusedxml-0.7.1-py2.py3-none-any.whl.metadata (32 kB)
Collecting dnspython==2.6.1 (from -r ./requirements/requirements.server.txt (line 64))
  Downloading dnspython-2.6.1-py3-none-any.whl.metadata (5.8 kB)
Collecting docopt==0.6.2 (from -r ./requirements/requirements.server.txt (line 66))
  Downloading docopt-0.6.2.tar.gz (25 kB)
  Preparing metadata (setup.py) ... done
Collecting dogpile-cache==1.2.2 (from -r ./requirements/requirements.server.txt (line 68))
  Downloading dogpile.cache-1.2.2-py3-none-any.whl.metadata (5.0 kB)
Collecting flask==3.0.0 (from -r ./requirements/requirements.server.txt (line 70))
  Downloading flask-3.0.0-py3-none-any.whl.metadata (3.6 kB)
Collecting frozenlist==1.4.1 (from -r ./requirements/requirements.server.txt (line 72))
  Downloading frozenlist-1.4.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (12 kB)
Collecting future==1.0.0 (from -r ./requirements/requirements.server.txt (line 76))
  Downloading future-1.0.0-py3-none-any.whl.metadata (4.0 kB)
Collecting geoip2==4.7.0 (from -r ./requirements/requirements.server.txt (line 78))
  Downloading geoip2-4.7.0-py2.py3-none-any.whl.metadata (18 kB)
Collecting globus-sdk==3.32.0 (from -r ./requirements/requirements.server.txt (line 80))
  Downloading globus_sdk-3.32.0-py3-none-any.whl.metadata (3.2 kB)
Collecting google-auth==2.23.4 (from -r ./requirements/requirements.server.txt (line 82))
  Downloading google_auth-2.23.4-py2.py3-none-any.whl.metadata (4.7 kB)
Collecting greenlet==3.0.3 (from -r ./requirements/requirements.server.txt (line 84))
  Downloading greenlet-3.0.3-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.metadata (3.8 kB)
Collecting gssapi==1.8.3 (from -r ./requirements/requirements.server.txt (line 86))
  Downloading gssapi-1.8.3.tar.gz (94 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 94.2/94.2 kB 12.7 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: idna==2.10 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.server.txt (line 88)) (2.10)
Requirement already satisfied: importlib-metadata==7.1.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.server.txt (line 92)) (7.1.0)
Collecting isodate==0.6.1 (from -r ./requirements/requirements.server.txt (line 94))
  Downloading isodate-0.6.1-py2.py3-none-any.whl.metadata (9.6 kB)
Collecting itsdangerous==2.2.0 (from -r ./requirements/requirements.server.txt (line 96))
  Downloading itsdangerous-2.2.0-py3-none-any.whl.metadata (1.9 kB)
Requirement already satisfied: jinja2==3.1.3 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.server.txt (line 98)) (3.1.3)
Collecting jmespath==1.0.1 (from -r ./requirements/requirements.server.txt (line 100))
  Downloading jmespath-1.0.1-py3-none-any.whl.metadata (7.6 kB)
Collecting jsonschema==4.20.0 (from -r ./requirements/requirements.server.txt (line 104))
  Downloading jsonschema-4.20.0-py3-none-any.whl.metadata (8.1 kB)
Collecting jsonschema-specifications==2023.12.1 (from -r ./requirements/requirements.server.txt (line 106))
  Downloading jsonschema_specifications-2023.12.1-py3-none-any.whl.metadata (3.0 kB)
Collecting kerberos==1.3.1 (from -r ./requirements/requirements.server.txt (line 108))
  Downloading kerberos-1.3.1.tar.gz (19 kB)
  Preparing metadata (setup.py) ... done
Collecting krb5==0.5.1 (from -r ./requirements/requirements.server.txt (line 110))
  Downloading krb5-0.5.1.tar.gz (221 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 221.1/221.1 kB 35.1 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting libtorrent==2.0.9 (from -r ./requirements/requirements.server.txt (line 112))
  Downloading libtorrent-2.0.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (249 bytes)
Collecting lxml==5.2.1 (from -r ./requirements/requirements.server.txt (line 114))
  Downloading lxml-5.2.1-cp39-cp39-manylinux_2_28_x86_64.whl.metadata (3.4 kB)
Collecting mako==1.3.3 (from -r ./requirements/requirements.server.txt (line 118))
  Downloading Mako-1.3.3-py3-none-any.whl.metadata (2.9 kB)
Requirement already satisfied: markupsafe==2.1.5 in /usr/local/lib64/python3.9/site-packages (from -r ./requirements/requirements.server.txt (line 122)) (2.1.5)
Collecting maxminddb==2.6.1 (from -r ./requirements/requirements.server.txt (line 127))
  Downloading maxminddb-2.6.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (5.0 kB)
Collecting multidict==6.0.5 (from -r ./requirements/requirements.server.txt (line 129))
  Downloading multidict-6.0.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (4.2 kB)
Collecting oic==1.6.1 (from -r ./requirements/requirements.server.txt (line 133))
  Downloading oic-1.6.1-py3-none-any.whl.metadata (6.6 kB)
Requirement already satisfied: packaging==24.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.server.txt (line 135)) (24.0)
Collecting paramiko==3.4.0 (from -r ./requirements/requirements.server.txt (line 137))
  Downloading paramiko-3.4.0-py3-none-any.whl.metadata (4.4 kB)
Collecting pbr==6.0.0 (from -r ./requirements/requirements.server.txt (line 139))
  Downloading pbr-6.0.0-py2.py3-none-any.whl.metadata (1.3 kB)
Collecting prometheus-client==0.19.0 (from -r ./requirements/requirements.server.txt (line 141))
  Downloading prometheus_client-0.19.0-py3-none-any.whl.metadata (1.8 kB)
Collecting psycopg2-binary==2.9.9 (from -r ./requirements/requirements.server.txt (line 143))
  Downloading psycopg2_binary-2.9.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (4.4 kB)
Collecting pyasn1==0.6.0 (from -r ./requirements/requirements.server.txt (line 145))
  Downloading pyasn1-0.6.0-py2.py3-none-any.whl.metadata (8.3 kB)
Collecting pyasn1-modules==0.4.0 (from -r ./requirements/requirements.server.txt (line 149))
  Downloading pyasn1_modules-0.4.0-py3-none-any.whl.metadata (3.4 kB)
Collecting pycparser==2.22 (from -r ./requirements/requirements.server.txt (line 151))
  Downloading pycparser-2.22-py3-none-any.whl.metadata (943 bytes)
Collecting pycryptodomex==3.20.0 (from -r ./requirements/requirements.server.txt (line 153))
  Downloading pycryptodomex-3.20.0-cp35-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (3.4 kB)
Collecting pydantic==2.7.1 (from -r ./requirements/requirements.server.txt (line 157))
  Downloading pydantic-2.7.1-py3-none-any.whl.metadata (107 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 107.3/107.3 kB 27.2 MB/s eta 0:00:00
Collecting pydantic-core==2.18.2 (from -r ./requirements/requirements.server.txt (line 159))
  Downloading pydantic_core-2.18.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (6.5 kB)
Collecting pydantic-settings==2.2.1 (from -r ./requirements/requirements.server.txt (line 161))
  Downloading pydantic_settings-2.2.1-py3-none-any.whl.metadata (3.1 kB)
Collecting pyjwkest==1.4.2 (from -r ./requirements/requirements.server.txt (line 163))
  Downloading pyjwkest-1.4.2.tar.gz (41 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 41.1/41.1 kB 10.4 MB/s eta 0:00:00
  Preparing metadata (setup.py) ... done
Collecting pyjwt==2.8.0 (from pyjwt[crypto]==2.8.0->-r ./requirements/requirements.server.txt (line 165))
  Downloading PyJWT-2.8.0-py3-none-any.whl.metadata (4.2 kB)
Collecting pykerberos==1.2.4 (from -r ./requirements/requirements.server.txt (line 167))
  Downloading pykerberos-1.2.4.tar.gz (25 kB)
  Preparing metadata (setup.py) ... done
Collecting pymemcache==4.0.0 (from -r ./requirements/requirements.server.txt (line 169))
  Downloading pymemcache-4.0.0-py2.py3-none-any.whl.metadata (14 kB)
Collecting pymongo==4.6.3 (from -r ./requirements/requirements.server.txt (line 171))
  Downloading pymongo-4.6.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (22 kB)
Collecting pymysql==1.1.1 (from -r ./requirements/requirements.server.txt (line 173))
  Downloading PyMySQL-1.1.1-py3-none-any.whl.metadata (4.4 kB)
Collecting pynacl==1.5.0 (from -r ./requirements/requirements.server.txt (line 175))
  Downloading PyNaCl-1.5.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl.metadata (8.6 kB)
Collecting pyspnego==0.10.2 (from pyspnego[kerberos]==0.10.2->-r ./requirements/requirements.server.txt (line 177))
  Downloading pyspnego-0.10.2-py3-none-any.whl.metadata (5.4 kB)
Collecting python-dateutil==2.8.2 (from -r ./requirements/requirements.server.txt (line 179))
  Downloading python_dateutil-2.8.2-py2.py3-none-any.whl.metadata (8.2 kB)
Collecting python-dotenv==1.0.1 (from -r ./requirements/requirements.server.txt (line 183))
  Downloading python_dotenv-1.0.1-py3-none-any.whl.metadata (23 kB)
Collecting python-magic==0.4.27 (from -r ./requirements/requirements.server.txt (line 185))
  Downloading python_magic-0.4.27-py2.py3-none-any.whl.metadata (5.8 kB)
Collecting python-swiftclient==4.4.0 (from -r ./requirements/requirements.server.txt (line 187))
  Downloading python_swiftclient-4.4.0-py3-none-any.whl.metadata (3.7 kB)
Collecting python3-saml==1.16.0 (from -r ./requirements/requirements.server.txt (line 189))
  Downloading python3_saml-1.16.0-py3-none-any.whl.metadata (1.3 kB)
Requirement already satisfied: pyyaml==6.0.1 in /usr/local/lib64/python3.9/site-packages (from -r ./requirements/requirements.server.txt (line 191)) (6.0.1)
Collecting qbittorrent-api==2023.11.57 (from -r ./requirements/requirements.server.txt (line 193))
  Downloading qbittorrent_api-2023.11.57-py3-none-any.whl.metadata (18 kB)
Collecting redis==5.0.1 (from -r ./requirements/requirements.server.txt (line 195))
  Downloading redis-5.0.1-py3-none-any.whl.metadata (8.9 kB)
Collecting referencing==0.35.1 (from -r ./requirements/requirements.server.txt (line 197))
  Downloading referencing-0.35.1-py3-none-any.whl.metadata (2.8 kB)
Requirement already satisfied: requests==2.32.2 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.server.txt (line 201)) (2.32.2)
Collecting requests-kerberos==0.14.0 (from -r ./requirements/requirements.server.txt (line 211))
  Downloading requests_kerberos-0.14.0-py2.py3-none-any.whl.metadata (10 kB)
Collecting rpds-py==0.18.0 (from -r ./requirements/requirements.server.txt (line 213))
  Downloading rpds_py-0.18.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (4.1 kB)
Collecting rsa==4.9 (from -r ./requirements/requirements.server.txt (line 217))
  Downloading rsa-4.9-py3-none-any.whl.metadata (4.2 kB)
Collecting s3transfer==0.7.0 (from -r ./requirements/requirements.server.txt (line 219))
  Downloading s3transfer-0.7.0-py3-none-any.whl.metadata (1.8 kB)
Collecting six==1.16.0 (from -r ./requirements/requirements.server.txt (line 221))
  Downloading six-1.16.0-py2.py3-none-any.whl.metadata (1.8 kB)
Collecting sqlalchemy==2.0.23 (from -r ./requirements/requirements.server.txt (line 226))
  Downloading SQLAlchemy-2.0.23-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (9.6 kB)
Collecting statsd==4.0.1 (from -r ./requirements/requirements.server.txt (line 230))
  Downloading statsd-4.0.1-py2.py3-none-any.whl.metadata (2.9 kB)
Collecting stevedore==5.2.0 (from -r ./requirements/requirements.server.txt (line 232))
  Downloading stevedore-5.2.0-py3-none-any.whl.metadata (2.3 kB)
Collecting stomp-py==8.1.0 (from -r ./requirements/requirements.server.txt (line 234))
  Downloading stomp.py-8.1.0-py3-none-any.whl.metadata (5.8 kB)
Collecting tabulate==0.9.0 (from -r ./requirements/requirements.server.txt (line 236))
  Downloading tabulate-0.9.0-py3-none-any.whl.metadata (34 kB)
Requirement already satisfied: typing-extensions==4.11.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.server.txt (line 238)) (4.11.0)
Requirement already satisfied: urllib3==1.26.18 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.server.txt (line 246)) (1.26.18)
Collecting websocket-client==1.8.0 (from -r ./requirements/requirements.server.txt (line 252))
  Downloading websocket_client-1.8.0-py3-none-any.whl.metadata (8.0 kB)
Collecting werkzeug==3.0.3 (from -r ./requirements/requirements.server.txt (line 254))
  Downloading werkzeug-3.0.3-py3-none-any.whl.metadata (3.7 kB)
Collecting xmlsec==1.3.13 (from -r ./requirements/requirements.server.txt (line 258))
  Downloading xmlsec-1.3.13.tar.gz (64 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 64.6/64.6 kB 17.7 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting yarl==1.9.4 (from -r ./requirements/requirements.server.txt (line 262))
  Downloading yarl-1.9.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (31 kB)
Requirement already satisfied: zipp==3.18.1 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.server.txt (line 264)) (3.18.1)
Requirement already satisfied: apispec==6.3.0 in /usr/local/lib/python3.9/site-packages (from apispec[yaml]==6.3.0->-r ./requirements/requirements.dev.txt (line 21)) (6.3.0)
Requirement already satisfied: apispec-webframeworks==1.1.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 25)) (1.1.0)
Requirement already satisfied: astroid==3.0.1 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 29)) (3.0.1)
Requirement already satisfied: black==23.12.1 in /usr/local/lib64/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 48)) (23.12.1)
Requirement already satisfied: build==1.2.1 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 61)) (1.2.1)
Requirement already satisfied: databind==4.5.1 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 98)) (4.5.1)
Requirement already satisfied: databind-core==4.5.1 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 102)) (4.5.1)
Requirement already satisfied: databind-json==4.5.1 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 106)) (4.5.1)
Requirement already satisfied: deprecated==1.2.14 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 119)) (1.2.14)
Requirement already satisfied: dill==0.3.8 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 124)) (0.3.8)
Requirement already satisfied: distlib==0.3.8 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 126)) (0.3.8)
Requirement already satisfied: docspec==2.2.1 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 136)) (2.2.1)
Requirement already satisfied: docspec-python==2.2.1 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 140)) (2.2.1)
Requirement already satisfied: docstring-parser==0.11 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 142)) (0.11)
Requirement already satisfied: exceptiongroup==1.2.1 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 146)) (1.2.1)
Requirement already satisfied: execnet==2.1.1 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 148)) (2.1.1)
Requirement already satisfied: filelock==3.14.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 150)) (3.14.0)
Requirement already satisfied: flake8==6.1.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 152)) (6.1.0)
Requirement already satisfied: iniconfig==2.0.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 190)) (2.0.0)
Requirement already satisfied: isort==5.13.2 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 196)) (5.13.2)
Requirement already satisfied: mccabe==0.7.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 246)) (0.7.0)
Requirement already satisfied: mypy-extensions==1.0.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 255)) (1.0.0)
Requirement already satisfied: nr-date==2.1.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 257)) (2.1.0)
Requirement already satisfied: nr-stream==1.1.5 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 259)) (1.1.5)
Requirement already satisfied: nr-util==0.8.12 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 261)) (0.8.12)
Requirement already satisfied: pathspec==0.12.1 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 277)) (0.12.1)
Requirement already satisfied: pip-tools==7.4.1 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 283)) (7.4.1)
Requirement already satisfied: platformdirs==4.2.1 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 285)) (4.2.1)
Requirement already satisfied: pluggy==1.5.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 291)) (1.5.0)
Requirement already satisfied: pycodestyle==2.11.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 306)) (2.11.0)
Requirement already satisfied: pydoc-markdown==4.8.2 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 331)) (4.8.2)
Requirement already satisfied: pyflakes==3.1.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 333)) (3.1.0)
Requirement already satisfied: pylint==3.0.2 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 347)) (3.0.2)
Requirement already satisfied: pyproject-hooks==1.1.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 359)) (1.1.0)
Requirement already satisfied: pytest==7.4.3 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 367)) (7.4.3)
Requirement already satisfied: pytest-xdist==3.5.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 371)) (3.5.0)
Requirement already satisfied: pytz==2023.3.post1 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 387)) (2023.3.post1)
Requirement already satisfied: sh==2.0.6 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 429)) (2.0.6)
Requirement already satisfied: tomli==2.0.1 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 451)) (2.0.1)
Requirement already satisfied: tomli-w==1.0.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 460)) (1.0.0)
Requirement already satisfied: tomlkit==0.12.4 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 462)) (0.12.4)
Requirement already satisfied: typeapi==2.2.1 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 464)) (2.2.1)
Requirement already satisfied: virtualenv==20.24.7 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 487)) (20.24.7)
Requirement already satisfied: watchdog==4.0.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 489)) (4.0.0)
Requirement already satisfied: wheel==0.43.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 499)) (0.43.0)
Requirement already satisfied: wrapt==1.16.0 in /usr/local/lib64/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 501)) (1.16.0)
Requirement already satisfied: xmltodict==0.13.0 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 507)) (0.13.0)
Requirement already satisfied: yapf==0.40.2 in /usr/local/lib/python3.9/site-packages (from -r ./requirements/requirements.dev.txt (line 509)) (0.40.2)
Requirement already satisfied: setuptools>=40.8.0 in /usr/local/lib/python3.9/site-packages (from databind==4.5.1->-r ./requirements/requirements.dev.txt (line 98)) (70.0.0)
Requirement already satisfied: pip>=22.2 in /usr/local/lib/python3.9/site-packages (from pip-tools==7.4.1->-r ./requirements/requirements.dev.txt (line 283)) (24.0)
Downloading aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 27.9 MB/s eta 0:00:00
Downloading aiosignal-1.3.1-py3-none-any.whl (7.6 kB)
Downloading alembic-1.12.1-py3-none-any.whl (226 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 226.8/226.8 kB 44.3 MB/s eta 0:00:00
Downloading annotated_types-0.6.0-py3-none-any.whl (12 kB)
Downloading argcomplete-3.1.6-py3-none-any.whl (41 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 41.7/41.7 kB 10.3 MB/s eta 0:00:00
Downloading async_timeout-4.0.3-py3-none-any.whl (5.7 kB)
Downloading attrs-23.2.0-py3-none-any.whl (60 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 60.8/60.8 kB 15.4 MB/s eta 0:00:00
Downloading bcrypt-4.1.2-cp39-abi3-manylinux_2_28_x86_64.whl (698 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 698.9/698.9 kB 31.0 MB/s eta 0:00:00
Downloading blinker-1.8.1-py3-none-any.whl (9.5 kB)
Downloading boto3-1.29.5-py3-none-any.whl (135 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 135.8/135.8 kB 33.1 MB/s eta 0:00:00
Downloading botocore-1.32.7-py3-none-any.whl (11.6 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 11.6/11.6 MB 37.5 MB/s eta 0:00:00
Downloading cachetools-5.3.3-py3-none-any.whl (9.3 kB)
Downloading cffi-1.16.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (443 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 443.4/443.4 kB 34.5 MB/s eta 0:00:00
Downloading cryptography-42.0.5-cp39-abi3-manylinux_2_28_x86_64.whl (4.6 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.6/4.6 MB 39.8 MB/s eta 0:00:00
Downloading cx_Oracle-8.3.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (888 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 888.2/888.2 kB 37.1 MB/s eta 0:00:00
Downloading decorator-5.1.1-py3-none-any.whl (9.1 kB)
Downloading defusedxml-0.7.1-py2.py3-none-any.whl (25 kB)
Downloading dnspython-2.6.1-py3-none-any.whl (307 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 307.7/307.7 kB 52.8 MB/s eta 0:00:00
Downloading dogpile.cache-1.2.2-py3-none-any.whl (52 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 52.2/52.2 kB 7.9 MB/s eta 0:00:00
Downloading flask-3.0.0-py3-none-any.whl (99 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 99.7/99.7 kB 25.1 MB/s eta 0:00:00
Downloading frozenlist-1.4.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (240 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 240.7/240.7 kB 46.8 MB/s eta 0:00:00
Downloading future-1.0.0-py3-none-any.whl (491 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 491.3/491.3 kB 34.5 MB/s eta 0:00:00
Downloading geoip2-4.7.0-py2.py3-none-any.whl (26 kB)
Downloading globus_sdk-3.32.0-py3-none-any.whl (297 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 297.2/297.2 kB 48.7 MB/s eta 0:00:00
Downloading google_auth-2.23.4-py2.py3-none-any.whl (183 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 183.3/183.3 kB 41.6 MB/s eta 0:00:00
Downloading greenlet-3.0.3-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (614 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 614.3/614.3 kB 38.5 MB/s eta 0:00:00
Downloading isodate-0.6.1-py2.py3-none-any.whl (41 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 41.7/41.7 kB 10.2 MB/s eta 0:00:00
Downloading itsdangerous-2.2.0-py3-none-any.whl (16 kB)
Downloading jmespath-1.0.1-py3-none-any.whl (20 kB)
Downloading jsonschema-4.20.0-py3-none-any.whl (84 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 84.7/84.7 kB 21.4 MB/s eta 0:00:00
Downloading jsonschema_specifications-2023.12.1-py3-none-any.whl (18 kB)
Downloading libtorrent-2.0.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.5 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 8.5/8.5 MB 13.2 MB/s eta 0:00:00
Downloading lxml-5.2.1-cp39-cp39-manylinux_2_28_x86_64.whl (5.0 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.0/5.0 MB 42.9 MB/s eta 0:00:00
Downloading Mako-1.3.3-py3-none-any.whl (78 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 78.8/78.8 kB 21.5 MB/s eta 0:00:00
Downloading maxminddb-2.6.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (87 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 87.5/87.5 kB 23.2 MB/s eta 0:00:00
Downloading multidict-6.0.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (123 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 123.8/123.8 kB 31.6 MB/s eta 0:00:00
Downloading oic-1.6.1-py3-none-any.whl (192 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 192.4/192.4 kB 42.5 MB/s eta 0:00:00
Downloading paramiko-3.4.0-py3-none-any.whl (225 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 225.9/225.9 kB 48.7 MB/s eta 0:00:00
Downloading pbr-6.0.0-py2.py3-none-any.whl (107 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 107.5/107.5 kB 29.3 MB/s eta 0:00:00
Downloading prometheus_client-0.19.0-py3-none-any.whl (54 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 54.2/54.2 kB 14.7 MB/s eta 0:00:00
Downloading psycopg2_binary-2.9.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.0 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.0/3.0 MB 41.4 MB/s eta 0:00:00
Downloading pyasn1-0.6.0-py2.py3-none-any.whl (85 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 85.3/85.3 kB 23.1 MB/s eta 0:00:00
Downloading pyasn1_modules-0.4.0-py3-none-any.whl (181 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 181.2/181.2 kB 41.2 MB/s eta 0:00:00
Downloading pycparser-2.22-py3-none-any.whl (117 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 117.6/117.6 kB 30.7 MB/s eta 0:00:00
Downloading pycryptodomex-3.20.0-cp35-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.1/2.1 MB 40.7 MB/s eta 0:00:00
Downloading pydantic-2.7.1-py3-none-any.whl (409 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 409.3/409.3 kB 64.9 MB/s eta 0:00:00
Downloading pydantic_core-2.18.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.1/2.1 MB 42.5 MB/s eta 0:00:00
Downloading pydantic_settings-2.2.1-py3-none-any.whl (13 kB)
Downloading PyJWT-2.8.0-py3-none-any.whl (22 kB)
Downloading pymemcache-4.0.0-py2.py3-none-any.whl (60 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 60.8/60.8 kB 16.2 MB/s eta 0:00:00
Downloading pymongo-4.6.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (676 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 676.2/676.2 kB 39.4 MB/s eta 0:00:00
Downloading PyMySQL-1.1.1-py3-none-any.whl (44 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 45.0/45.0 kB 11.1 MB/s eta 0:00:00
Downloading PyNaCl-1.5.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl (856 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 856.7/856.7 kB 44.7 MB/s eta 0:00:00
Downloading pyspnego-0.10.2-py3-none-any.whl (129 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 129.9/129.9 kB 27.4 MB/s eta 0:00:00
Downloading python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 247.7/247.7 kB 46.5 MB/s eta 0:00:00
Downloading python_dotenv-1.0.1-py3-none-any.whl (19 kB)
Downloading python_magic-0.4.27-py2.py3-none-any.whl (13 kB)
Downloading python_swiftclient-4.4.0-py3-none-any.whl (88 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 88.9/88.9 kB 18.7 MB/s eta 0:00:00
Downloading python3_saml-1.16.0-py3-none-any.whl (76 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 76.2/76.2 kB 18.8 MB/s eta 0:00:00
Downloading qbittorrent_api-2023.11.57-py3-none-any.whl (59 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 59.4/59.4 kB 15.1 MB/s eta 0:00:00
Downloading redis-5.0.1-py3-none-any.whl (250 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 250.3/250.3 kB 44.6 MB/s eta 0:00:00
Downloading referencing-0.35.1-py3-none-any.whl (26 kB)
Downloading requests_kerberos-0.14.0-py2.py3-none-any.whl (11 kB)
Downloading rpds_py-0.18.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.1/1.1 MB 41.7 MB/s eta 0:00:00
Downloading rsa-4.9-py3-none-any.whl (34 kB)
Downloading s3transfer-0.7.0-py3-none-any.whl (79 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 79.8/79.8 kB 19.0 MB/s eta 0:00:00
Downloading six-1.16.0-py2.py3-none-any.whl (11 kB)
Downloading SQLAlchemy-2.0.23-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.1 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.1/3.1 MB 44.0 MB/s eta 0:00:00
Downloading statsd-4.0.1-py2.py3-none-any.whl (13 kB)
Downloading stevedore-5.2.0-py3-none-any.whl (49 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 49.7/49.7 kB 10.8 MB/s eta 0:00:00
Downloading stomp.py-8.1.0-py3-none-any.whl (42 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 42.6/42.6 kB 10.2 MB/s eta 0:00:00
Downloading tabulate-0.9.0-py3-none-any.whl (35 kB)
Downloading websocket_client-1.8.0-py3-none-any.whl (58 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 58.8/58.8 kB 14.5 MB/s eta 0:00:00
Downloading werkzeug-3.0.3-py3-none-any.whl (227 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 227.3/227.3 kB 45.3 MB/s eta 0:00:00
Downloading yarl-1.9.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (304 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 304.3/304.3 kB 50.0 MB/s eta 0:00:00
Building wheels for collected packages: docopt, gssapi, kerberos, krb5, pyjwkest, pykerberos, xmlsec
  Building wheel for docopt (setup.py) ... done
  Created wheel for docopt: filename=docopt-0.6.2-py2.py3-none-any.whl size=13706 sha256=69373457ecd042aed05ea07b223a4126a902217c80c0b247d339278b59a3a8a4
  Stored in directory: /root/.cache/pip/wheels/70/4a/46/1309fc853b8d395e60bafaf1b6df7845bdd82c95fd59dd8d2b
  Building wheel for gssapi (pyproject.toml) ... done
  Created wheel for gssapi: filename=gssapi-1.8.3-cp39-cp39-linux_x86_64.whl size=3828650 sha256=080b44d51b1edc40cb4fa6cb1c3b05d7aa96ec8b187d5ae0e6da04c0a45fda9d
  Stored in directory: /root/.cache/pip/wheels/32/d7/c8/b944bd7d7ee504c5b5175cf1ca9d170a126c473bc750adeedc
  Building wheel for kerberos (setup.py) ... done
  Created wheel for kerberos: filename=kerberos-1.3.1-cp39-cp39-linux_x86_64.whl size=57246 sha256=d9f0f59ec963edd345bc4c508e5851d454ce241b58f76610134d041e8265860e
  Stored in directory: /root/.cache/pip/wheels/47/41/d2/921470de1f4b76c93107ac2aadc87057688399c1619aa00789
  Building wheel for krb5 (pyproject.toml) ... done
  Created wheel for krb5: filename=krb5-0.5.1-cp39-cp39-linux_x86_64.whl size=4640443 sha256=51650b5152f1f28b7cbe468b7ea2012058562386911a32fd54104b5d3034da0b
  Stored in directory: /root/.cache/pip/wheels/84/3f/95/9c16df501c14cb368b7e3c4978f9121b0045f177e1896b165f
  Building wheel for pyjwkest (setup.py) ... done
  Created wheel for pyjwkest: filename=pyjwkest-1.4.2-py3-none-any.whl size=48062 sha256=7be7a8d85e14611f9807ea8e9c67cddf816bef557e724fd1aba1ba195ae27f5c
  Stored in directory: /root/.cache/pip/wheels/4a/d8/c5/84d34184cb45ca51acea9b2291252755e1a195804174e720f9
  Building wheel for pykerberos (setup.py) ... done
  Created wheel for pykerberos: filename=pykerberos-1.2.4-cp39-cp39-linux_x86_64.whl size=62405 sha256=57571fcff27b36002cc6ea6e957b22599e603d71ef144a2eaf527cba7e3de08b
  Stored in directory: /root/.cache/pip/wheels/5c/f6/2c/0c802c0c3c90cb3b7f786bc638d812430e7801073d5bc590c1
  Building wheel for xmlsec (pyproject.toml) ... done
  Created wheel for xmlsec: filename=xmlsec-1.3.13-cp39-cp39-linux_x86_64.whl size=155454 sha256=606084f2ad2ce0a315bc6f836631ac71be1fe2fe2514b7b3d3aaf4b9c4c4916c
  Stored in directory: /root/.cache/pip/wheels/31/5f/d7/901e8abb845e4644552229d69553f87bdb10d7cac78ecd68ed
Successfully built docopt gssapi kerberos krb5 pyjwkest pykerberos xmlsec
Installing collected packages: statsd, pykerberos, libtorrent, kerberos, docopt, cx-oracle, werkzeug, websocket-client, tabulate, six, rpds-py, python-magic, python-dotenv, pymysql, pymemcache, pyjwt, pydantic-core, pycryptodomex, pycparser, pyasn1, psycopg2-binary, prometheus-client, pbr, multidict, maxminddb, mako, lxml, krb5, jmespath, itsdangerous, greenlet, future, frozenlist, dnspython, defusedxml, decorator, cachetools, blinker, bcrypt, attrs, async-timeout, argcomplete, annotated-types, yarl, xmlsec, stomp-py, stevedore, sqlalchemy, rsa, referencing, redis, qbittorrent-api, python-swiftclient, python-dateutil, pymongo, pyjwkest, pydantic, pyasn1-modules, isodate, gssapi, flask, cffi, aiosignal, python3-saml, pynacl, pydantic-settings, jsonschema-specifications, google-auth, dogpile-cache, cryptography, botocore, alembic, aiohttp, s3transfer, pyspnego, paramiko, oic, jsonschema, geoip2, globus-sdk, boto3, requests-kerberos
  Attempting uninstall: six
    Found existing installation: six 1.15.0
    Uninstalling six-1.15.0:
      Successfully uninstalled six-1.15.0
  Attempting uninstall: python-dateutil
    Found existing installation: python-dateutil 2.8.1
    Uninstalling python-dateutil-2.8.1:
      Successfully uninstalled python-dateutil-2.8.1
Successfully installed aiohttp-3.9.5 aiosignal-1.3.1 alembic-1.12.1 annotated-types-0.6.0 argcomplete-3.1.6 async-timeout-4.0.3 attrs-23.2.0 bcrypt-4.1.2 blinker-1.8.1 boto3-1.29.5 botocore-1.32.7 cachetools-5.3.3 cffi-1.16.0 cryptography-42.0.5 cx-oracle-8.3.0 decorator-5.1.1 defusedxml-0.7.1 dnspython-2.6.1 docopt-0.6.2 dogpile-cache-1.2.2 flask-3.0.0 frozenlist-1.4.1 future-1.0.0 geoip2-4.7.0 globus-sdk-3.32.0 google-auth-2.23.4 greenlet-3.0.3 gssapi-1.8.3 isodate-0.6.1 itsdangerous-2.2.0 jmespath-1.0.1 jsonschema-4.20.0 jsonschema-specifications-2023.12.1 kerberos-1.3.1 krb5-0.5.1 libtorrent-2.0.9 lxml-5.2.1 mako-1.3.3 maxminddb-2.6.1 multidict-6.0.5 oic-1.6.1 paramiko-3.4.0 pbr-6.0.0 prometheus-client-0.19.0 psycopg2-binary-2.9.9 pyasn1-0.6.0 pyasn1-modules-0.4.0 pycparser-2.22 pycryptodomex-3.20.0 pydantic-2.7.1 pydantic-core-2.18.2 pydantic-settings-2.2.1 pyjwkest-1.4.2 pyjwt-2.8.0 pykerberos-1.2.4 pymemcache-4.0.0 pymongo-4.6.3 pymysql-1.1.1 pynacl-1.5.0 pyspnego-0.10.2 python-dateutil-2.8.2 python-dotenv-1.0.1 python-magic-0.4.27 python-swiftclient-4.4.0 python3-saml-1.16.0 qbittorrent-api-2023.11.57 redis-5.0.1 referencing-0.35.1 requests-kerberos-0.14.0 rpds-py-0.18.0 rsa-4.9 s3transfer-0.7.0 six-1.16.0 sqlalchemy-2.0.23 statsd-4.0.1 stevedore-5.2.0 stomp-py-8.1.0 tabulate-0.9.0 websocket-client-1.8.0 werkzeug-3.0.3 xmlsec-1.3.13 yarl-1.9.4
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv

[notice] A new release of pip is available: 24.0 -> 24.1
[notice] To update, run: python3 -m pip install --upgrade pip
Cleaning *.pyc files
Cleaning old authentication tokens
Cleaning local RSE directories
Using the standard config
Resetting database tables
Schema set in config, trying to create schema: dev
INFO  [alembic.runtime.migration] Context impl PostgresqlImpl.
INFO  [alembic.runtime.migration] Will assume transactional DDL.
INFO  [alembic.runtime.migration] Running stamp_revision  -> a08fa8de1545
Running full alembic migration
Downgrading the DB to base
INFO  [alembic.runtime.migration] Context impl PostgresqlImpl.
INFO  [alembic.runtime.migration] Will assume transactional DDL.
INFO  [alembic.runtime.migration] Running downgrade a08fa8de1545 -> 4df2c5ddabc0, transfer_stats table
INFO  [alembic.runtime.migration] Running downgrade 4df2c5ddabc0 -> 27e3a68927fb, remove temporary dids
INFO  [alembic.runtime.migration] Running downgrade 27e3a68927fb -> 295289b5a800, remove replicas_tombstone and replicas_rse_id indexes
INFO  [alembic.runtime.migration] Running downgrade 295289b5a800 -> a6eb23955c28, processed_by and _at in requests
INFO  [alembic.runtime.migration] Running downgrade a6eb23955c28 -> fb28a95fe288, state idx non functional
INFO  [alembic.runtime.migration] Running downgrade fb28a95fe288 -> 140fef722e91, add_replicas_rse_id_tombstone_idx
INFO  [alembic.runtime.migration] Running downgrade 140fef722e91 -> 13d4f70c66a9, cleanup distances table
INFO  [alembic.runtime.migration] Running downgrade 13d4f70c66a9 -> 83f991c63a93, introduce transfer limits
INFO  [alembic.runtime.migration] Running downgrade 83f991c63a93 -> 2190e703eb6e, correct rse_expression length
INFO  [alembic.runtime.migration] Running downgrade 2190e703eb6e -> f41ffe206f37, move rse settings to rse attributes
INFO  [alembic.runtime.migration] Running downgrade f41ffe206f37 -> d6e2c3b2cf26, oracle_global_temporary_tables
INFO  [alembic.runtime.migration] Running downgrade d6e2c3b2cf26 -> fa7a7d78b602, remove third_party_copy column from rse
INFO  [alembic.runtime.migration] Running downgrade fa7a7d78b602 -> 1677d4d803c8, increase refresh token size
INFO  [alembic.runtime.migration] Running downgrade 1677d4d803c8 -> fe1a65b176c9, split rse availability into multiple
INFO  [alembic.runtime.migration] Running downgrade fe1a65b176c9 -> 0f1adb7a599a, set third_party_copy_read and write fields
INFO  [alembic.runtime.migration] Running downgrade 0f1adb7a599a -> 9a45bc4ea66d, create transfer hops table
INFO  [alembic.runtime.migration] Running downgrade 9a45bc4ea66d -> 739064d31565, add VP table
INFO  [alembic.runtime.migration] Running downgrade 739064d31565 -> ccdbcd48206e, remove history table pks
INFO  [alembic.runtime.migration] Running downgrade ccdbcd48206e -> 52153819589c, Add did_type column + index on did_meta table
INFO  [alembic.runtime.migration] Running downgrade 52153819589c -> 30fa38b6434e, add_rse_id_to_replicas_table
INFO  [alembic.runtime.migration] Running downgrade 30fa38b6434e -> e138c364ebd0, Add index on service column in the message table
INFO  [alembic.runtime.migration] Running downgrade e138c364ebd0 -> f85a2962b021, Extending columns for filter and replication_rules in subscriptions
INFO  [alembic.runtime.migration] Running downgrade f85a2962b021 -> d23453595260, adding transfertool column and index to requests table
INFO  [alembic.runtime.migration] Running downgrade d23453595260 -> 8ea9122275b1, Add PREPARING state to Request model.
INFO  [alembic.runtime.migration] Running downgrade 8ea9122275b1 -> 50280c53117c, Adding missing function based indices
INFO  [alembic.runtime.migration] Running downgrade 50280c53117c -> c0937668555f, add qos class to rse
INFO  [alembic.runtime.migration] Running downgrade c0937668555f -> a193a275255c, add qos policy map table
INFO  [alembic.runtime.migration] Running downgrade a193a275255c -> a118956323f8, Add status column in messages
INFO  [alembic.runtime.migration] Running downgrade a118956323f8 -> d1189a09c6e0, Added vo table and vo col to rse
INFO  [alembic.runtime.migration] Running downgrade d1189a09c6e0 -> 810a41685bc1, OAuth2.0 and JWT feature support; adding table oauth_requests & several columns to tokens table
INFO  [alembic.runtime.migration] Running downgrade 810a41685bc1 -> 7541902bf173, added_columns_rse_transfer_limits
INFO  [alembic.runtime.migration] Running downgrade 7541902bf173 -> a74275a1ad30, add DidsFollowed and FollowEvents table
INFO  [alembic.runtime.migration] Running downgrade a74275a1ad30 -> 2b69addda658, added global acount limits table
INFO  [alembic.runtime.migration] Running downgrade 2b69addda658 -> bc68e9946deb, Add columns for third_party_copy_read and third_party_copy_write
INFO  [alembic.runtime.migration] Running downgrade bc68e9946deb -> 9a1b149a2044, add staging timestamps to request
INFO  [alembic.runtime.migration] Running downgrade 9a1b149a2044 -> 53b479c3cb0f, add saml identity type
INFO  [alembic.runtime.migration] Running downgrade 53b479c3cb0f -> 2cbee484dcf9, fix did_meta table missing updated_at, created_at columns
INFO  [alembic.runtime.migration] Running downgrade 2cbee484dcf9 -> cebad904c4dd, added column volume to rse_transfer_limits
INFO  [alembic.runtime.migration] Running downgrade cebad904c4dd -> b7d287de34fd, New payload column for heartbeats
INFO  [alembic.runtime.migration] Running downgrade b7d287de34fd -> f1b14a8c2ac1, Removal of ReplicaState.SOURCE
INFO  [alembic.runtime.migration] Running downgrade f1b14a8c2ac1 -> b8caac94d7f0, postgres_use_check_constraints
INFO  [alembic.runtime.migration] Running downgrade b8caac94d7f0 -> 8523998e2e76, add comments column for subscriptions_history
INFO  [alembic.runtime.migration] Running downgrade 8523998e2e76 -> 7ec22226cdbf, increase size of extended_attributes column
INFO  [alembic.runtime.migration] Running downgrade 7ec22226cdbf -> 3345511706b8, new replica state for temporary unavailable replicas
INFO  [alembic.runtime.migration] Running downgrade 3345511706b8 -> 01eaf73ab656, replicas table PK definition is in wrong order
INFO  [alembic.runtime.migration] Running downgrade 01eaf73ab656 -> 90f47792bb76, add new rule notification state progress
INFO  [alembic.runtime.migration] Running downgrade 90f47792bb76 -> bf3baa1c1474, add clob payload to messages
INFO  [alembic.runtime.migration] Running downgrade bf3baa1c1474 -> 9eb936a81eb1, correct PK and IDX for history tables
INFO  [alembic.runtime.migration] Running downgrade 9eb936a81eb1 -> b96a1c7e1cc4, true is true
INFO  [alembic.runtime.migration] Running downgrade b96a1c7e1cc4 -> 1f46c5f240ac, new bad_pfns table and bad_replicas changes
INFO  [alembic.runtime.migration] Running downgrade 1f46c5f240ac -> 688ef1840840, add bytes column to bad_replicas
INFO  [alembic.runtime.migration] Running downgrade 688ef1840840 -> b818052fa670, adding did_meta table
INFO  [alembic.runtime.migration] Running downgrade b818052fa670 -> 2962ece31cf4, add index to quarantined replicas
INFO  [alembic.runtime.migration] Running downgrade 2962ece31cf4 -> 94a5961ddbf2, add access_cnt column in the DID table
INFO  [alembic.runtime.migration] Running downgrade 94a5961ddbf2 -> 1c45d9730ca6, add estimator columns to request table
INFO  [alembic.runtime.migration] Running downgrade 1c45d9730ca6 -> b4293a99f344, increase identity length
INFO  [alembic.runtime.migration] Running downgrade b4293a99f344 -> 3ac1660a1a72, added column identity to table tokens
INFO  [alembic.runtime.migration] Running downgrade 3ac1660a1a72 -> 5673b4b6e843, extend distance table
INFO  [alembic.runtime.migration] Running downgrade 5673b4b6e843 -> e59300c8b179, add metadata to rule tables
INFO  [alembic.runtime.migration] Running downgrade e59300c8b179 -> 6e572a9bfbf3, support for archive
INFO  [alembic.runtime.migration] Running downgrade 6e572a9bfbf3 -> 914b8f02df38, add new split_container column to rules
INFO  [alembic.runtime.migration] Running downgrade 914b8f02df38 -> fe8ea2fa9788, new table for lifetime model exceptions
INFO  [alembic.runtime.migration] Running downgrade fe8ea2fa9788 -> 0437a40dbfd1, add third_party_copy column to rse_protocols
INFO  [alembic.runtime.migration] Running downgrade 0437a40dbfd1 -> a5f6f6e928a7, add eol_at in rules
INFO  [alembic.runtime.migration] Running downgrade a5f6f6e928a7 -> 21d6b9dc9961, add columns for 1.7.0 release
INFO  [alembic.runtime.migration] Running downgrade 21d6b9dc9961 -> 5f139f77382a, add mismatch scheme state to requests
INFO  [alembic.runtime.migration] Running downgrade 5f139f77382a -> 1d1215494e95, added child_rule_id column
INFO  [alembic.runtime.migration] Running downgrade 1d1215494e95 -> 575767d9f89, add quarantined_replicas table
INFO  [alembic.runtime.migration] Running downgrade 575767d9f89 -> 379a19b5332d, added source history table
INFO  [alembic.runtime.migration] Running downgrade 379a19b5332d -> 58bff7008037, create rse transfer limits table
INFO  [alembic.runtime.migration] Running downgrade 58bff7008037 -> 3c9df354071b, add started_at to requests
INFO  [alembic.runtime.migration] Running downgrade 3c9df354071b -> 2edee4a83846, extend waiting request state
INFO  [alembic.runtime.migration] Running downgrade 2edee4a83846 -> 2f648fc909f3, add source to requests and requests_history
INFO  [alembic.runtime.migration] Running downgrade 2f648fc909f3 -> bb695f45c04, index in rule_history on scope, name
INFO  [alembic.runtime.migration] Running downgrade bb695f45c04 -> 3082b8cef557, extend request state
INFO  [alembic.runtime.migration] Running downgrade 3082b8cef557 -> 269fee20dee9, add convention table and closed_at to dids
INFO  [alembic.runtime.migration] Running downgrade 269fee20dee9 -> 1d96f484df21, add repair_cnt to locks
INFO  [alembic.runtime.migration] Running downgrade 1d96f484df21 -> 3d9813fab443, asynchronous rules and rule approval
INFO  [alembic.runtime.migration] Running downgrade 3d9813fab443 -> 1fc15ab60d43, add a new state LOST in BadFilesStatus
INFO  [alembic.runtime.migration] Running downgrade 1fc15ab60d43 -> 4783c1f49cb4, add message_history table
INFO  [alembic.runtime.migration] Running downgrade 4783c1f49cb4 -> 277b5fbb41d3, create distance table
INFO  [alembic.runtime.migration] Running downgrade 277b5fbb41d3 -> 44278720f774, switch heartbeats executable
INFO  [alembic.runtime.migration] Running downgrade 44278720f774 -> 40ad39ce3160, update REQUESTS_TYP_STA_UPD_IDX index
INFO  [alembic.runtime.migration] Running downgrade 40ad39ce3160 -> 2ba5229cb54c, add_transferred_at_to_requests_table
INFO  [alembic.runtime.migration] Running downgrade 2ba5229cb54c -> 22d887e4ec0a, add_submitted_at_to_requests_table
INFO  [alembic.runtime.migration] Running downgrade 22d887e4ec0a -> 1a80adff031a, create sources table
INFO  [alembic.runtime.migration] Running downgrade 1a80adff031a -> 3ad36e2268b0, create index on rules_hist_recent
INFO  [alembic.runtime.migration] Running downgrade 3ad36e2268b0 -> 42db2617c364, create collection_replicas_updates table
INFO  [alembic.runtime.migration] Running downgrade 42db2617c364 -> 4bab9edd01fc, create index on requests.external_id
INFO  [alembic.runtime.migration] Running downgrade 4bab9edd01fc -> ae2a56fcc89, create index on requests.rule_id
INFO  [alembic.runtime.migration] Running downgrade ae2a56fcc89 -> 45378a1e76a8, added comment column to rules
INFO  [alembic.runtime.migration] Running downgrade 45378a1e76a8 -> a93e4e47bda, create collection replica table
INFO  [alembic.runtime.migration] Running downgrade a93e4e47bda -> 2af3291ec4c, added heartbeats
INFO  [alembic.runtime.migration] Running downgrade 2af3291ec4c -> 32c7d2783f7e, added replicas history table
INFO  [alembic.runtime.migration] Running downgrade 32c7d2783f7e -> 384b96aa0f60, create bad replicas table
INFO  [alembic.runtime.migration] Running downgrade 384b96aa0f60 -> 4cf0a2e127d4, created rule history tables
INFO  [alembic.runtime.migration] Running downgrade 4cf0a2e127d4 -> 271a46ea6244, adding transient metadata
INFO  [alembic.runtime.migration] Running downgrade 271a46ea6244 -> d6dceb1de2d, add ignore_availability column to rules
INFO  [alembic.runtime.migration] Running downgrade d6dceb1de2d -> 25821a8a45a3, added purge column to rules
INFO  [alembic.runtime.migration] Running downgrade 25821a8a45a3 -> 1803333ac20f, remove unique constraint on requests
INFO  [alembic.runtime.migration] Running downgrade 1803333ac20f -> 4c3a4acfe006, adding provenance and phys_group
INFO  [alembic.runtime.migration] Running downgrade 4c3a4acfe006 -> 25fc855625cf, new attr account table
INFO  [alembic.runtime.migration] Running downgrade 25fc855625cf -> 4a7182d9578b, added unique constraint to rules
INFO  [alembic.runtime.migration] Running downgrade 4a7182d9578b -> c129ccdb2d5, added bytes, length, accessed_at columns
INFO  [alembic.runtime.migration] Running downgrade c129ccdb2d5 -> 156fb5b5a14, add lumiblocknr to dids
INFO  [alembic.runtime.migration] Running downgrade 156fb5b5a14 -> 1a29d6a9504c, add request_type to requests idx
INFO  [alembic.runtime.migration] Running downgrade 1a29d6a9504c -> 436827b13f82, add didtype_chck to requests
INFO  [alembic.runtime.migration] Running downgrade 436827b13f82 -> 102efcf145f4, added column activity to table requests
INFO  [alembic.runtime.migration] Running downgrade 102efcf145f4 -> 70587619328, added stuck_at column to rules
INFO  [alembic.runtime.migration] Running downgrade 70587619328 -> 4207be2fd914, add comment column for subscriptions
INFO  [alembic.runtime.migration] Running downgrade 4207be2fd914 -> 14ec5aeb64cf, add notification column to rules
INFO  [alembic.runtime.migration] Running downgrade 14ec5aeb64cf -> 52fd9f4916fa, add request external_host
INFO  [alembic.runtime.migration] Running downgrade 52fd9f4916fa -> 4a2cbedda8b9, added share to rules
INFO  [alembic.runtime.migration] Running downgrade 4a2cbedda8b9 -> a616581ee47, add_source_replica_expression_column_to_rules
INFO  [alembic.runtime.migration] Running downgrade a616581ee47 -> 2854cd9e168, added columns to table requests
INFO  [alembic.runtime.migration] Running downgrade 2854cd9e168 -> 35ef10d1e11b, added_rule_id_column
INFO  [alembic.runtime.migration] Running downgrade 35ef10d1e11b -> 3152492b110b, change index on table requests
INFO  [alembic.runtime.migration] Running downgrade 3152492b110b -> 22cf51430c78, added staging_area column
INFO  [alembic.runtime.migration] Running downgrade 22cf51430c78 -> 49a21b4d4357, add availability column to table RSEs
INFO  [alembic.runtime.migration] Running downgrade 49a21b4d4357 -> 2eef46be23d4, add tokens index
INFO  [alembic.runtime.migration] Running downgrade 2eef46be23d4 -> 58c8b78301ab, change tokens pk
INFO  [alembic.runtime.migration] Running downgrade 58c8b78301ab -> 2b8e7bcb4783, rename callback to message
INFO  [alembic.runtime.migration] Running downgrade 2b8e7bcb4783 -> d91002c5841, add config table
INFO  [alembic.runtime.migration] Running downgrade d91002c5841 -> 469d262be19, new account_limits table
INFO  [alembic.runtime.migration] Running downgrade 469d262be19 -> 16a0aca82e12, removing created_at index
INFO  [alembic.runtime.migration] Running downgrade 16a0aca82e12 -> , create index on table replicas(path)
Check if is_old_db function is returning false after the full downgrade (tests it without alembic)
Updating the DB to head-1
INFO  [alembic.runtime.migration] Context impl PostgresqlImpl.
INFO  [alembic.runtime.migration] Will assume transactional DDL.
INFO  [alembic.runtime.migration] Running upgrade  -> 16a0aca82e12, create index on table replicas(path)
INFO  [alembic.runtime.migration] Running upgrade 16a0aca82e12 -> 469d262be19, removing created_at index
INFO  [alembic.runtime.migration] Running upgrade 469d262be19 -> d91002c5841, new account_limits table
INFO  [alembic.runtime.migration] Running upgrade d91002c5841 -> 2b8e7bcb4783, add config table
INFO  [alembic.runtime.migration] Running upgrade 2b8e7bcb4783 -> 58c8b78301ab, rename callback to message
INFO  [alembic.runtime.migration] Running upgrade 58c8b78301ab -> 2eef46be23d4, change tokens pk
INFO  [alembic.runtime.migration] Running upgrade 2eef46be23d4 -> 49a21b4d4357, add tokens index
INFO  [alembic.runtime.migration] Running upgrade 49a21b4d4357 -> 22cf51430c78, add availability column to table RSEs
INFO  [alembic.runtime.migration] Running upgrade 22cf51430c78 -> 3152492b110b, added staging_area column
INFO  [alembic.runtime.migration] Running upgrade 3152492b110b -> 35ef10d1e11b, change index on table requests
INFO  [alembic.runtime.migration] Running upgrade 35ef10d1e11b -> 2854cd9e168, added_rule_id_column
INFO  [alembic.runtime.migration] Running upgrade 2854cd9e168 -> a616581ee47, added columns to table requests
INFO  [alembic.runtime.migration] Running upgrade a616581ee47 -> 4a2cbedda8b9, add_source_replica_expression_column_to_rules
INFO  [alembic.runtime.migration] Running upgrade 4a2cbedda8b9 -> 52fd9f4916fa, added share to rules
INFO  [alembic.runtime.migration] Running upgrade 52fd9f4916fa -> 14ec5aeb64cf, add request external_host
INFO  [alembic.runtime.migration] Running upgrade 14ec5aeb64cf -> 4207be2fd914, add notification column to rules
INFO  [alembic.runtime.migration] Running upgrade 4207be2fd914 -> 70587619328, add comment column for subscriptions
INFO  [alembic.runtime.migration] Running upgrade 70587619328 -> 102efcf145f4, added stuck_at column to rules
INFO  [alembic.runtime.migration] Running upgrade 102efcf145f4 -> 436827b13f82, added column activity to table requests
INFO  [alembic.runtime.migration] Running upgrade 436827b13f82 -> 1a29d6a9504c, add didtype_chck to requests
INFO  [alembic.runtime.migration] Running upgrade 1a29d6a9504c -> 156fb5b5a14, add request_type to requests idx
INFO  [alembic.runtime.migration] Running upgrade 156fb5b5a14 -> c129ccdb2d5, add lumiblocknr to dids
INFO  [alembic.runtime.migration] Running upgrade c129ccdb2d5 -> 4a7182d9578b, added bytes, length, accessed_at columns
INFO  [alembic.runtime.migration] Running upgrade 4a7182d9578b -> 25fc855625cf, added unique constraint to rules
INFO  [alembic.runtime.migration] Running upgrade 25fc855625cf -> 4c3a4acfe006, new attr account table
INFO  [alembic.runtime.migration] Running upgrade 4c3a4acfe006 -> 1803333ac20f, adding provenance and phys_group
INFO  [alembic.runtime.migration] Running upgrade 1803333ac20f -> 25821a8a45a3, remove unique constraint on requests
INFO  [alembic.runtime.migration] Running upgrade 25821a8a45a3 -> d6dceb1de2d, added purge column to rules
INFO  [alembic.runtime.migration] Running upgrade d6dceb1de2d -> 271a46ea6244, add ignore_availability column to rules
INFO  [alembic.runtime.migration] Running upgrade 271a46ea6244 -> 4cf0a2e127d4, adding transient metadata
INFO  [alembic.runtime.migration] Running upgrade 4cf0a2e127d4 -> 384b96aa0f60, created rule history tables
INFO  [alembic.runtime.migration] Running upgrade 384b96aa0f60 -> 32c7d2783f7e, create bad replicas table
INFO  [alembic.runtime.migration] Running upgrade 32c7d2783f7e -> 2af3291ec4c, added replicas history table
INFO  [alembic.runtime.migration] Running upgrade 2af3291ec4c -> a93e4e47bda, added heartbeats
INFO  [alembic.runtime.migration] Running upgrade a93e4e47bda -> 45378a1e76a8, create collection replica table
INFO  [alembic.runtime.migration] Running upgrade 45378a1e76a8 -> ae2a56fcc89, added comment column to rules
INFO  [alembic.runtime.migration] Running upgrade ae2a56fcc89 -> 4bab9edd01fc, create index on requests.rule_id
INFO  [alembic.runtime.migration] Running upgrade 4bab9edd01fc -> 42db2617c364, create index on requests.external_id
INFO  [alembic.runtime.migration] Running upgrade 42db2617c364 -> 3ad36e2268b0, create collection_replicas_updates table
INFO  [alembic.runtime.migration] Running upgrade 3ad36e2268b0 -> 1a80adff031a, create index on rules_hist_recent
INFO  [alembic.runtime.migration] Running upgrade 1a80adff031a -> 22d887e4ec0a, create sources table
INFO  [alembic.runtime.migration] Running upgrade 22d887e4ec0a -> 2ba5229cb54c, add_submitted_at_to_requests_table
INFO  [alembic.runtime.migration] Running upgrade 2ba5229cb54c -> 40ad39ce3160, add_transferred_at_to_requests_table
INFO  [alembic.runtime.migration] Running upgrade 40ad39ce3160 -> 44278720f774, update REQUESTS_TYP_STA_UPD_IDX index
INFO  [alembic.runtime.migration] Running upgrade 44278720f774 -> 277b5fbb41d3, switch heartbeats executable
INFO  [alembic.runtime.migration] Running upgrade 277b5fbb41d3 -> 4783c1f49cb4, create distance table
INFO  [alembic.runtime.migration] Running upgrade 4783c1f49cb4 -> 1fc15ab60d43, add message_history table
INFO  [alembic.runtime.migration] Running upgrade 1fc15ab60d43 -> 3d9813fab443, add a new state LOST in BadFilesStatus
INFO  [alembic.runtime.migration] Running upgrade 3d9813fab443 -> 1d96f484df21, asynchronous rules and rule approval
INFO  [alembic.runtime.migration] Running upgrade 1d96f484df21 -> 269fee20dee9, add repair_cnt to locks
INFO  [alembic.runtime.migration] Running upgrade 269fee20dee9 -> 3082b8cef557, add convention table and closed_at to dids
INFO  [alembic.runtime.migration] Running upgrade 3082b8cef557 -> bb695f45c04, extend request state
INFO  [alembic.runtime.migration] Running upgrade bb695f45c04 -> 2f648fc909f3, index in rule_history on scope, name
INFO  [alembic.runtime.migration] Running upgrade 2f648fc909f3 -> 2edee4a83846, add source to requests and requests_history
INFO  [alembic.runtime.migration] Running upgrade 2edee4a83846 -> 3c9df354071b, extend waiting request state
INFO  [alembic.runtime.migration] Running upgrade 3c9df354071b -> 58bff7008037, add started_at to requests
INFO  [alembic.runtime.migration] Running upgrade 58bff7008037 -> 379a19b5332d, create rse transfer limits table
INFO  [alembic.runtime.migration] Running upgrade 379a19b5332d -> 575767d9f89, added source history table
INFO  [alembic.runtime.migration] Running upgrade 575767d9f89 -> 1d1215494e95, add quarantined_replicas table
INFO  [alembic.runtime.migration] Running upgrade 1d1215494e95 -> 5f139f77382a, added child_rule_id column
INFO  [alembic.runtime.migration] Running upgrade 5f139f77382a -> 21d6b9dc9961, add mismatch scheme state to requests
INFO  [alembic.runtime.migration] Running upgrade 21d6b9dc9961 -> a5f6f6e928a7, add columns for 1.7.0 release
INFO  [alembic.runtime.migration] Running upgrade a5f6f6e928a7 -> 0437a40dbfd1, add eol_at in rules
INFO  [alembic.runtime.migration] Running upgrade 0437a40dbfd1 -> fe8ea2fa9788, add third_party_copy column to rse_protocols
INFO  [alembic.runtime.migration] Running upgrade fe8ea2fa9788 -> 914b8f02df38, new table for lifetime model exceptions
INFO  [alembic.runtime.migration] Running upgrade 914b8f02df38 -> 6e572a9bfbf3, add new split_container column to rules
INFO  [alembic.runtime.migration] Running upgrade 6e572a9bfbf3 -> e59300c8b179, support for archive
INFO  [alembic.runtime.migration] Running upgrade e59300c8b179 -> 5673b4b6e843, add metadata to rule tables
INFO  [alembic.runtime.migration] Running upgrade 5673b4b6e843 -> 3ac1660a1a72, extend distance table
INFO  [alembic.runtime.migration] Running upgrade 3ac1660a1a72 -> b4293a99f344, added column identity to table tokens
INFO  [alembic.runtime.migration] Running upgrade b4293a99f344 -> 1c45d9730ca6, increase identity length
INFO  [alembic.runtime.migration] Running upgrade 1c45d9730ca6 -> 94a5961ddbf2, add estimator columns to request table
INFO  [alembic.runtime.migration] Running upgrade 94a5961ddbf2 -> 2962ece31cf4, add access_cnt column in the DID table
INFO  [alembic.runtime.migration] Running upgrade 2962ece31cf4 -> b818052fa670, add index to quarantined replicas
INFO  [alembic.runtime.migration] Running upgrade b818052fa670 -> 688ef1840840, adding did_meta table
INFO  [alembic.runtime.migration] Running upgrade 688ef1840840 -> 1f46c5f240ac, add bytes column to bad_replicas
INFO  [alembic.runtime.migration] Running upgrade 1f46c5f240ac -> b96a1c7e1cc4, new bad_pfns table and bad_replicas changes
INFO  [alembic.runtime.migration] Running upgrade b96a1c7e1cc4 -> 9eb936a81eb1, true is true
INFO  [alembic.runtime.migration] Running upgrade 9eb936a81eb1 -> bf3baa1c1474, correct PK and IDX for history tables
INFO  [alembic.runtime.migration] Running upgrade bf3baa1c1474 -> 90f47792bb76, add clob payload to messages
INFO  [alembic.runtime.migration] Running upgrade 90f47792bb76 -> 01eaf73ab656, add new rule notification state progress
INFO  [alembic.runtime.migration] Running upgrade 01eaf73ab656 -> 3345511706b8, replicas table PK definition is in wrong order
INFO  [alembic.runtime.migration] Running upgrade 3345511706b8 -> 7ec22226cdbf, new replica state for temporary unavailable replicas
INFO  [alembic.runtime.migration] Running upgrade 7ec22226cdbf -> 8523998e2e76, increase size of extended_attributes column
INFO  [alembic.runtime.migration] Running upgrade 8523998e2e76 -> b8caac94d7f0, add comments column for subscriptions_history
INFO  [alembic.runtime.migration] Running upgrade b8caac94d7f0 -> f1b14a8c2ac1, postgres_use_check_constraints
INFO  [alembic.runtime.migration] Running upgrade f1b14a8c2ac1 -> b7d287de34fd, Removal of ReplicaState.SOURCE
INFO  [alembic.runtime.migration] Running upgrade b7d287de34fd -> cebad904c4dd, New payload column for heartbeats
INFO  [alembic.runtime.migration] Running upgrade cebad904c4dd -> 2cbee484dcf9, added column volume to rse_transfer_limits
INFO  [alembic.runtime.migration] Running upgrade 2cbee484dcf9 -> 53b479c3cb0f, fix did_meta table missing updated_at, created_at columns
INFO  [alembic.runtime.migration] Running upgrade 53b479c3cb0f -> 9a1b149a2044, add saml identity type
INFO  [alembic.runtime.migration] Running upgrade 9a1b149a2044 -> bc68e9946deb, add staging timestamps to request
INFO  [alembic.runtime.migration] Running upgrade bc68e9946deb -> 2b69addda658, Add columns for third_party_copy_read and third_party_copy_write
INFO  [alembic.runtime.migration] Running upgrade 2b69addda658 -> a74275a1ad30, added global acount limits table
INFO  [alembic.runtime.migration] Running upgrade a74275a1ad30 -> 7541902bf173, add DidsFollowed and FollowEvents table
INFO  [alembic.runtime.migration] Running upgrade 7541902bf173 -> 810a41685bc1, added_columns_rse_transfer_limits
INFO  [alembic.runtime.migration] Running upgrade 810a41685bc1 -> d1189a09c6e0, OAuth2.0 and JWT feature support; adding table oauth_requests & several columns to tokens table
INFO  [alembic.runtime.migration] Running upgrade d1189a09c6e0 -> a118956323f8, Added vo table and vo col to rse
INFO  [alembic.runtime.migration] Running upgrade a118956323f8 -> a193a275255c, Add status column in messages
INFO  [alembic.runtime.migration] Running upgrade a193a275255c -> c0937668555f, add qos policy map table
INFO  [alembic.runtime.migration] Running upgrade c0937668555f -> 50280c53117c, add qos class to rse
INFO  [alembic.runtime.migration] Running upgrade 50280c53117c -> 8ea9122275b1, Adding missing function based indices
INFO  [alembic.runtime.migration] Running upgrade 8ea9122275b1 -> d23453595260, Add PREPARING state to Request model.
INFO  [alembic.runtime.migration] Running upgrade d23453595260 -> f85a2962b021, adding transfertool column and index to requests table
INFO  [alembic.runtime.migration] Running upgrade f85a2962b021 -> e138c364ebd0, Extending columns for filter and replication_rules in subscriptions
INFO  [alembic.runtime.migration] Running upgrade e138c364ebd0 -> 30fa38b6434e, Add index on service column in the message table
INFO  [alembic.runtime.migration] Running upgrade 30fa38b6434e -> 52153819589c, add_rse_id_to_replicas_table
INFO  [alembic.runtime.migration] Running upgrade 52153819589c -> ccdbcd48206e, Add did_type column + index on did_meta table
INFO  [alembic.runtime.migration] Running upgrade ccdbcd48206e -> 739064d31565, remove history table pks
INFO  [alembic.runtime.migration] Running upgrade 739064d31565 -> 9a45bc4ea66d, add VP table
INFO  [alembic.runtime.migration] Running upgrade 9a45bc4ea66d -> 0f1adb7a599a, create transfer hops table
INFO  [alembic.runtime.migration] Running upgrade 0f1adb7a599a -> fe1a65b176c9, set third_party_copy_read and write fields
INFO  [alembic.runtime.migration] Running upgrade fe1a65b176c9 -> 1677d4d803c8, split rse availability into multiple
INFO  [alembic.runtime.migration] Running upgrade 1677d4d803c8 -> fa7a7d78b602, increase refresh token size
INFO  [alembic.runtime.migration] Running upgrade fa7a7d78b602 -> d6e2c3b2cf26, remove third_party_copy column from rse
INFO  [alembic.runtime.migration] Running upgrade d6e2c3b2cf26 -> f41ffe206f37, oracle_global_temporary_tables
INFO  [alembic.runtime.migration] Running upgrade f41ffe206f37 -> 2190e703eb6e, move rse settings to rse attributes
INFO  [alembic.runtime.migration] Running upgrade 2190e703eb6e -> 83f991c63a93, correct rse_expression length
INFO  [alembic.runtime.migration] Running upgrade 83f991c63a93 -> 13d4f70c66a9, introduce transfer limits
INFO  [alembic.runtime.migration] Running upgrade 13d4f70c66a9 -> 140fef722e91, cleanup distances table
INFO  [alembic.runtime.migration] Running upgrade 140fef722e91 -> fb28a95fe288, add_replicas_rse_id_tombstone_idx
INFO  [alembic.runtime.migration] Running upgrade fb28a95fe288 -> a6eb23955c28, state idx non functional
INFO  [alembic.runtime.migration] Running upgrade a6eb23955c28 -> 295289b5a800, processed_by and _at in requests
INFO  [alembic.runtime.migration] Running upgrade 295289b5a800 -> 27e3a68927fb, remove replicas_tombstone and replicas_rse_id indexes
INFO  [alembic.runtime.migration] Running upgrade 27e3a68927fb -> 4df2c5ddabc0, remove temporary dids
Check if is_old_db function is returning true before the full upgrade
Upgrading the DB to head
INFO  [alembic.runtime.migration] Context impl PostgresqlImpl.
INFO  [alembic.runtime.migration] Will assume transactional DDL.
INFO  [alembic.runtime.migration] Running upgrade 4df2c5ddabc0 -> a08fa8de1545, transfer_stats table
Check if is_old_db function returns false after the full upgrade
Graceful restart of Apache
[Wed Jun 26 12:27:46.946277 2024] [proxy:info] [pid 790:tid 790] AH01145: Sharing worker 'https://localhost' instead of creating new worker 'https://localhost'
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.22.0.21. Set the 'ServerName' directive globally to suppress this message
Bootstrapping tests
InfluxDB is not running at localhost:8086
InfluxDB is not running at localhost:8086
Sync rse_repository
Sync metadata keys
Activating default RSEs (XRD1, XRD2, XRD3, SSH1)
Creating RSEs

Created proxy in /tmp/x509up_u0.

Your proxy is valid until Sun Aug 17 03:27:53 UTC 2025
Added new deterministic RSE: XRD1
Added new deterministic RSE: XRD2
Added new deterministic RSE: XRD3
Added new deterministic RSE: XRD4
Added new deterministic RSE: XRD5
Added new deterministic RSE: SSH1
Added new deterministic RSE: WEB1
Added new RSE attribute for XRD1: test_container_xrd-True 
Added new RSE attribute for XRD2: test_container_xrd-True 
Added new RSE attribute for XRD3: test_container_xrd-True 
Added new RSE attribute for XRD4: test_container_xrd-True 
Added new RSE attribute for SSH1: test_container_ssh-True 
Added new RSE attribute for XRD5: oidc_support-True 
Added new RSE attribute for XRD5: bittorrent_driver-qbittorrent 
Added new RSE attribute for XRD5: qbittorrent_management_address-https://xrd5:8098/ 
Added new RSE attribute for XRD5: bittorrent_tracker_addr-http://xrd5:10001/announce 
Added new RSE attribute for WEB1: oidc_support-True 
Added new RSE attribute for WEB1: verify_checksum-False 
Added new RSE attribute for WEB1: bittorrent_driver-qbittorrent 
Added new RSE attribute for WEB1: qbittorrent_management_address-https://web1:8099/ 
Added new RSE attribute for WEB1: bittorrent_tracker_addr-http://web1:10001/announce 
xrd1:1094

xrd2:1095

xrd3:1096

xrd4:1097

Added new RSE attribute for XRD1: fts-https://fts:8446 
Added new RSE attribute for XRD2: fts-https://fts:8446 
Added new RSE attribute for XRD3: fts-https://fts:8446 
Added new RSE attribute for XRD4: fts-https://fts:8446 
Added new RSE attribute for XRD5: fts-https://fts:8446 
Added new RSE attribute for SSH1: fts-https://fts:8446 
Added new RSE attribute for WEB1: fts-https://fts:8446 
Added new RSE attribute for XRD3: available_for_multihop-True 
Set distance from XRD1 to XRD2 to 1
Set distance from XRD1 to XRD3 to 1
Set distance from XRD2 to XRD1 to 1
Set distance from XRD2 to XRD3 to 2
Set distance from XRD3 to XRD1 to 1
Set distance from XRD3 to XRD2 to 2
Set distance from XRD3 to XRD4 to 3
Set distance from XRD4 to XRD3 to 3
Set distance from XRD4 to XRD5 to 1
Set distance from XRD5 to XRD4 to 1
Set distance from XRD5 to WEB1 to 1
Set distance from WEB1 to XRD5 to 1
Set account limit for account root on RSE XRD1: -1.000 B
Set account limit for account root on RSE XRD2: -1.000 B
Set account limit for account root on RSE XRD3: -1.000 B
Set account limit for account root on RSE XRD4: -1.000 B
 Set account limit for account root on RSE SSH1: -1.000 B
Added new scope to account: test-root
1+0 records in
1+0 records out
10485760 bytes (10 MB, 10 MiB) copied, 0.0455747 s, 230 MB/s
1+0 records in
1+0 records out
10485760 bytes (10 MB, 10 MiB) copied, 0.0438152 s, 239 MB/s
1+0 records in
1+0 records out
10485760 bytes (10 MB, 10 MiB) copied, 0.0419433 s, 250 MB/s
1+0 records in
1+0 records out
10485760 bytes (10 MB, 10 MiB) copied, 0.0422837 s, 248 MB/s
2024-06-26 12:29:21,327 INFO    Preparing upload for file file1
2024-06-26 12:29:21,502 INFO    Successfully added replica in Rucio catalogue at XRD1
2024-06-26 12:29:21,682 INFO    Successfully added replication rule at XRD1
2024-06-26 12:29:22,980 INFO    Trying upload with root to XRD1
2024-06-26 12:29:24,498 INFO    Successful upload of temporary file. root://xrd1:1094//rucio/test/80/25/file1.rucio.upload
2024-06-26 12:29:26,416 INFO    Successfully uploaded file file1
2024-06-26 12:29:28,949 INFO    Preparing upload for file file2
2024-06-26 12:29:29,121 INFO    Successfully added replica in Rucio catalogue at XRD1
2024-06-26 12:29:29,203 INFO    Successfully added replication rule at XRD1
2024-06-26 12:29:30,625 INFO    Trying upload with root to XRD1
2024-06-26 12:29:32,076 INFO    Successful upload of temporary file. root://xrd1:1094//rucio/test/f3/14/file2.rucio.upload
2024-06-26 12:29:34,038 INFO    Successfully uploaded file file2
2024-06-26 12:29:36,669 INFO    Preparing upload for file file3
2024-06-26 12:29:36,762 INFO    Successfully added replica in Rucio catalogue at XRD2
2024-06-26 12:29:36,843 INFO    Successfully added replication rule at XRD2
2024-06-26 12:29:38,255 INFO    Trying upload with root to XRD2
2024-06-26 12:29:39,748 INFO    Successful upload of temporary file. root://xrd2:1095//rucio/test/a9/23/file3.rucio.upload
2024-06-26 12:29:41,645 INFO    Successfully uploaded file file3
2024-06-26 12:29:44,256 INFO    Preparing upload for file file4
2024-06-26 12:29:44,323 INFO    Successfully added replica in Rucio catalogue at XRD2
2024-06-26 12:29:44,406 INFO    Successfully added replication rule at XRD2
2024-06-26 12:29:45,746 INFO    Trying upload with root to XRD2
2024-06-26 12:29:47,158 INFO    Successful upload of temporary file. root://xrd2:1095//rucio/test/2b/c2/file4.rucio.upload
2024-06-26 12:29:48,948 INFO    Successfully uploaded file file4
Added test:dataset1
DIDs successfully attached to test:dataset1
Added test:dataset2
DIDs successfully attached to test:dataset2
Added test:container
DIDs successfully attached to test:container
cf36e44020464d95b0fb1134e12ba972
Added test:dataset3
DIDs successfully attached to test:dataset3
User certificate: /tmp/x509up_u0
User private key: /tmp/x509up_u0
Loaded CN=Rucio User, CN=2105561069
Loaded CN=Rucio User
Using endpoint: https://fts:8446
REST API version: 3.13.0
User DN: /CN=Rucio User
VO: 6fe2a9f5e8876772
VO id: 974b7dc0-b43c-55ed-bd07-c62098b658cb
Delegation id: 6fe2a9f5e8876772
Base id: 01874efb-4735-4595-bc9c-591aef8240c9
User certificate: /tmp/x509up_u0
User private key: /tmp/x509up_u0
Loaded CN=Rucio User, CN=2105561069
Loaded CN=Rucio User
Using endpoint: https://fts:8446
REST API version: 3.13.0
Delegation ID: 6fe2a9f5e8876772
No previous delegation found
Delegating
Signing request
Delegation id: 6fe2a9f5e8876772
Termination time: 2025-08-17T03:27:53
+ docker exec -t dev_rucio_1 tools/pytest.sh -v --tb=short tests/test_conveyor.py
Running pytest with extra arguments: -v --tb=short tests/test_conveyor.py
Running pytest with pytest-xdist:  -p xdist --numprocesses=auto
================================================================================================ test session starts ================================================================================================
platform linux -- Python 3.9.18, pytest-7.4.3, pluggy-1.5.0 -- /usr/bin/python
cachedir: .pytest_cache
rootdir: /opt/rucio
plugins: xdist-3.5.0
20 workers [26 items]     
scheduling tests via NoParallelScheduler

tests/test_conveyor.py::test_preparer_throttler_submitter[file_config_mock{'conveyor': {'use_preparer': 'true'}}] 
[gw0] [  3%] PASSED tests/test_conveyor.py::test_preparer_throttler_submitter[file_config_mock{'conveyor': {'use_preparer': 'true'}}] 
tests/test_conveyor.py::test_transfer_plugins[file_config_mock{'transfers': {'fts3tape_metadata_plugins': 'activity'}, 'tape_priority': {'fast': '100', 'slow': '1'}}] 
[gw0] [  7%] PASSED tests/test_conveyor.py::test_transfer_plugins[file_config_mock{'transfers': {'fts3tape_metadata_plugins': 'activity'}, 'tape_priority': {'fast': '100', 'slow': '1'}}] 
tests/test_conveyor.py::test_multihop_intermediate_replica_lifecycle[caches_mock0-core_config_mock{'transfers': {'multihop_tombstone_delay': -1}}] 
[gw0] [ 11%] PASSED tests/test_conveyor.py::test_multihop_intermediate_replica_lifecycle[caches_mock0-core_config_mock{'transfers': {'multihop_tombstone_delay': -1}}] 
tests/test_conveyor.py::test_fts_non_recoverable_failures_handled_on_multihop[caches_mock0] 
[gw0] [ 15%] PASSED tests/test_conveyor.py::test_fts_non_recoverable_failures_handled_on_multihop[caches_mock0] 
tests/test_conveyor.py::test_fts_recoverable_failures_handled_on_multihop[caches_mock0] 
[gw0] [ 19%] PASSED tests/test_conveyor.py::test_fts_recoverable_failures_handled_on_multihop[caches_mock0] 
tests/test_conveyor.py::test_receiver_archiving[caches_mock0] 
[gw0] [ 23%] PASSED tests/test_conveyor.py::test_receiver_archiving[caches_mock0] 
tests/test_conveyor.py::test_non_deterministic_dst[caches_mock0] 
[gw0] [ 26%] PASSED tests/test_conveyor.py::test_non_deterministic_dst[caches_mock0] 
tests/test_conveyor.py::test_transfer_to_mas_existing_replica 
[gw0] [ 30%] PASSED tests/test_conveyor.py::test_transfer_to_mas_existing_replica 
tests/test_conveyor.py::test_failed_transfers_to_mas_existing_replica 
[gw0] [ 34%] PASSED tests/test_conveyor.py::test_failed_transfers_to_mas_existing_replica 
tests/test_conveyor.py::test_lost_transfers 
[gw0] [ 38%] PASSED tests/test_conveyor.py::test_lost_transfers 
tests/test_conveyor.py::test_overwrite_on_tape[caches_mock0] 
[gw0] [ 42%] PASSED tests/test_conveyor.py::test_overwrite_on_tape[caches_mock0] 
tests/test_conveyor.py::test_overwrite_hops[caches_mock0] 
[gw0] [ 46%] PASSED tests/test_conveyor.py::test_overwrite_hops[caches_mock0] 
tests/test_conveyor.py::test_file_exists_handled[caches_mock0] 
[gw0] [ 50%] PASSED tests/test_conveyor.py::test_file_exists_handled[caches_mock0] 
tests/test_conveyor.py::test_overwrite_corrupted_files[caches_mock0-core_config_mock{'transfers': {'overwrite_corrupted_files': False}}] 
[gw0] [ 53%] PASSED tests/test_conveyor.py::test_overwrite_corrupted_files[caches_mock0-core_config_mock{'transfers': {'overwrite_corrupted_files': False}}] 
tests/test_conveyor.py::test_multi_vo_certificates[file_config_mock{'conveyor': {'usercert': 'DEFAULT_DUMMY_CERT'}, 'vo_certs': {'new': 'NEW_VO_DUMMY_CERT'}}] 
[gw0] [ 57%] SKIPPED tests/test_conveyor.py::test_multi_vo_certificates[file_config_mock{'conveyor': {'usercert': 'DEFAULT_DUMMY_CERT'}, 'vo_certs': {'new': 'NEW_VO_DUMMY_CERT'}}] 
tests/test_conveyor.py::test_two_multihops_same_intermediate_rse[file_config_mock{'transfers': {'stats_enabled': 'True'}}-caches_mock0-core_config_mock{'transfers': {'multihop_tombstone_delay': -1, 'multihop_rse_expression': '*'}}] 
[gw0] [ 61%] PASSED tests/test_conveyor.py::test_two_multihops_same_intermediate_rse[file_config_mock{'transfers': {'stats_enabled': 'True'}}-caches_mock0-core_config_mock{'transfers': {'multihop_tombstone_delay': -1, 'multihop_rse_expression': '*'}}] 
tests/test_conveyor.py::test_checksum_validation 
[gw0] [ 65%] PASSED tests/test_conveyor.py::test_checksum_validation 
tests/test_conveyor.py::test_bittorrent_submission[file_config_mock{'client': {'register_bittorrent_meta': 'true'}}] 
[gw0] [ 69%] PASSED tests/test_conveyor.py::test_bittorrent_submission[file_config_mock{'client': {'register_bittorrent_meta': 'true'}}] 
tests/test_conveyor.py::test_multisource_receiver 
[gw0] [ 73%] PASSED tests/test_conveyor.py::test_multisource_receiver 
tests/test_conveyor.py::test_multihop_receiver_on_failure[caches_mock0] 
[gw0] [ 76%] PASSED tests/test_conveyor.py::test_multihop_receiver_on_failure[caches_mock0] 
tests/test_conveyor.py::test_multihop_receiver_on_success[caches_mock0] 
[gw0] [ 80%] PASSED tests/test_conveyor.py::test_multihop_receiver_on_success[caches_mock0] 
tests/test_conveyor.py::test_cancel_rule 
[gw0] [ 84%] PASSED tests/test_conveyor.py::test_cancel_rule 
tests/test_conveyor.py::test_transfer_with_tokens[file_config_mock{'oidc': {'admin_issuer': 'indigoiam'}}] 
[gw0] [ 88%] PASSED tests/test_conveyor.py::test_transfer_with_tokens[file_config_mock{'oidc': {'admin_issuer': 'indigoiam'}}] 
tests/test_conveyor.py::test_stager 
tests/test_conveyor.py::test_preparer_ignore_availability[file_config_mock{'conveyor': {'use_preparer': 'true'}}] 
[gw1] [ 92%] PASSED tests/test_conveyor.py::test_preparer_ignore_availability[file_config_mock{'conveyor': {'use_preparer': 'true'}}] 
[gw0] [ 96%] PASSED tests/test_conveyor.py::test_stager 
tests/test_conveyor.py::test_multisource[caches_mock0] 
[gw0] [100%] PASSED tests/test_conveyor.py::test_multisource[caches_mock0] 

================================================================================================= warnings summary ==================================================================================================
../../usr/local/lib/python3.9/site-packages/_pytest/config/__init__.py:735: 20 warnings
  /usr/local/lib/python3.9/site-packages/_pytest/config/__init__.py:735: PytestAssertRewriteWarning: Module already imported so cannot be rewritten: xdist
    self.import_plugin(arg, consider_entry_points=True)

tests/test_conveyor.py: 24 warnings
  /usr/local/lib/python3.9/site-packages/urllib3/connectionpool.py:1061: InsecureRequestWarning: Unverified HTTPS request is being made to host 'rucio'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/1.26.x/advanced-usage.html#ssl-warnings
    warnings.warn(

tests/test_conveyor.py: 21 warnings
  /usr/local/lib/python3.9/site-packages/urllib3/connectionpool.py:1061: InsecureRequestWarning: Unverified HTTPS request is being made to host 'fts'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/1.26.x/advanced-usage.html#ssl-warnings
    warnings.warn(

tests/test_conveyor.py::test_preparer_throttler_submitter[file_config_mock{'conveyor': {'use_preparer': 'true'}}]
  /usr/local/lib/python3.9/site-packages/rucio/core/request.py:2267: SAWarning: Coercing Subquery object into a select() for use in IN(); please pass a select() construct explicitly
    models.Request.id.in_(subquery)

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
============================================================================== 25 passed, 1 skipped, 66 warnings in 460.27s (0:07:40) ===============================================================================
+ docker exec -t dev_rucio_1 tools/pytest.sh -v --tb=short --export-artifacts-from=test_tpc tests/test_tpc.py
Running pytest with extra arguments: -v --tb=short --export-artifacts-from=test_tpc tests/test_tpc.py
Running pytest with pytest-xdist:  -p xdist --numprocesses=auto
================================================================================================ test session starts ================================================================================================
platform linux -- Python 3.9.18, pytest-7.4.3, pluggy-1.5.0 -- /usr/bin/python
cachedir: .pytest_cache
rootdir: /opt/rucio
plugins: xdist-3.5.0
20 workers [1 item]       
scheduling tests via NoParallelScheduler

tests/test_tpc.py::test_tpc[/tmp/test_tpc.artifact] 
[gw0] [100%] PASSED tests/test_tpc.py::test_tpc[/tmp/test_tpc.artifact] 

================================================================================================= warnings summary ==================================================================================================
../../usr/local/lib/python3.9/site-packages/_pytest/config/__init__.py:735: 20 warnings
  /usr/local/lib/python3.9/site-packages/_pytest/config/__init__.py:735: PytestAssertRewriteWarning: Module already imported so cannot be rewritten: xdist
    self.import_plugin(arg, consider_entry_points=True)

tests/test_tpc.py::test_tpc[/tmp/test_tpc.artifact]
  /usr/local/lib/python3.9/site-packages/urllib3/connectionpool.py:1061: InsecureRequestWarning: Unverified HTTPS request is being made to host 'rucio'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/1.26.x/advanced-usage.html#ssl-warnings
    warnings.warn(

tests/test_tpc.py::test_tpc[/tmp/test_tpc.artifact]
  /usr/local/lib/python3.9/site-packages/urllib3/connectionpool.py:1061: InsecureRequestWarning: Unverified HTTPS request is being made to host 'fts'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/1.26.x/advanced-usage.html#ssl-warnings
    warnings.warn(

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
========================================================================================== 1 passed, 22 warnings in 53.17s ==========================================================================================
rdimaio commented 1 week ago

Hi again,

I tried running the tests, but it fails with dependencies of rucio not being installed. The tools/run_tests.sh -ir script has a section that would pip install -r requirements.server.txt -r requirements.dev.txt, but that command is not triggered because the requirements directory is not mounted into the dev_rucio_1 container.

How does this work in the CI?

Only requirements.dev.txt is needed (it includes the requirements from requirements.server.txt, so run_tests.sh is wrong. I'll fix it

edit: PR: https://github.com/rucio/rucio/pull/6847

bari12 commented 4 days ago

Very nice, thanks @maxnoe 👍