changeset 785:de1ee0264916

pg-upgrade tests
author Alain Mazy <am@orthanc.team>
date Fri, 14 Feb 2025 14:52:35 +0100 (3 months ago)
parents 058ce25e12a9
children fbff56dc871e
files NewTests/PostgresUpgrades/docker-compose.yml NewTests/PostgresUpgrades/downgrade.sh NewTests/PostgresUpgrades/run-integ-tests-from-docker.sh NewTests/PostgresUpgrades/test_pg_upgrades.py
diffstat 4 files changed, 24 insertions(+), 25 deletions(-) [+]
line wrap: on
line diff
--- a/NewTests/PostgresUpgrades/docker-compose.yml	Fri Feb 14 12:36:49 2025 +0100
+++ b/NewTests/PostgresUpgrades/docker-compose.yml	Fri Feb 14 14:52:35 2025 +0100
@@ -1,4 +1,3 @@
-version: "3"
 services:
 
   # Orthanc with PG plugin v2
@@ -17,9 +16,9 @@
       AC_AUTHENTICATION_ENABLED: "false"
 
   # Orthanc previous version
-  orthanc-pg-15-6rev2:
-    image: orthancteam/orthanc:24.10.3
-    container_name: orthanc-pg-15-6rev2
+  orthanc-pg-15-previous-revision:
+    image: orthancteam/orthanc:25.1.1
+    container_name: orthanc-pg-15-previous-revision
     depends_on: [pg-15]
     restart: unless-stopped
     ports: ["8052:8042"]
@@ -30,9 +29,9 @@
       ORTHANC__AUTHENTICATION_ENABLED: "false"
 
   # Orthanc previous version to run the integration tests
-  orthanc-pg-15-6rev2-for-integ-tests:
-    image: orthancteam/orthanc:24.10.3
-    container_name: orthanc-pg-15-6rev2-for-integ-tests
+  orthanc-pg-15-previous-revision-for-integ-tests:
+    image: orthancteam/orthanc:25.1.1
+    container_name: orthanc-pg-15-previous-revision-for-integ-tests
     depends_on: [pg-15]
     restart: unless-stopped
     ports: ["8053:8042"]
@@ -51,7 +50,7 @@
     image: jodogne/orthanc-tests
     container_name: orthanc-tests
     depends_on:
-      - orthanc-pg-15-6rev2-for-integ-tests
+      - orthanc-pg-15-previous-revision-for-integ-tests
     volumes:
       - ../../:/tests/orthanc-tests
       - ./wait-for-it.sh:/scripts/wait-for-it.sh
--- a/NewTests/PostgresUpgrades/downgrade.sh	Fri Feb 14 12:36:49 2025 +0100
+++ b/NewTests/PostgresUpgrades/downgrade.sh	Fri Feb 14 14:52:35 2025 +0100
@@ -5,7 +5,7 @@
 apt-get update && apt-get install -y wget mercurial
 hg clone https://orthanc.uclouvain.be/hg/orthanc-databases
 hg update -r default
-psql -U postgres -f /scripts/orthanc-databases/PostgreSQL/Plugins/SQL/Downgrades/Rev3ToRev2.sql
+psql -U postgres -f /scripts/orthanc-databases/PostgreSQL/Plugins/SQL/Downgrades/Rev4ToRev3.sql
 
 # if you want to test a downgrade procedure, you may use this code ...
 # psql -U postgres -f downgrade.sql
--- a/NewTests/PostgresUpgrades/run-integ-tests-from-docker.sh	Fri Feb 14 12:36:49 2025 +0100
+++ b/NewTests/PostgresUpgrades/run-integ-tests-from-docker.sh	Fri Feb 14 14:52:35 2025 +0100
@@ -2,6 +2,6 @@
 
 set -ex
 
