Skip to content
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

Investigate and re-enable the OTA CI test #15426

Closed
selissia opened this issue Feb 22, 2022 · 9 comments
Closed

Investigate and re-enable the OTA CI test #15426

selissia opened this issue Feb 22, 2022 · 9 comments
Assignees
Labels

Comments

@selissia
Copy link
Contributor

Problem

OTA CI tests were disabled in #15424 because of instability, possibly related to mDNS. Slack discussion: https://csamembers.slack.com/archives/G014G30SVV0/p1645552481568699

Need to investigate what's happening and eventually re-enable the CI.

Proposed Solution

@mykrupp
Copy link
Contributor

mykrupp commented Feb 22, 2022

When Linux fails, the requestor does not commission.

When Darwin fails, send ota announce provider command fails

Sometimes github also fails to clone some repos

@mykrupp
Copy link
Contributor

mykrupp commented Mar 4, 2022

#15659

@mykrupp
Copy link
Contributor

mykrupp commented Mar 4, 2022

The OTA test on linux platform fails about 20% of the time.
When the test fails, it is because the requestor does not commission.
The requestor doesn't commission because chip-tool erroneously finds the port corresponding to the provider instead of the requestor in these cases.

Some logs when commissioning succeeds
CHIP:TOO: Discovered Device: fe80::4402:baff:fee7:5200:5540 when commisioning provider
CHIP:TOO: Discovered Device: fe80::4402:baff:fee7:5200:5560 when commissioning requestor

Some logs when commissioning fails
CHIP:TOO: Discovered Device: fe80::4402:baff:fee7:5200:5540 when commissioning provider
CHIP:TOO: Discovered Device: fe80::4402:baff:fee7:5200:5540 when commissioning requestor

The requestor is given the port corresponding to the provider, causing requestor commissioning to fail.

It needs to be determined why MDNS sometimes resolves the incorrect port for the requestor.

@mykrupp
Copy link
Contributor

mykrupp commented Mar 4, 2022

The incorrect port is picked up here -

ChipLogProgress(chipTool, "Discovered Device: %s:%u", buf, port);

@mykrupp
Copy link
Contributor

mykrupp commented Mar 4, 2022

Chip-tool and requestor logs upon failure:
chip-tool-commission-requestor.txt
requestor-log.txt

@selissia
Copy link
Contributor Author

selissia commented Mar 4, 2022

The Requestor UDP port is always set to 5560 by using the the command line option --secured-device-port 5560 .

@mykrupp
Copy link
Contributor

mykrupp commented Mar 10, 2022

I tested a few solutions suggested by other Matter developers 

  1. Generate a random UDP_PORT and DISCRIMINATOR to make the code hermetic.
  2. put rm -r /tmp/chip_* back in the code.

This did not fix the unstableness of the test. 

@isiu-apple isiu-apple added the ota label Apr 6, 2022
@bzbarsky-apple
Copy link
Contributor

@carol-apple Is this still an issue given the YAML coverage you added?

@carol-apple
Copy link
Contributor

#18344 fixes this issue

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

5 participants