From 931428ab3c2d153101fbb0e37885b5235446ff33 Mon Sep 17 00:00:00 2001
From: Gilles Filippini <pini@debian.org>
Date: Fri, 14 Jan 2022 19:05:29 +0100
Subject: [PATCH] build (docker): variable DUNITER_CHAIN_NAME

This variable will configure the `--chain` substrate option. This way
we can configure `--chain dev`, `--chain gtest`, or `--chain g1` with
only one variable.

DUNITER_CHAIN_NAME=dev replaces DUNITER_DEVELOPMENT_MODE=true as `--dev`
implies `--chain dev`. The only difference is that `--dev` disables
RPC CORS. Then the entrypoint automatically sets `--dev` only when
DUNITER_CHAIN_NAME=dev. In this case `--chain dev` is not used because
substrate doesn't want both `--dev` and `--chain dev`.

dev
---
 docker/docker-compose.yml |  2 +-
 docker/docker-entrypoint  | 17 +++++++++++++----
 2 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml
index 8bc9d5683..b295f470d 100644
--- a/docker/docker-compose.yml
+++ b/docker/docker-compose.yml
@@ -15,7 +15,7 @@ services:
       - "30333:30333"
     environment:
       DUNITER_INSTANCE_NAME: "my_instance"
-      DUNITER_DEVELOPMENT_MODE: "true"
+      DUNITER_CHAIN_NAME: "dev"
       #DUNITER_DISABLE_PROMETHEUS: "false"
     volumes:
       - data:/var/lib/lc-core
diff --git a/docker/docker-entrypoint b/docker/docker-entrypoint
index dd18c5313..e83075f56 100755
--- a/docker/docker-entrypoint
+++ b/docker/docker-entrypoint
@@ -17,12 +17,21 @@ if [ -n "$DUNITER_INSTANCE_NAME" ]; then
 fi
 
 DUNITER_DISABLE_PROMETHEUS=$(boolean "${DUNITER_DISABLE_PROMETHEUS:-false}")
-DUNITER_DEVELOPMENT_MODE=$(boolean "${DUNITER_DEVELOPMENT_MODE:-false}")
+
+DUNITER_CHAIN_NAME="${DUNITER_CHAIN_NAME:-dev}"
+case "$DUNITER_CHAIN_NAME" in
+  dev)
+    chain=(--dev)
+    ;;
+  *)
+    chain=(--chain "$DUNITER_CHAIN_NAME")
+    ;;
+esac
 
 set -- "$@" \
-  $(ternary "${DUNITER_DEVELOPMENT_MODE:-false}" --dev) \
-  $(ternary "${DUNITER_DISABLE_PROMETHEUS:-false}" --no-prometheus) \
+  "${chain[@]}" \
+  $(ternary "$DUNITER_DISABLE_PROMETHEUS" --no-prometheus) \
   --ws-external -d /var/lib/duniter
 
-echo "Starting duniter with parameters: $@"
+echo "Starting duniter with parameters:" "$@"
 exec duniter "$@"
-- 
GitLab