Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions matter_server/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -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
Expand Down
2 changes: 1 addition & 1 deletion matter_server/config.yaml
Original file line number Diff line number Diff line change
@@ -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.
Expand Down
21 changes: 14 additions & 7 deletions matter_server/rootfs/etc/s6-overlay/s6-rc.d/matter-server/run
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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")

Expand Down Expand Up @@ -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
Expand All @@ -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}"
Expand Down Expand Up @@ -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[@]}
Expand Down
Loading