-/scripts/wait-for-it.sh orthanc-pg-15-6rev2-for-integ-tests:8042 -t 60
-# python /tests/orthanc-tests/Tests/Run.py --server=orthanc-pg-15-6rev2-for-integ-tests --force --docker -- -v  Orthanc.test_lua_deadlock
-python /tests/orthanc-tests/Tests/Run.py --server=orthanc-pg-15-6rev2-for-integ-tests --force --docker -- -v
+/scripts/wait-for-it.sh orthanc-pg-15-previous-revision-for-integ-tests:8042 -t 60
+# python /tests/orthanc-tests/Tests/Run.py --server=orthanc-pg-15-previous-revision-for-integ-tests --force --docker -- -v  Orthanc.test_lua_deadlock
+python /tests/orthanc-tests/Tests/Run.py --server=orthanc-pg-15-previous-revision-for-integ-tests --force --docker -- -v
--- a/NewTests/PostgresUpgrades/test_pg_upgrades.py	Fri Feb 14 12:36:49 2025 +0100
+++ b/NewTests/PostgresUpgrades/test_pg_upgrades.py	Fri Feb 14 14:52:35 2025 +0100
@@ -27,7 +27,7 @@
         cls.cleanup()
 
 
-    def test_upgrade_6rev2_to_6rev3(self):
+    def test_upgrade_previous_revision_to_current(self):
         # remove everything including the DB from previous tests
         TestPgUpgrades.cleanup()
 
@@ -38,16 +38,16 @@
         subprocess.run(["docker", "compose", "up", "pg-15", "-d"], check=True)
         wait_container_healthy("pg-15")
 
-        print("Launching Orthanc with DB 6rev2")
-        subprocess.run(["docker", "compose", "up", "orthanc-pg-15-6rev2", "-d"], check=True)
+        print("Launching Orthanc with DB previous-revision")
+        subprocess.run(["docker", "compose", "up", "orthanc-pg-15-previous-revision", "-d"], check=True)
 
         o = OrthancApiClient("http://localhost:8052")
         o.wait_started()
 
         instances = o.upload_folder(here / "../../Database/Knee")
 
-        print("Stopping Orthanc with DB 6rev2")
-        subprocess.run(["docker", "compose", "stop", "orthanc-pg-15-6rev2"], check=True)
+        print("Stopping Orthanc with DB previous-revision")
+        subprocess.run(["docker", "compose", "stop", "orthanc-pg-15-previous-revision"], check=True)
         time.sleep(2)
 
         print("Launching newest Orthanc")
@@ -115,12 +115,12 @@
         subprocess.run(["docker", "compose", "stop", "orthanc-pg-15-under-tests"], check=True)
         time.sleep(2)
 
-        print("Downgrading Orthanc DB to 6rev2")
+        print("Downgrading Orthanc DB to previous-revision")
         subprocess.run(["docker", "exec", "pg-15", "./scripts/downgrade.sh"], check=True)
         time.sleep(2)
 
-        print("Launching previous Orthanc (DB 6rev2)")
-        subprocess.run(["docker", "compose", "up", "orthanc-pg-15-6rev2", "-d"], check=True)
+        print("Launching previous Orthanc (DB previous-revision)")
+        subprocess.run(["docker", "compose", "up", "orthanc-pg-15-previous-revision", "-d"], check=True)
 
         o = OrthancApiClient("http://localhost:8052")
         o.wait_started()
@@ -135,13 +135,13 @@
         self.assertEqual(0, int(o.get_json('statistics')['TotalDiskSize']))
 
         print("run the integration tests after a downgrade")
-        # first create the containers (orthanc-tests + orthanc-pg-15-6rev2-for-integ-tests) so they know each other
-        # subprocess.run(["docker", "compose", "create", "orthanc-tests"], check=True)
+        # first create the containers (orthanc-tests + orthanc-pg-15-previous-revision-for-integ-tests) so they know each other
+        subprocess.run(["docker", "compose", "create", "orthanc-tests"], check=True)
 
-        # subprocess.run(["docker", "compose", "up", "orthanc-pg-15-6rev2-for-integ-tests", "-d"], check=True)
+        subprocess.run(["docker", "compose", "up", "orthanc-pg-15-previous-revision-for-integ-tests", "-d"], check=True)
 
-        # o = OrthancApiClient("http://localhost:8053", user="alice", pwd="orthanctest")
-        # o.wait_started()
+        o = OrthancApiClient("http://localhost:8053", user="alice", pwd="orthanctest")
+        o.wait_started()
 
         # time.sleep(10000)
         subprocess.run(["docker", "compose", "up", "orthanc-tests"], check=True)