From 3c363878a1b03386cde0f7518a38d666e661844d Mon Sep 17 00:00:00 2001 From: cruizba Date: Fri, 17 Mar 2023 22:28:30 +0100 Subject: [PATCH] deployment: Improve metricbeat and filebeat URL parsing --- .../enterprise/master-node/docker-compose.yml | 30 +++++++++---------- .../openvidu-server-pro/docker-compose.yml | 30 +++++++++---------- 2 files changed, 28 insertions(+), 32 deletions(-) diff --git a/openvidu-server/deployments/enterprise/master-node/docker-compose.yml b/openvidu-server/deployments/enterprise/master-node/docker-compose.yml index ab6ceaa0..b1b7f71a 100644 --- a/openvidu-server/deployments/enterprise/master-node/docker-compose.yml +++ b/openvidu-server/deployments/enterprise/master-node/docker-compose.yml @@ -128,21 +128,20 @@ services: - /sys/fs/cgroup:/hostfs/sys/fs/cgroup:ro - /:/hostfs:ro entrypoint: > - /bin/bash -c 'if [[ $${OPENVIDU_PRO_ELASTICSEARCH_HOST} =~ ^(https?://)?([^:/]+)(:([0-9]+))?(/.*)?$$ ]]; then + /bin/bash -c '$$(if [[ $${OPENVIDU_PRO_ELASTICSEARCH_HOST} =~ ^(https?://)?([^:/]+)(:([0-9]+))?(/.*)?$$ ]]; then ES_PROTO=$${BASH_REMATCH[1]} ES_HOST=$${BASH_REMATCH[2]} + ES_PORT=$${BASH_REMATCH[4]} ES_PATH=$${BASH_REMATCH[5]} - if [[ $$ES_PROTO == "https://" ]] && [[ -z $${BASH_REMATCH[4]} ]]; then + if [[ $$ES_PROTO == "https://" ]] && [[ -z $$ES_PORT ]]; then ES_PORT=443 - else + elif [[ $$ES_PROTO == "http://" ]] && [[ -z $$ES_PORT ]]; then ES_PORT=80 - fi; - OPENVIDU_PRO_ELASTICSEARCH_HOST=$${ES_PROTO}$${ES_HOST}:$${ES_PORT}$${ES_PATH} + fi + export OPENVIDU_PRO_ELASTICSEARCH_HOST=$${ES_PROTO}$${ES_HOST}:$${ES_PORT}$${ES_PATH} else - echo "Invalid OPENVIDU_PRO_ELASTICSEARCH_HOST" - echo "It must be a valid URL" exit 1 - fi; + fi) /bin/bash -c "$$@"' command: > /bin/bash -c "metricbeat -e -strict.perms=false -e -system.hostfs=/hostfs @@ -166,21 +165,20 @@ services: - /var/lib/docker:/var/lib/docker:ro - /var/run/docker.sock:/var/run/docker.sock entrypoint: > - /bin/bash -c 'if [[ $${OPENVIDU_PRO_ELASTICSEARCH_HOST} =~ ^(https?://)?([^:/]+)(:([0-9]+))?(/.*)?$$ ]]; then + /bin/bash -c '$$(if [[ $${OPENVIDU_PRO_ELASTICSEARCH_HOST} =~ ^(https?://)?([^:/]+)(:([0-9]+))?(/.*)?$$ ]]; then ES_PROTO=$${BASH_REMATCH[1]} ES_HOST=$${BASH_REMATCH[2]} + ES_PORT=$${BASH_REMATCH[4]} ES_PATH=$${BASH_REMATCH[5]} - if [[ $$ES_PROTO == "https://" ]] && [[ -z $${BASH_REMATCH[4]} ]]; then + if [[ $$ES_PROTO == "https://" ]] && [[ -z $$ES_PORT ]]; then ES_PORT=443 - else + elif [[ $$ES_PROTO == "http://" ]] && [[ -z $$ES_PORT ]]; then ES_PORT=80 - fi; - OPENVIDU_PRO_ELASTICSEARCH_HOST=$${ES_PROTO}$${ES_HOST}:$${ES_PORT}$${ES_PATH} + fi + export OPENVIDU_PRO_ELASTICSEARCH_HOST=$${ES_PROTO}$${ES_HOST}:$${ES_PORT}$${ES_PATH} else - echo "Invalid OPENVIDU_PRO_ELASTICSEARCH_HOST" - echo "It must be a valid URL" exit 1 - fi; + fi) /bin/bash -c "$$@"' command: > /bin/bash -c "filebeat -e -strict.perms=false diff --git a/openvidu-server/deployments/pro/docker-compose/openvidu-server-pro/docker-compose.yml b/openvidu-server/deployments/pro/docker-compose/openvidu-server-pro/docker-compose.yml index 66774fc0..f41d67f9 100644 --- a/openvidu-server/deployments/pro/docker-compose/openvidu-server-pro/docker-compose.yml +++ b/openvidu-server/deployments/pro/docker-compose/openvidu-server-pro/docker-compose.yml @@ -161,21 +161,20 @@ services: - /sys/fs/cgroup:/hostfs/sys/fs/cgroup:ro - /:/hostfs:ro entrypoint: > - /bin/bash -c 'if [[ $${OPENVIDU_PRO_ELASTICSEARCH_HOST} =~ ^(https?://)?([^:/]+)(:([0-9]+))?(/.*)?$$ ]]; then + /bin/bash -c '$$(if [[ $${OPENVIDU_PRO_ELASTICSEARCH_HOST} =~ ^(https?://)?([^:/]+)(:([0-9]+))?(/.*)?$$ ]]; then ES_PROTO=$${BASH_REMATCH[1]} ES_HOST=$${BASH_REMATCH[2]} + ES_PORT=$${BASH_REMATCH[4]} ES_PATH=$${BASH_REMATCH[5]} - if [[ $$ES_PROTO == "https://" ]] && [[ -z $${BASH_REMATCH[4]} ]]; then + if [[ $$ES_PROTO == "https://" ]] && [[ -z $$ES_PORT ]]; then ES_PORT=443 - else + elif [[ $$ES_PROTO == "http://" ]] && [[ -z $$ES_PORT ]]; then ES_PORT=80 - fi; - OPENVIDU_PRO_ELASTICSEARCH_HOST=$${ES_PROTO}$${ES_HOST}:$${ES_PORT}$${ES_PATH} + fi + export OPENVIDU_PRO_ELASTICSEARCH_HOST=$${ES_PROTO}$${ES_HOST}:$${ES_PORT}$${ES_PATH} else - echo "Invalid OPENVIDU_PRO_ELASTICSEARCH_HOST" - echo "It must be a valid URL" exit 1 - fi; + fi) /bin/bash -c "$$@"' command: > /bin/bash -c "metricbeat -e -strict.perms=false -e -system.hostfs=/hostfs @@ -199,21 +198,20 @@ services: - /var/lib/docker:/var/lib/docker:ro - /var/run/docker.sock:/var/run/docker.sock entrypoint: > - /bin/bash -c 'if [[ $${OPENVIDU_PRO_ELASTICSEARCH_HOST} =~ ^(https?://)?([^:/]+)(:([0-9]+))?(/.*)?$$ ]]; then + /bin/bash -c '$$(if [[ $${OPENVIDU_PRO_ELASTICSEARCH_HOST} =~ ^(https?://)?([^:/]+)(:([0-9]+))?(/.*)?$$ ]]; then ES_PROTO=$${BASH_REMATCH[1]} ES_HOST=$${BASH_REMATCH[2]} + ES_PORT=$${BASH_REMATCH[4]} ES_PATH=$${BASH_REMATCH[5]} - if [[ $$ES_PROTO == "https://" ]] && [[ -z $${BASH_REMATCH[4]} ]]; then + if [[ $$ES_PROTO == "https://" ]] && [[ -z $$ES_PORT ]]; then ES_PORT=443 - else + elif [[ $$ES_PROTO == "http://" ]] && [[ -z $$ES_PORT ]]; then ES_PORT=80 - fi; - OPENVIDU_PRO_ELASTICSEARCH_HOST=$${ES_PROTO}$${ES_HOST}:$${ES_PORT}$${ES_PATH} + fi + export OPENVIDU_PRO_ELASTICSEARCH_HOST=$${ES_PROTO}$${ES_HOST}:$${ES_PORT}$${ES_PATH} else - echo "Invalid OPENVIDU_PRO_ELASTICSEARCH_HOST" - echo "It must be a valid URL" exit 1 - fi; + fi) /bin/bash -c "$$@"' command: > /bin/bash -c "filebeat -e -strict.perms=false