diff --git a/matter_server/CHANGELOG.md b/matter_server/CHANGELOG.md index 31a875aa..1f20ab49 100644 --- a/matter_server/CHANGELOG.md +++ b/matter_server/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## 8.4.0 + +- Skip `--log-level-sdk` for JavaScript Matter Server (beta mode); it is now only passed to the Python server +- Skip `--paa-root-cert-dir` for JavaScript Matter Server (beta mode); it is now only passed to the Python server +- Conditionally pass `--ota-provider-dir` for JavaScript Matter Server (beta mode) only when `enable_test_net_dcl` is also enabled; the Python server continues to receive it unconditionally + ## 8.3.0 - Add `matter_server_env_vars` option to export custom environment variables before starting Matter Server diff --git a/matter_server/config.yaml b/matter_server/config.yaml index b4d86ad0..234460d4 100644 --- a/matter_server/config.yaml +++ b/matter_server/config.yaml @@ -1,5 +1,5 @@ --- -version: 8.3.0 +version: 8.4.0 slug: matter_server name: Matter Server description: Matter WebSocket Server for Home Assistant Matter support. diff --git a/matter_server/rootfs/etc/s6-overlay/s6-rc.d/matter-server/run b/matter_server/rootfs/etc/s6-overlay/s6-rc.d/matter-server/run index 0915fde4..da6e9806 100755 --- a/matter_server/rootfs/etc/s6-overlay/s6-rc.d/matter-server/run +++ b/matter_server/rootfs/etc/s6-overlay/s6-rc.d/matter-server/run @@ -8,7 +8,6 @@ bashio::log.info "Starting Matter Server..." declare server_port declare log_level -declare log_level_sdk declare primary_interface declare matter_server_version declare npm_package @@ -26,9 +25,6 @@ if ! bashio::config.exists log_level; then fi log_level=$(bashio::string.lower "$(bashio::config log_level info)") -# Make Matter SDK log level currently default to error -log_level_sdk=$(bashio::string.lower "$(bashio::config log_level_sdk error)") - # Determine server type based on beta flag use_js_server=$(bashio::config "beta") @@ -61,6 +57,11 @@ if [[ "${use_js_server}" == "true" ]]; then find ./node_modules -type d -name "cjs" -path "*/@project-chip/*" -exec rm -rf {} + 2>/dev/null || true rm -rf /tmp/* /var/tmp/* /root/.npm /root/.cache 2>/dev/null || true + # JS server only uses --ota-provider-dir when --enable-test-net-dcl is also set + if bashio::config.true "enable_test_net_dcl"; then + extra_args+=('--ota-provider-dir' "/config/updates") + fi + if bashio::config.has_value "matter_server_env_vars"; then env_vars_count=$(bashio::config 'matter_server_env_vars | length') for (( i=0; i < env_vars_count; i++ )); do @@ -85,6 +86,15 @@ else # Non-beta mode: Use Python Matter Server bashio::log.info "Using Python Matter Server" + # SDK log level is only supported by the Python server + extra_args+=('--log-level-sdk' "$(bashio::string.lower "$(bashio::config log_level_sdk error)")") + + # PAA root cert dir is only supported by the Python server + extra_args+=('--paa-root-cert-dir' "/data/credentials") + + # Python server uses --ota-provider-dir independently of --enable-test-net-dcl + extra_args+=('--ota-provider-dir' "/config/updates") + if bashio::config.has_value "matter_server_version"; then matter_server_version=$(bashio::config 'matter_server_version') bashio::log.info "Installing Python Matter Server ${matter_server_version}" @@ -149,10 +159,7 @@ matter_server_args+=( '--storage-path' "/data" '--port' "${server_port}" '--log-level' "${log_level}" - '--log-level-sdk' "${log_level_sdk}" '--primary-interface' "${primary_interface}" - '--paa-root-cert-dir' "/data/credentials" - '--ota-provider-dir' "/config/updates" '--fabricid' 2 '--vendorid' 4939 ${extra_args[@]}