From acae8d1869fafd0ec17906c351148a3244633e40 Mon Sep 17 00:00:00 2001 From: Ethan Perruzza Date: Tue, 15 Oct 2024 10:33:14 +0200 Subject: [PATCH 1/5] docker: fix docker-compose.pr-tests.yml not running on Mac ARM chips Signed-off-by: Ethan Perruzza --- docker/docker-compose.pr-tests.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docker/docker-compose.pr-tests.yml b/docker/docker-compose.pr-tests.yml index ad13c9e1d14..7888ce5bf54 100644 --- a/docker/docker-compose.pr-tests.yml +++ b/docker/docker-compose.pr-tests.yml @@ -54,7 +54,7 @@ services: - pr-tests rabbitmq: - image: rabbitmq:3-management + image: rabbitmq:4-management container_name: osrd-rabbitmq-pr-tests ports: - "5673:5673" @@ -77,6 +77,7 @@ services: core: image: ghcr.io/openrailassociation/osrd-edge/osrd-core:${PR_NB} + platform: linux/x86_64 container_name: osrd-core-dummy-pr-tests restart: "no" command: "true" @@ -85,6 +86,7 @@ services: editoast: image: ghcr.io/openrailassociation/osrd-edge/osrd-editoast:${PR_NB} + platform: linux/x86_64 container_name: osrd-editoast-pr-tests depends_on: postgres: {condition: service_healthy} @@ -115,6 +117,7 @@ services: osrd-images: image: ghcr.io/openrailassociation/osrd-stable/osrd-images:${TAG_IMAGES-v1.0.0} + platform: linux/x86_64 container_name: osrd-images-pr-tests restart: unless-stopped environment: @@ -125,6 +128,7 @@ services: gateway: image: ghcr.io/openrailassociation/osrd-edge/osrd-gateway:${PR_NB}-front + platform: linux/x86_64 container_name: osrd-gateway-pr-tests volumes: - "../docker/gateway.pr-tests.simple.toml:/srv/gateway.toml" @@ -135,6 +139,7 @@ services: osrdyne: image: ghcr.io/openrailassociation/osrd-edge/osrd-osrdyne:${PR_NB} + platform: linux/x86_64 container_name: osrd-osrdyne-pr-tests depends_on: rabbitmq: {condition: service_healthy} From 0903461306acbb93d6eace40590bb82b3c2dbc67 Mon Sep 17 00:00:00 2001 From: Ethan Perruzza Date: Tue, 15 Oct 2024 10:35:41 +0200 Subject: [PATCH 2/5] docker: define an env var that switches postgis image for ARM chips Mac users for better performances Signed-off-by: Ethan Perruzza --- scripts/pr-infra-compose.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/scripts/pr-infra-compose.sh b/scripts/pr-infra-compose.sh index 2ed7c04a0f8..b4a4ffacd94 100755 --- a/scripts/pr-infra-compose.sh +++ b/scripts/pr-infra-compose.sh @@ -7,6 +7,12 @@ set -e +# For Macos ARM chip users set a postgis image compiled to run on ARM, it makes their DB runs faster as their computer don't have to emulate x86_64's architecture. +case "$(uname -s)" in + Darwin*) export OSRD_POSTGIS_IMAGE='nickblah/postgis:16-postgis-3';; + *) :;; +esac + # Usage if { From 4f791ccfbd003374fa614a1af820d5c16fa6b0e9 Mon Sep 17 00:00:00 2001 From: Ethan Perruzza Date: Tue, 15 Oct 2024 17:31:44 +0200 Subject: [PATCH 3/5] script: wait for dockers to load before trying to update the db in the pr test script Signed-off-by: Ethan Perruzza --- scripts/pr-infra-compose.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/pr-infra-compose.sh b/scripts/pr-infra-compose.sh index b4a4ffacd94..b03987fb098 100755 --- a/scripts/pr-infra-compose.sh +++ b/scripts/pr-infra-compose.sh @@ -42,7 +42,7 @@ if [ "$2" = "up" ] || [ "$2" = "up-and-load-backup" ]; then docker compose \ -p "osrd-pr-tests" \ -f "docker/docker-compose.pr-tests.yml" \ - up -d postgres valkey + up --wait valkey postgres -d # Load backup export PR_TEST=1 From 65f52e37b42775c2628a211829358978c7cd6344 Mon Sep 17 00:00:00 2001 From: Ethan Perruzza Date: Tue, 15 Oct 2024 17:34:34 +0200 Subject: [PATCH 4/5] script: valkey is not sarted for the pr-test script load-backup if it wasn't already launched anymore, it's volume is erased similarly to the dev behaviour Signed-off-by: Ethan Perruzza --- scripts/cleanup-db.sh | 4 +++- scripts/pr-infra-compose.sh | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/scripts/cleanup-db.sh b/scripts/cleanup-db.sh index 9a2f35ced4e..c2e4704194a 100755 --- a/scripts/cleanup-db.sh +++ b/scripts/cleanup-db.sh @@ -18,12 +18,14 @@ fi OSRD_POSTGRES="osrd-postgres" OSRD_EDITOAST="osrd-editoast" OSRD_VALKEY="osrd-valkey" +OSRD_VALKEY_VOLUME="osrd_valkey_data" OSRD_POSTGRES_PORT=5432 OSRD_VALKEY_PORT=6379 if [ "$PR_TEST" -eq 1 ]; then OSRD_POSTGRES="osrd-postgres-pr-tests" OSRD_EDITOAST="osrd-editoast-pr-tests" OSRD_VALKEY="osrd-valkey-pr-tests" + OSRD_VALKEY_VOLUME="osrd-pr-tests_valkey_data" OSRD_POSTGRES_PORT=5433 OSRD_VALKEY_PORT=6380 fi @@ -71,7 +73,7 @@ docker exec "$OSRD_POSTGRES" psql -p "$OSRD_POSTGRES_PORT" -f //tmp/init.sql > / # Clear Valkey Cache echo "Deleting valkey cache..." -docker exec "$OSRD_VALKEY" valkey-cli -p "$OSRD_VALKEY_PORT" FLUSHALL > /dev/null 2>&1 || docker volume rm -f osrd_valkey_data > /dev/null +docker exec "$OSRD_VALKEY" valkey-cli -p "$OSRD_VALKEY_PORT" FLUSHALL > /dev/null 2>&1 || docker volume rm -f $OSRD_VALKEY_VOLUME > /dev/null echo "Cleanup done!\n" echo "You may want to apply migrations if you don't load a backup:" diff --git a/scripts/pr-infra-compose.sh b/scripts/pr-infra-compose.sh index b03987fb098..20cd474f7a5 100755 --- a/scripts/pr-infra-compose.sh +++ b/scripts/pr-infra-compose.sh @@ -42,7 +42,7 @@ if [ "$2" = "up" ] || [ "$2" = "up-and-load-backup" ]; then docker compose \ -p "osrd-pr-tests" \ -f "docker/docker-compose.pr-tests.yml" \ - up --wait valkey postgres -d + up --wait postgres -d # Load backup export PR_TEST=1 From d4d5d4398bb1df61338ebb312c1f09d6633f09ac Mon Sep 17 00:00:00 2001 From: Ethan Perruzza Date: Wed, 16 Oct 2024 09:40:38 +0200 Subject: [PATCH 5/5] script: rename pr-infra-compose.sh script to pr-tests-compose.sh Signed-off-by: Ethan Perruzza --- scripts/{pr-infra-compose.sh => pr-tests-compose.sh} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename scripts/{pr-infra-compose.sh => pr-tests-compose.sh} (100%) diff --git a/scripts/pr-infra-compose.sh b/scripts/pr-tests-compose.sh similarity index 100% rename from scripts/pr-infra-compose.sh rename to scripts/pr-tests-compose.sh