-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[shell] Add 'server' command to shell app. #13377
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- Add 'server port' and 'server udcport' commands. - Add 'server sessions' command. - Add 'server endpoints' and 'server clusters' commands. - Add docs for the new 'server' command subcommands (README_SERVER.md). - Add 'server' command to build of linux and mac platforms only initially. - Improve clean exit paths for 'server' command. - Update 'ForEachSessionHandle' to use new Loop construct. - Fix build failure in ota-provider (warning when logs disabled).
Co-authored-by: Łukasz Duda <[email protected]>
pullapprove
bot
requested review from
andy31415,
anush-apple,
balducci-apple,
Byungjoo-Lee,
bzbarsky-apple,
carol-apple,
chrisdecenzo,
chshu,
chulspro,
Damian-Nordic,
dhrishi,
electrocucaracha,
franck-apple,
gjc13,
harimau-qirex,
hawk248,
holbrookt and
jelderton
January 7, 2022 17:10
pullapprove
bot
requested review from
tecimovic,
vijs,
vivien-apple,
wbschiller,
woody-apple,
xylophone21,
yufengwangca and
yunhanw-google
January 7, 2022 17:10
turon
commented
Jan 7, 2022
turon
commented
Jan 7, 2022
andy31415
approved these changes
Jan 7, 2022
andy31415
reviewed
Jan 7, 2022
PR #13377: Size comparison from 36a759d to 7aa2b61 Increases (5 builds for k32w, qpg, telink)
Full report (6 builds for k32w, qpg, telink)
|
- Revert erroneous shutdown protection in Server.cpp - Add app-level shutdown protection in cmd_server.cpp
PR #13377: Size comparison from 6e14b75 to 555848d Increases (10 builds for esp32, k32w, mbed, nrfconnect, qpg, telink)
Decreases (1 build for esp32)
Full report (31 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
|
saurabhst
approved these changes
Jan 7, 2022
msandstedt
added a commit
to msandstedt/connectedhomeip
that referenced
this pull request
Jan 7, 2022
The pull requests project-chip#13330 and project-chip#13377 were merged around the same time, and have caused a small build breakage. This fixes it.
step0035
pushed a commit
to hank820/connectedhomeip
that referenced
this pull request
Feb 8, 2022
* [shell] Add command to start/stop zcl app server. - Add 'server port' and 'server udcport' commands. - Add 'server sessions' command. - Add 'server endpoints' and 'server clusters' commands. - Add docs for the new 'server' command subcommands (README_SERVER.md). - Add 'server' command to build of linux and mac platforms only initially. - Improve clean exit paths for 'server' command. - Update 'ForEachSessionHandle' to use new Loop construct. - Fix build failure in ota-provider (warning when logs disabled). * [shell] Correct order of atexit and shutdown handling. * [shell] Add OTA stubs. * Apply suggestions from code review Co-authored-by: Łukasz Duda <[email protected]> * [session] Update ForEachSessionHandle to new API. - Revert erroneous shutdown protection in Server.cpp - Add app-level shutdown protection in cmd_server.cpp * Bugfix: Add chip shell engine initializing for esp32 platform (project-chip#13364) * [shell] Code review fixes. Co-authored-by: Łukasz Duda <[email protected]> Co-authored-by: Wang Qixiang <[email protected]>
step0035
pushed a commit
to hank820/connectedhomeip
that referenced
this pull request
Feb 8, 2022
…ject-chip#13382) The pull requests project-chip#13330 and project-chip#13377 were merged around the same time, and have caused a small build breakage. This fixes it.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Synopsis
This PR is resubmitting reverted PR #13060, but with fixes for the shutdown handling issue discovered by CI post-merge.
Problem
The shell app has limited functionality. It doesn't provide access to core device functionality such as pairing or IM/ZCL command handling.
Change overview
Adds the server command to provide the ability to
server start
orserver stop
the equivalent of theall-clusters-app
peripheral. Once the server is started, one can pair the device withchip-too
l and send commands to it.One can examine what sessions are active with the
server sessions
command. The ZCL structure can be inspected with theserver endpoints
andserver clusters
commands.This work is an incremental step towards instrumenting early multi-device topology testing, such as using a
chip-tool
orchip-repl
controller to manage two server nodes where each server is on a different port. This model could provide a flexible basis for scripted functional tests where each node is achip-shell
running in a process to serve as a simulated server node, and a collection of such nodes can form a topology for more advanced N-node tests.The work is also a step toward making the
chip-shell
capable of being either a client or a server (or potentially both with enough rework of the core).Testing
Local testing on linux and darwin.
CI for other embedded builds.