Просмотр исходного кода

fix(docker-entrypoint): do not mv loaded_plugins file, copy it by cat

z8674558 4 лет назад
Родитель
Сommit
50f4e0617b

+ 1 - 0
.ci/docker-compose-file/conf.cluster.env

@@ -4,3 +4,4 @@ EMQX_CLUSTER__STATIC__SEEDS="emqx@node1.emqx.io, emqx@node2.emqx.io"
 EMQX_LISTENER__TCP__EXTERNAL__PROXY_PROTOCOL=on
 EMQX_LISTENER__WS__EXTERNAL__PROXY_PROTOCOL=on
 EMQX_LOG__LEVEL=debug
+EMQX_LOADED_PLUGINS=emqx_sn

+ 7 - 0
.github/workflows/run_fvt_tests.yaml

@@ -46,6 +46,13 @@ jobs:
                 echo "['$(date -u +"%Y-%m-%dT%H:%M:%SZ")']:waiting emqx";
                 sleep 5;
             done
+        - name: verify EMQX_LOADED_PLUGINS override working
+          run: |
+            expected="{emqx_sn, true}."
+            output=$(docker exec -i node1.emqx.io bash -c "cat data/loaded_plugins" | tail -n1)
+            if [ "$expected" != "$output" ]; then
+                exit 1
+            fi    
         - name: make paho tests
           run: |
             if ! docker exec -i python /scripts/pytest.sh; then

+ 1 - 1
deploy/docker/docker-entrypoint.sh

@@ -98,7 +98,7 @@ fill_tuples() {
     local elements=${*:2}
     for var in $elements; do
         if grep -qE "\{\s*$var\s*,\s*(true|false)\s*\}\s*\." "$file"; then
-            sed -r "s/\{\s*($var)\s*,\s*(true|false)\s*\}\s*\./{\1, true}./1" "$file" > tmpfile && mv tmpfile "$file"
+            sed -r "s/\{\s*($var)\s*,\s*(true|false)\s*\}\s*\./{\1, true}./1" "$file" > tmpfile && cat tmpfile > "$file" 
         elif grep -q "$var\s*\." "$file"; then
             # backward compatible.
             sed -r "s/($var)\s*\./{\1, true}./1" "$file" > tmpfile && cat tmpfile > "$file"