From a11c3d4bf627d9949708204db97c9241aefcde01 Mon Sep 17 00:00:00 2001 From: Kevin Biju <52661649+heavycrystal@users.noreply.github.com> Date: Wed, 8 May 2024 01:37:05 +0530 Subject: [PATCH] Docker + run scripts minor fixes (#1686) 1. `run-peerdb.sh` should now support Podman too (needs to be tested) 2. implict network creation, check not needed 3. misc things to script --- dev-peerdb.sh | 36 +++++++++++++++--------------------- docker-compose-dev.yml | 1 - docker-compose.yml | 1 - run-peerdb.sh | 25 ++++++++++++++++--------- 4 files changed, 31 insertions(+), 32 deletions(-) diff --git a/dev-peerdb.sh b/dev-peerdb.sh index 7c32151845..fb5da35f1b 100755 --- a/dev-peerdb.sh +++ b/dev-peerdb.sh @@ -1,33 +1,27 @@ #!/bin/sh -if test -z "$USE_PODMAN" +set -Eeu + +DOCKER="docker" +EXTRA_ARGS="--no-attach temporal --no-attach pyroscope --no-attach temporal-ui" + +if test -n "${USE_PODMAN:=}" then - if ! command -v docker &> /dev/null - then - if command -v podman-compose - then - echo "docker could not be found on PATH, using podman-compose" + # 0 is found, checking for not found so we check for podman then + if $(docker compose &>/dev/null) && [ $? -ne 0 ]; then + if $(podman compose &>/dev/null) && [ $? -eq 0 ]; then + echo "docker could not be found on PATH, using podman compose" USE_PODMAN=1 else - echo "docker could not be found on PATH" + echo "docker compose could not be found on PATH" exit 1 fi fi fi -if test -z "$USE_PODMAN" -then - DOCKER="docker compose" - EXTRA_ARGS="--no-attach temporal --no-attach pyroscope --no-attach temporal-ui" -else - DOCKER="podman-compose --podman-run-args=--replace" - EXTRA_ARGS="" -fi - -# check if peerdb_network exists if not create it -if ! $DOCKER network inspect peerdb_network &> /dev/null -then - $DOCKER network create peerdb_network +if test -n "$USE_PODMAN"; then + DOCKER="podman" + EXTRA_ARGS="--podman-run-args=--replace" fi export PEERDB_VERSION_SHA_SHORT=local-$(git rev-parse --short HEAD) -exec $DOCKER -f docker-compose-dev.yml up --build $EXTRA_ARGS +exec $DOCKER compose -f docker-compose-dev.yml up --build $EXTRA_ARGS diff --git a/docker-compose-dev.yml b/docker-compose-dev.yml index d7d93f6de9..1868c755bf 100644 --- a/docker-compose-dev.yml +++ b/docker-compose-dev.yml @@ -221,5 +221,4 @@ volumes: networks: default: - external: true name: peerdb_network diff --git a/docker-compose.yml b/docker-compose.yml index 42fa2f26fc..fb144173aa 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -192,5 +192,4 @@ volumes: networks: default: - external: true name: peerdb_network diff --git a/run-peerdb.sh b/run-peerdb.sh index 002bf93679..91bce75a02 100755 --- a/run-peerdb.sh +++ b/run-peerdb.sh @@ -1,17 +1,24 @@ #!/bin/sh set -Eeu -if ! command -v docker &> /dev/null +DOCKER="docker" + +if test -n "${USE_PODMAN:=}" then - echo "docker could not be found on PATH" - exit 1 + if ! (command -v docker &> /dev/null); then + if (command -v podman &> /dev/null); then + echo "docker could not be found on PATH, using podman" + USE_PODMAN=1 + else + echo "docker could not be found on PATH" + exit 1 + fi + fi fi -# check if peerdb_network exists if not create it -if ! docker network inspect peerdb_network &> /dev/null -then - docker network create peerdb_network +if test -n "$USE_PODMAN"; then + DOCKER="podman" fi -docker compose pull -docker compose -f docker-compose.yml up --no-attach catalog --no-attach temporal --no-attach temporal-ui --no-attach temporal-admin-tools +$DOCKER compose pull +exec $DOCKER compose -f docker-compose.yml up --no-attach catalog --no-attach temporal --no-attach temporal-ui --no-attach temporal-admin-tools